diff options
author | Prem Shanker Jha <premjha2@in.ibm.com> | 2013-12-23 22:26:51 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-01-24 22:28:22 -0600 |
commit | 4aa480318592bb0d348e41874dc46f181f917152 (patch) | |
tree | d2e56cb07246b24b53b027e2fe990a2196f841f5 /src/usr/diag/prdf/common | |
parent | ae24e6b800b60e7613b2c3af9040c416d13b2d66 (diff) | |
download | talos-hostboot-4aa480318592bb0d348e41874dc46f181f917152.tar.gz talos-hostboot-4aa480318592bb0d348e41874dc46f181f917152.zip |
PRDF:Updated action for misc FIR bits after RAS Review
Bits of following FIR have been changed:
- COREFIR
- L2FIR
- PBENFIR
- PBFFIR
- PBAM
- ABUSLFIR
- EX_LFIR
- ICRFIR/ICPFIR
- PSIHBFIR
Change-Id: I8370045ee24cc6cd2d3959ac812b99ec6eacb878
RTC:92896
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7855
Tested-by: Jenkins Server
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Reviewed-by: Christopher T. Phan <cphan@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Reviewed-by: Zane Shelley <zshelle@us.ibm.com>
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8332
Diffstat (limited to 'src/usr/diag/prdf/common')
7 files changed, 77 insertions, 57 deletions
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Ex.rule b/src/usr/diag/prdf/common/plat/pegasus/Ex.rule index b566f0ca9..f0fed6f31 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Ex.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Ex.rule @@ -559,10 +559,16 @@ group gExLFir filter singlebit */ (ExLFir, bit(17)) ? calloutParentChipHighThr32; - /** EX_LFIR[18:30] + /** EX_LFIR[18:39] * Unused local errors */ - (ExLFir, bit(18|19|20|21|22|23|24|25|26|27|28|29|30)) ? defaultMaskedError; + (ExLFir, bit( 18|19|20|21|22|23|24|25|26|27|28|29| + 30|31|32|33|34|35|36|37|38|39 )) ? defaultMaskedError; + + /** EX_LFIR[40] + * Malfunction alert - local checkstop in another chiplet + */ + (ExLFir, bit(40)) ? defaultMaskedError; }; ################################################################################ @@ -622,7 +628,7 @@ group gCoreFir filter singlebit /** COREFIR[8] * RECOV_FIR_CHKSTOP_ERR: recovery core check stop */ - (CoreFir, bit(8)) ? spareOrSelfHighThr1; + (CoreFir, bit(8)) ? SelfHighThr1; /** COREFIR[9] * SD_RFILE_REC_ERR: RegFile recoverable error @@ -889,7 +895,7 @@ group gCoreFir filter singlebit /** COREFIR[63] * SPRD_PHYP_ERR_INJ: Phyp Xstop via SPRC / SPRD */ - (CoreFir, bit(63)) ? callout2ndLvlMed; + (CoreFir, bit(63)) ? calloutProcLow2ndLvlMedThr1; }; ################################################################################ @@ -967,12 +973,12 @@ group gL2Fir filter singlebit /** L2FIR[12] * RC_POWERBUS_DATA_TIMEOUT */ - (L2Fir, bit(12)) ? callout2ndLvlMed; + (L2Fir, bit(12)) ? callout2ndLvlMedThr1; /** L2FIR[13] * NCU_POWERBUS_DATA_TIMEOUT */ - (L2Fir, bit(13)) ? callout2ndLvlMed; + (L2Fir, bit(13)) ? callout2ndLvlMedThr1; /** L2FIR[14] * HW_CONTROL_ERROR @@ -1037,7 +1043,7 @@ group gL2Fir filter singlebit /** L2FIR[26] * HA_LOG_STOP_SW_ERR */ - (L2Fir, bit(26)) ? calloutSelfAndLevel2MedThr1; + (L2Fir, bit(26)) ? callout2ndLvlMedThr1; /** L2FIR[27] * RC_LOAD_RECEIVED_PB_ACK_DEAD_FROM_FOREIGN0 @@ -1290,7 +1296,7 @@ group gL3Fir filter singlebit /** L3FIR[35] * L3 HA Log Overflow */ - (L3Fir, bit(35)) ? callout2ndLvlMed; + (L3Fir, bit(35)) ? callout2ndLvlMedThr1; /** L3FIR[36] * SCOM_ERR: scom error @@ -1564,20 +1570,19 @@ actionclass SelfAndLevel2MedThr5PerHr }; /** callouts Proc on first instance. Calls for second level support as well*/ -actionclass calloutProcLow2ndLvlMedThr1SUE +actionclass calloutProcLow2ndLvlMedThr1 { calloutParentProcLow; callout2ndLvlMed; threshold1; - flag(SUE); }; -/** Callouts core with high priority on first instance if sparing not done */ -actionclass spareOrSelfHighThr1 +/** callouts Proc on first instance. Calls for second level support as well. + * Set SUE flag */ +actionclass calloutProcLow2ndLvlMedThr1SUE { - #FIXME RTC 23127 Need to figure out extension bit to determine if sparing - # is done - TBDDefaultCallout; + calloutProcLow2ndLvlMedThr1; + flag(SUE); }; /** callout connected parent proc with high priority.*/ diff --git a/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule b/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule index 450272f39..b20edd8ae 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule @@ -5,7 +5,7 @@ # # IBM CONFIDENTIAL # -# COPYRIGHT International Business Machines Corp. 2012,2013 +# COPYRIGHT International Business Machines Corp. 2012,2014 # # p1 # @@ -418,12 +418,19 @@ group gMciFir attntype CHECK_STOP, RECOVERABLE, SPECIAL, UNIT_CS /** MCIFIR[48] * MCIFIRQ_INTERNAL_SCOM_ERROR */ - (MciFir, bit(48)) ? defaultMaskedError; + (MciFir, bit(48)) ? thresholdAndMask_self; /** MCIFIR[49] * MCIFIRQ_INTERNAL_SCOM_ERROR_CLONE */ - (MciFir, bit(49)) ? defaultMaskedError; + (MciFir, bit(49)) ? thresholdAndMask_self; + + /** MCIFIR[50:63] + * RESERVED + */ + (MciFir, bit( 50|51|52|53|54|55|56|57|58|59| + 60|61|62|63 )) ? defaultMaskedError; + }; ############################################################################## diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule index e5c72d694..aeea3c3b9 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule @@ -170,12 +170,12 @@ group gDmiFir filter singlebit /** DMIFIR[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (DmiFir, bit(0)) ? SelfHighThr1; + (DmiFir, bit(0)) ? defaultMaskedError; /** DMIFIR[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (DmiFir, bit(1)) ? SelfHighThr1; + (DmiFir, bit(1)) ? defaultMaskedError; /** DMIFIR[2] * FIR_GCR_HANG_ERROR diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule index f477d803b..a65f706ba 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule @@ -127,6 +127,11 @@ group gAbusLFir filter singlebit * FIR_IN12: unused local errors */ (AbusLFir, bit(31|32|33|34|35|36|37|38|39)) ? defaultMaskedError; + + /** ABUS_LFIR[40] + * Malfunction alert + */ + (AbusLFir, bit(40)) ? defaultMaskedError; }; ################################################################################ @@ -360,12 +365,12 @@ group gIoaFir filter singlebit /** IOAFIR[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IoaFir, bit(0)) ? thresholdAndMask_self; + (IoaFir, bit(0)) ? defaultMaskedError; /** IOAFIR[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IoaFir, bit(1)) ? thresholdAndMask_self; + (IoaFir, bit(1)) ? defaultMaskedError; /** IOAFIR[2] * FIR_GCR_HANG_ERROR diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule index f8d258e7e..970e4e86c 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule @@ -1355,12 +1355,12 @@ group gPsiHbFir filter singlebit /** PSIHBFIR[8] * INVALID_TTYPE */ - (PsiHbFir, bit(8)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(8)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[9] * INVALID_CRESP */ - (PsiHbFir, bit(9)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(9)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[10] * PB_DATA_TIME_OUT @@ -1380,7 +1380,7 @@ group gPsiHbFir filter singlebit /** PSIHBFIR[13] * UNEXPECTED_PB */ - (PsiHbFir, bit(13)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(13)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[14] * INTERRUPT_REG_CHANGE_WHILE_ACTIVE @@ -1390,32 +1390,32 @@ group gPsiHbFir filter singlebit /** PSIHBFIR[15] * INTERRUPT0_ADDRESS_ERROR */ - (PsiHbFir, bit(15)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(15)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[16] * INTERRUPT1_ADDRESS_ERROR */ - (PsiHbFir, bit(16)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(16)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[17] * INTERRUPT2_ADDRESS_ERROR */ - (PsiHbFir, bit(17)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(17)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[18] * INTERRUPT3_ADDRESS_ERROR */ - (PsiHbFir, bit(18)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(18)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[19] * INTERRUPT4_ADDRESS_ERROR */ - (PsiHbFir, bit(19)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(19)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[20] * INTERRUPT5_ADDRESS_ERROR */ - (PsiHbFir, bit(20)) ? callout2ndLvlMedThr1; + (PsiHbFir, bit(20)) ? calloutProcLevel2MedThr1; /** PSIHBFIR[21] * TCBR_TP_PSI_GLB_ERR_0 @@ -1453,7 +1453,7 @@ group gPsiHbFir filter singlebit # PB Chiplet ICPFIR ################################################################################ -#Based on p8dd1_mss_FFDC_54.xls +#Based on p8dd1_mss_FFDC_70.xls rule IcpFir { CHECK_STOP: ICPFIR & ~ICPFIR_MASK & ~ICPFIR_ACT0 & ~ICPFIR_ACT1; @@ -1462,8 +1462,6 @@ rule IcpFir group gIcpFir filter singlebit { - # TODO RTC23127 Here we are calling out proc but in RAS spreadsheet - # ICR target is mentioned. Verify. /** ICPFIR[0] * INT_HW_ERROR_EOI_Q */ @@ -1484,7 +1482,6 @@ group gIcpFir filter singlebit */ (IcpFir, bit(3)) ? SelfMedThr32PerDay; - # TODO RTC23127 verify bit 4 /** ICPFIR[4] * INT_HW_ERROR_ADDRI */ @@ -1520,8 +1517,18 @@ group gIcpFir filter singlebit */ (IcpFir, bit(10)) ? SelfMedThr32PerDay; + /** ICPFIR[11] + * LOOP IN CHAIN OF LINK REGISTER OR INVALID CORE ID + */ + (IcpFir, bit(11)) ? defaultMaskedError; + + /** ICPFIR[12] + * INVALID CORE NUMBER IN INTERRUPT COMMANDS + */ + (IcpFir, bit(12)) ? defaultMaskedError; + /** ICPFIR[13] - * ADDRESS_CORE_FIELD_MMIO + * INVALID CORE NUMBER IN MMIO COMMANDS */ (IcpFir, bit(13)) ? defaultMaskedError; @@ -1600,18 +1607,15 @@ group gIcpFir filter singlebit */ (IcpFir, bit(28)) ? SelfMedThr32PerDay; - #TODO RTC 23127 : Check for bits 29 and 30. Unused in scomdef - # but defined in RAS spreadsheet. - /** ICPFIR[29] * RESERVED */ - (IcpFir, bit(29)) ? TBDDefaultCallout; + (IcpFir, bit(29)) ? SelfMedThr32PerDay; /** ICPFIR[30] * RESERVED */ - (IcpFir, bit(30)) ? TBDDefaultCallout; + (IcpFir, bit(30)) ? SelfMedThr32PerDay; /** ICPFIR[31] * RESERVED @@ -1633,7 +1637,6 @@ group gIcpFir filter singlebit */ (IcpFir, bit(34)) ? SelfMedThr32PerDay; - # TODO RTC23127 : Not defined in RAS spreadsheet. /** ICPFIR[35] * EXT_XSTOP */ @@ -1685,7 +1688,7 @@ group gPbaFir filter singlebit /** PBAFIR[5] * PBAFIR_PB_CE_FW */ - (PbaFir, bit(5)) ? callout2ndLvlMedThr1; + (PbaFir, bit(5)) ? callout2ndLvlMedThr32perDay; /** PBAFIR[6] * PBAFIR_OCI_SLAVE_INIT @@ -2571,12 +2574,12 @@ group gIomcFir_0 filter singlebit /** IOMCFIR_0[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IomcFir_0, bit(0)) ? SelfHighThr1; + (IomcFir_0, bit(0)) ? defaultMaskedError; /** IOMCFIR_0[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IomcFir_0, bit(1)) ? SelfHighThr1; + (IomcFir_0, bit(1)) ? defaultMaskedError; /** IOMCFIR_0[2] * FIR_GCR_HANG_ERROR @@ -2740,12 +2743,12 @@ group gIomcFir_1 filter singlebit /** IOMCFIR_1[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IomcFir_1, bit(0)) ? SelfHighThr1; + (IomcFir_1, bit(0)) ? defaultMaskedError; /** IOMCFIR_1[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IomcFir_1, bit(1)) ? SelfHighThr1; + (IomcFir_1, bit(1)) ? defaultMaskedError; /** IOMCFIR_1[2] * FIR_GCR_HANG_ERROR diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule index c0a97e0c5..e554fce26 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule @@ -651,7 +651,7 @@ group gPbamFir filter singlebit /** PBAMFIR[3] * OPB_ERROR */ - (PbamFir, bit(3)) ? SelfHighThr1; + (PbamFir, bit(3)) ? defaultMaskedError; /** PBAMFIR[4] * OPB_TIMEOUT diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule index bfc742f8a..27f0cab6c 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule @@ -254,7 +254,7 @@ group gPbenFir filter singlebit /** PBENFIR[15] * X_LINK_CR_OVERFLOW: x link command/response/data buffer overflow */ - (PbenFir, bit(15)) ? callout2ndLvlMed; + (PbenFir, bit(15)) ? calloutProcLevel2MedThr1; /** PBENFIR[16] * X0_LINK_FMR_ERR: x0 link framer error @@ -312,12 +312,12 @@ group gIoxFir_0 filter singlebit /** IOXFIR_0[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_0, bit(0)) ? thresholdAndMask_xbus0; + (IoxFir_0, bit(0)) ? defaultMaskedError; /** IOXFIR_0[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_0, bit(1)) ? thresholdAndMask_xbus0; + (IoxFir_0, bit(1)) ? defaultMaskedError; /** IOXFIR_0[2] * FIR_GCR_HANG_ERROR @@ -405,12 +405,12 @@ group gIoxFir_1 filter singlebit /** IOXFIR_1[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_1, bit(0)) ? thresholdAndMask_xbus1; + (IoxFir_1, bit(0)) ? defaultMaskedError; /** IOXFIR_1[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_1, bit(1)) ? thresholdAndMask_xbus1; + (IoxFir_1, bit(1)) ? defaultMaskedError; /** IOXFIR_1[2] * FIR_GCR_HANG_ERROR @@ -498,12 +498,12 @@ group gIoxFir_2 filter singlebit /** IOXFIR_2[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_2, bit(0)) ? thresholdAndMask_xbus2; + (IoxFir_2, bit(0)) ? defaultMaskedError; /** IOXFIR_2[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_2, bit(1)) ? thresholdAndMask_xbus2; + (IoxFir_2, bit(1)) ? defaultMaskedError; /** IOXFIR_2[2] * FIR_GCR_HANG_ERROR @@ -591,12 +591,12 @@ group gIoxFir_3 filter singlebit /** IOXFIR_3[0] * FIR_RX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_3, bit(0)) ? thresholdAndMask_xbus3; + (IoxFir_3, bit(0)) ? defaultMaskedError; /** IOXFIR_3[1] * FIR_TX_INVALID_STATE_OR_PARITY_ERROR */ - (IoxFir_3, bit(1)) ? thresholdAndMask_xbus3; + (IoxFir_3, bit(1)) ? defaultMaskedError; /** IOXFIR_3[2] * FIR_GCR_HANG_ERROR |