diff options
author | Zane Shelley <zshelle@us.ibm.com> | 2018-10-25 14:57:59 -0500 |
---|---|---|
committer | Zane C. Shelley <zshelle@us.ibm.com> | 2018-11-01 21:39:47 -0500 |
commit | 68d4feee7c9a15428df2fc06bcbbbe86762c732e (patch) | |
tree | b496699c157c29c35c6eabf2609b6585ce4855c7 /src/usr/diag/prdf/common/plat/cumulus | |
parent | 61bcb01d6fd51dec3f1d86bd9e942fe86fe2b855 (diff) | |
download | talos-hostboot-68d4feee7c9a15428df2fc06bcbbbe86762c732e.tar.gz talos-hostboot-68d4feee7c9a15428df2fc06bcbbbe86762c732e.zip |
PRD: prep splitting rule files by chip model
Change-Id: I5ad119da986f42182aad183a82867688219c05fb
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/68150
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com>
Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com>
Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/68271
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/common/plat/cumulus')
5 files changed, 418 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_actions.rule b/src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_actions.rule new file mode 100644 index 000000000..3974391ce --- /dev/null +++ b/src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_actions.rule @@ -0,0 +1,54 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_actions.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2017,2018 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +actionclass analyzeConnectedMembuf +{ + analyze(connected(TYPE_MEMBUF, 0)); +}; + +actionclass analyzeConnectedMembuf_UERE +{ + SueSource; + analyzeConnectedMembuf; +}; + +actionclass dmi_bus_th_1 +{ + funccall("calloutBusInterfacePlugin"); + threshold1; +}; + +actionclass dmi_bus_th_1_UERE +{ + SueSource; + dmi_bus_th_1; +}; + +actionclass dsffChannelTimeout_UERE +{ + SueSource; + threshold1; + funccall("dsffChannelTimeoutCheck"); +}; diff --git a/src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_regs.rule b/src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_regs.rule new file mode 100644 index 000000000..6b3514104 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_regs.rule @@ -0,0 +1,154 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/cumulus/cumulus_dmi_regs.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2017,2018 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + + ############################################################################ + # Additional regs for P9 DMI target CHIFIR + ############################################################################ + + register CHIFIR_AND + { + name "P9 DMI target CHIFIR atomic AND"; + scomaddr 0x07010901; + capture group never; + access write_only; + }; + + register CHIFIR_OR + { + name "P9 DMI target CHIFIR atomic OR"; + scomaddr 0x07010902; + capture group never; + access write_only; + }; + + register CHIFIR_MASK_OR + { + name "P9 DMI target CHIFIR_MASK atomic OR"; + scomaddr 0x07010905; + capture group never; + access write_only; + }; + + register MCICFG0 + { + name "MCI Configuration Register 0"; + scomaddr 0x0701090A; + capture group default; + capture group chnlFail; + }; + + register MCISTAT + { + name "MCI Status Register"; + scomaddr 0x0701090B; + capture group default; + }; + + register MCICRCSYN + { + name "MCI CRC Syndromes Register"; + scomaddr 0x0701090C; + capture group default; + }; + + register MCIERRINJ + { + name "MCI Error Inject Register"; + scomaddr 0x0701090D; + capture group default; + }; + + register MCICFG1 + { + name "MCI Configuration Register 1"; + scomaddr 0x0701090E; + capture group default; + capture group chnlFail; + }; + + register RECR + { + name "Read ECC Control Register"; + scomaddr 0x07010914; + capture group default; + }; + + register EICR + { + name "Error Inject Control Register"; + scomaddr 0x07010918; + capture group default; + }; + + register CERR0 + { + name "Error detail register 0"; + scomaddr 0x07010919; + capture group default; + }; + + register CERR1 + { + name "Error detail register 1"; + scomaddr 0x0701091A; + capture group default; + }; + + ############################################################################ + # Non-existent Registers for Capture + ############################################################################ + + register VPD_FAILED_LANES_0TO63 + { + name "Bit map 0-63 of failed lanes read from VPD"; + scomaddr 0xFFFF0001; + access no_access; + capture group never; + }; + + register VPD_FAILED_LANES_64TO127 + { + name "Bit map 64-127 of failed lanes read from VPD"; + scomaddr 0xFFFF0002; + access no_access; + capture group never; + }; + + register ALL_FAILED_LANES_0TO63 + { + name "Bit map 0-63 of failed lanes from io_read_erepair"; + scomaddr 0xFFFF0003; + access no_access; + capture group never; + }; + + register ALL_FAILED_LANES_64TO127 + { + name "Bit map 64-127 of failed lanes from io_read_erepair"; + scomaddr 0xFFFF0004; + access no_access; + capture group never; + }; + diff --git a/src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_actions.rule b/src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_actions.rule new file mode 100644 index 000000000..2472a3956 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_actions.rule @@ -0,0 +1,95 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_actions.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2017,2018 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +/** Lane Repair: callout Bus Interface - DMI Bus */ +/** Callout the DMI bus 0 */ +actionclass calloutDmiBus0 +{ + funccall("calloutBusInterface_DMI0"); +}; +/** Callout the DMI bus 1 */ +actionclass calloutDmiBus1 +{ + funccall("calloutBusInterface_DMI1"); +}; +/** Callout the DMI bus 2 */ +actionclass calloutDmiBus2 +{ + funccall("calloutBusInterface_DMI2"); +}; +/** Callout the DMI bus 3 */ +actionclass calloutDmiBus3 +{ + funccall("calloutBusInterface_DMI3"); +}; + +actionclass calloutBusInterface_dmi0_th_1 { calloutDmiBus0; threshold1; }; +actionclass calloutBusInterface_dmi1_th_1 { calloutDmiBus1; threshold1; }; +actionclass calloutBusInterface_dmi2_th_1 { calloutDmiBus2; threshold1; }; +actionclass calloutBusInterface_dmi3_th_1 { calloutDmiBus3; threshold1; }; + + +/** Lane Repair: spare Deployed - DMI Bus */ +actionclass spareDeployed_dmi0 +{ calloutDmiBus0; funccall("spareDeployed_DMI0"); }; +actionclass spareDeployed_dmi1 +{ calloutDmiBus1; funccall("spareDeployed_DMI1"); }; +actionclass spareDeployed_dmi2 +{ calloutDmiBus2; funccall("spareDeployed_DMI2"); }; +actionclass spareDeployed_dmi3 +{ calloutDmiBus3; funccall("spareDeployed_DMI3"); }; + + +/** Lane Repair: max spares exceeded - DMI Bus */ +actionclass maxSparesExceeded_dmi0 +{ calloutBusInterface_dmi0_th_1; funccall("maxSparesExceeded_DMI0"); }; +actionclass maxSparesExceeded_dmi1 +{ calloutBusInterface_dmi1_th_1; funccall("maxSparesExceeded_DMI1"); }; +actionclass maxSparesExceeded_dmi2 +{ calloutBusInterface_dmi2_th_1; funccall("maxSparesExceeded_DMI2"); }; +actionclass maxSparesExceeded_dmi3 +{ calloutBusInterface_dmi3_th_1; funccall("maxSparesExceeded_DMI3"); }; + + +/** Lane Repair: too many Bus Errors - DMI Bus */ +actionclass tooManyBusErrors_dmi0_UERE +{ + calloutBusInterface_dmi0_th_1; funccall("tooManyBusErrors_DMI0"); +}; +actionclass tooManyBusErrors_dmi1_UERE +{ + calloutBusInterface_dmi1_th_1; funccall("tooManyBusErrors_DMI1"); +}; +actionclass tooManyBusErrors_dmi2_UERE +{ + calloutBusInterface_dmi2_th_1; funccall("tooManyBusErrors_DMI2"); +}; +actionclass tooManyBusErrors_dmi3_UERE +{ + calloutBusInterface_dmi3_th_1; funccall("tooManyBusErrors_DMI3"); +}; + + + diff --git a/src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_regs.rule b/src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_regs.rule new file mode 100644 index 000000000..50a0170c2 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_regs.rule @@ -0,0 +1,52 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/cumulus/cumulus_mc_regs.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2018 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +################################################################################ +# Additional registers for MC target, not defined in XML +################################################################################ + + ############################################################################ + # P9 MC target IOMCFIR + ############################################################################ + + register IOMCFIR_MASK_OR + { + name "P9 MC target IOMCFIR MASK atomic OR"; + scomaddr 0x07011005; + capture group never; + access write_only; + }; + + ############################################################################ + # Config registers for channel failure attentions + ############################################################################ + + register SCOM_MODE_PB + { + name "IOMP.BUSCTL.SCOM.SCOM_MODE_PB"; + scomaddr 0x07011020; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/cumulus/cumulus_mi_regs.rule b/src/usr/diag/prdf/common/plat/cumulus/cumulus_mi_regs.rule new file mode 100644 index 000000000..dac1ddf59 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/cumulus/cumulus_mi_regs.rule @@ -0,0 +1,63 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/cumulus/cumulus_mi_regs.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2018 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + + ############################################################################ + # Additional regs for P9 MI target MCFIR + ############################################################################ + + register MCERPT0 + { + name "MCERPT0"; + scomaddr 0x0501081E; + capture group default; + }; + + register MCERPT1 + { + name "MCERPT1"; + scomaddr 0x0501081F; + capture group default; + }; + + register MCERPT2 + { + name "MCERPT2"; + scomaddr 0x0501081A; + capture group default; + }; + + register MCFGP + { + name "MCFGP"; + scomaddr 0x501080A; + capture group default; + }; + + register MCFGPM + { + name "MCFGPM"; + scomaddr 0x501080C; + capture group default; + }; |