summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule')
-rw-r--r--src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule1172
1 files changed, 1172 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule b/src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule
new file mode 100644
index 000000000..f94002527
--- /dev/null
+++ b/src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule
@@ -0,0 +1,1172 @@
+# IBM_PROLOG_BEGIN_TAG
+# This is an automatically generated prolog.
+#
+# $Source: src/usr/diag/prdf/plat/pegasus/Membuf_acts_NEST.rule $
+#
+# IBM CONFIDENTIAL
+#
+# COPYRIGHT International Business Machines Corp. 2012
+#
+# p1
+#
+# Object Code Only (OCO) source materials
+# Licensed Internal Code Source Materials
+# IBM HostBoot Licensed Internal Code
+#
+# The source code for this program is not published or otherwise
+# divested of its trade secrets, irrespective of what has been
+# deposited with the U.S. Copyright Office.
+#
+# Origin: 30
+#
+# IBM_PROLOG_END_TAG
+
+################################################################################
+# NEST Chiplet Registers
+################################################################################
+
+rule NestChipletFir
+{
+ CHECK_STOP:
+ (NEST_CHIPLET_CS_FIR & `17fe000000000000`) & ~NEST_CHIPLET_FIR_MASK;
+ RECOVERABLE:
+ ((NEST_CHIPLET_RE_FIR >> 2) & `17fe000000000000`) & ~NEST_CHIPLET_FIR_MASK;
+};
+
+group gNestChipletFir filter singlebit
+{
+ /** NEST_CHIPLET_FIR[3]
+ * Attention from LFIR
+ */
+ (NestChipletFir, bit(3)) ? analyze(gNestLFir);
+
+ /** NEST_CHIPLET_FIR[5]
+ * Attention from DMIFIR
+ */
+ (NestChipletFir, bit(5)) ? analyze(gDmiFir);
+
+ /** NEST_CHIPLET_FIR[6]
+ * Attention from MBIFIR
+ */
+ (NestChipletFir, bit(6)) ? analyze(gMbiFir);
+
+ /** NEST_CHIPLET_FIR[7]
+ * Attention from MBSFIR
+ */
+ (NestChipletFir, bit(7)) ? analyze(gMbsFir);
+
+ /** NEST_CHIPLET_FIR[8|9]
+ * Attention from MBSECCFIRs
+ */
+ (NestChipletFir, bit(8|9)) ? analyze(gMbsEccFir);
+
+ /** NEST_CHIPLET_FIR[10|11]
+ * Attention from MCBISTFIRs
+ */
+ (NestChipletFir, bit(10|11)) ? analyze(gMcbistFir);
+
+ /** NEST_CHIPLET_FIR[12]
+ * Attention from NESTFBISTFIR
+ */
+ (NestChipletFir, bit(12))? analyze(gNestFbistFir);
+
+ /** NEST_CHIPLET_FIR[13]
+ * Attention from SENSORCACHEFIR
+ */
+ (NestChipletFir, bit(13)) ? analyze(gSensorCacheFir);
+
+ /** NEST_CHIPLET_FIR[14]
+ * Attention from MBS secure FIR
+ */
+ (NestChipletFir, bit(14))? analyze(gMbsSecureFir);
+};
+
+################################################################################
+# NEST Chiplet LFIR
+################################################################################
+
+rule NestLFir
+{
+ CHECK_STOP: NEST_LFIR & ~NEST_LFIR_MASK & ~NEST_LFIR_ACT0 & ~NEST_LFIR_ACT1;
+ RECOVERABLE: NEST_LFIR & ~NEST_LFIR_MASK & ~NEST_LFIR_ACT0 & NEST_LFIR_ACT1;
+};
+
+group gNestLFir filter singlebit
+{
+ /** NEST_LFIR[0]
+ * CFIR internal parity error
+ */
+ (NestLFir, bit(0)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[1]
+ * Local errors from GPIO (PCB error)
+ */
+ (NestLFir, bit(1)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[2]
+ * Local errors from CC (PCB error)
+ */
+ (NestLFir, bit(2)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[3]
+ * Local errors from CC (OPCG, parity, scan collision, ...)
+ */
+ (NestLFir, bit(3)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[4]
+ * Local errors from PSC (PCB error)
+ */
+ (NestLFir, bit(4)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[5]
+ * Local errors from PSC (parity error)
+ */
+ (NestLFir, bit(5)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[6]
+ * Local errors from Thermal (parity error)
+ */
+ (NestLFir, bit(6)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[7]
+ * Local errors from Thermal (PCB error)
+ */
+ (NestLFir, bit(7)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[8|9]
+ * Local errors from Thermal (Trip error)
+ */
+ (NestLFir, bit(8|9)) ? TBDDefaultCallout;
+
+ /** NEST_LFIR[10|11]
+ * Local errors from Trace Array ( error)
+ */
+ (NestLFir, bit(10|11)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet DMIFIR
+################################################################################
+
+rule DmiFir
+{
+ CHECK_STOP: DMIFIR & ~DMIFIR_MASK & ~DMIFIR_ACT0 & ~DMIFIR_ACT1;
+ RECOVERABLE: DMIFIR & ~DMIFIR_MASK & ~DMIFIR_ACT0 & DMIFIR_ACT1;
+};
+
+group gDmiFir filter singlebit
+{
+ /** DMIFIR[0]
+ * FIR_RX_INVALID_STATE_OR_PARITY_ERROR
+ */
+ (DmiFir, bit(0)) ? TBDDefaultCallout;
+
+ /** DMIFIR[1]
+ * FIR_TX_INVALID_STATE_OR_PARITY_ERROR
+ */
+ (DmiFir, bit(1)) ? TBDDefaultCallout;
+
+ /** DMIFIR[2]
+ * FIR_GCR_HANG_ERROR
+ */
+ (DmiFir, bit(2)) ? TBDDefaultCallout;
+
+ /** DMIFIR[8]
+ * FIR_RX_BUS0_TRAINING_ERROR
+ */
+ (DmiFir, bit(8)) ? TBDDefaultCallout;
+
+ /** DMIFIR[9]
+ * FIR_RX_BUS0_SPARE_DEPLOYED
+ */
+ (DmiFir, bit(9)) ? TBDDefaultCallout;
+
+ /** DMIFIR[10]
+ * FIR_RX_BUS0_MAX_SPARES_EXCEEDED
+ */
+ (DmiFir, bit(10)) ? TBDDefaultCallout;
+
+ /** DMIFIR[11]
+ * FIR_RX_BUS0_RECAL_OR_DYN_REPAIR_ERROR
+ */
+ (DmiFir, bit(11)) ? TBDDefaultCallout;
+
+ /** DMIFIR[12]
+ * FIR_RX_BUS0_TOO_MANY_BUS_ERRORS
+ */
+ (DmiFir, bit(12)) ? TBDDefaultCallout;
+
+ /** DMIFIR[16]
+ * FIR_RX_BUS1_TRAINING_ERROR
+ */
+ (DmiFir, bit(16)) ? TBDDefaultCallout;
+
+ /** DMIFIR[17]
+ * FIR_RX_BUS1_SPARE_DEPLOYED
+ */
+ (DmiFir, bit(17)) ? TBDDefaultCallout;
+
+ /** DMIFIR[18]
+ * FIR_RX_BUS1_MAX_SPARES_EXCEEDED
+ */
+ (DmiFir, bit(18)) ? TBDDefaultCallout;
+
+ /** DMIFIR[19]
+ * FIR_RX_BUS1_RECAL_OR_DYN_REPAIR_ERROR
+ */
+ (DmiFir, bit(19)) ? TBDDefaultCallout;
+
+ /** DMIFIR[20]
+ * FIR_RX_BUS1_TOO_MANY_BUS_ERRORS
+ */
+ (DmiFir, bit(20)) ? TBDDefaultCallout;
+
+ /** DMIFIR[24]
+ * FIR_RX_BUS2_TRAINING_ERROR
+ */
+ (DmiFir, bit(24)) ? TBDDefaultCallout;
+
+ /** DMIFIR[25]
+ * FIR_RX_BUS2_SPARE_DEPLOYED
+ */
+ (DmiFir, bit(25)) ? TBDDefaultCallout;
+
+ /** DMIFIR[26]
+ * FIR_RX_BUS2_MAX_SPARES_EXCEEDED
+ */
+ (DmiFir, bit(26)) ? TBDDefaultCallout;
+
+ /** DMIFIR[27]
+ * FIR_RX_BUS2_RECAL_OR_DYN_REPAIR_ERROR
+ */
+ (DmiFir, bit(27)) ? TBDDefaultCallout;
+
+ /** DMIFIR[28]
+ * FIR_RX_BUS2_TOO_MANY_BUS_ERRORS
+ */
+ (DmiFir, bit(28)) ? TBDDefaultCallout;
+
+ /** DMIFIR[32]
+ * FIR_RX_BUS3_TRAINING_ERROR
+ */
+ (DmiFir, bit(32)) ? TBDDefaultCallout;
+
+ /** DMIFIR[33]
+ * FIR_RX_BUS3_SPARE_DEPLOYED
+ */
+ (DmiFir, bit(33)) ? TBDDefaultCallout;
+
+ /** DMIFIR[34]
+ * FIR_RX_BUS3_MAX_SPARES_EXCEEDED
+ */
+ (DmiFir, bit(34)) ? TBDDefaultCallout;
+
+ /** DMIFIR[35]
+ * FIR_RX_BUS3_RECAL_OR_DYN_REPAIR_ERROR
+ */
+ (DmiFir, bit(35)) ? TBDDefaultCallout;
+
+ /** DMIFIR[36]
+ * FIR_RX_BUS3_TOO_MANY_BUS_ERRORS
+ */
+ (DmiFir, bit(36)) ? TBDDefaultCallout;
+
+ /** DMIFIR[40]
+ * FIR_RX_BUS4_TRAINING_ERROR
+ */
+ (DmiFir, bit(40)) ? TBDDefaultCallout;
+
+ /** DMIFIR[41]
+ * FIR_RX_BUS4_SPARE_DEPLOYED
+ */
+ (DmiFir, bit(41)) ? TBDDefaultCallout;
+
+ /** DMIFIR[42]
+ * FIR_RX_BUS4_MAX_SPARES_EXCEEDED
+ */
+ (DmiFir, bit(42)) ? TBDDefaultCallout;
+
+ /** DMIFIR[43]
+ * FIR_RX_BUS4_RECAL_OR_DYN_REPAIR_ERROR
+ */
+ (DmiFir, bit(43)) ? TBDDefaultCallout;
+
+ /** DMIFIR[44]
+ * FIR_RX_BUS4_TOO_MANY_BUS_ERRORS
+ */
+ (DmiFir, bit(44)) ? TBDDefaultCallout;
+
+ /** DMIFIR[48]
+ * FIR_SCOMFIR_ERROR
+ */
+ (DmiFir, bit(48)) ? TBDDefaultCallout;
+
+ /** DMIFIR[49]
+ * FIR_SCOMFIR_ERROR_CLONE
+ */
+ (DmiFir, bit(49)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet DMIFIR
+################################################################################
+
+rule SensorCacheFir
+{
+ CHECK_STOP: SENSORCACHEFIR & ~SENSORCACHEFIR_MASK & ~SENSORCACHEFIR_ACT0 & ~SENSORCACHEFIR_ACT1;
+ RECOVERABLE: SENSORCACHEFIR & ~SENSORCACHEFIR_MASK & ~SENSORCACHEFIR_ACT0 & SENSORCACHEFIR_ACT1;
+};
+
+group gSensorCacheFir filter singlebit
+{
+ /** SENSORCACHEFIR[0]
+ * SCAC_LFIR_I2CMINVADDR
+ */
+ (SensorCacheFir, bit(0)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[1]
+ * SCAC_LFIR_I2CMINVWRITE
+ */
+ (SensorCacheFir, bit(1)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[2]
+ * SCAC_LFIR_I2CMINVREAD
+ */
+ (SensorCacheFir, bit(2)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[3]
+ * SCAC_LFIR_I2CMAPAR
+ */
+ (SensorCacheFir, bit(3)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[4]
+ * SCAC_LFIR_I2CMPAR
+ */
+ (SensorCacheFir, bit(4)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[5]
+ * SCAC_LFIR_I2CMLBPAR
+ */
+ (SensorCacheFir, bit(5)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[10]
+ * SCAC_LFIR_I2CMINVCMD
+ */
+ (SensorCacheFir, bit(10)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[11]
+ * SCAC_LFIR_I2CMPERR
+ */
+ (SensorCacheFir, bit(11)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[12]
+ * SCAC_LFIR_I2CMOVERRUN
+ */
+ (SensorCacheFir, bit(12)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[13]
+ * SCAC_LFIR_I2CMACCESS
+ */
+ (SensorCacheFir, bit(13)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[14]
+ * SCAC_LFIR_I2CMARB
+ */
+ (SensorCacheFir, bit(14)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[15]
+ * SCAC_LFIR_I2CMNACK
+ */
+ (SensorCacheFir, bit(15)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[16]
+ * SCAC_LFIR_I2CMSTOP
+ */
+ (SensorCacheFir, bit(16)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[17]
+ * SCAC_LFIR_LOCALPIB1
+ */
+ (SensorCacheFir, bit(17)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[18]
+ * SCAC_LFIR_LOCALPIB2
+ */
+ (SensorCacheFir, bit(18)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[19]
+ * SCAC_LFIR_LOCALPIB3
+ */
+ (SensorCacheFir, bit(19)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[20]
+ * SCAC_LFIR_LOCALPIB4
+ */
+ (SensorCacheFir, bit(20)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[21]
+ * SCAC_LFIR_LOCALPIB5
+ */
+ (SensorCacheFir, bit(21)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[22]
+ * SCAC_LFIR_LOCALPIB6
+ */
+ (SensorCacheFir, bit(22)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[23]
+ * SCAC_LFIR_LOCALPIB7
+ */
+ (SensorCacheFir, bit(23)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[24]
+ * SCAC_LFIR_STALLERROR
+ */
+ (SensorCacheFir, bit(24)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[25]
+ * SCAC_LFIR_REGPARERR
+ */
+ (SensorCacheFir, bit(25)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[26]
+ * SCAC_LFIR_REGPARERRX
+ */
+ (SensorCacheFir, bit(26)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[32]
+ * SCAC_LFIR_SMERR
+ */
+ (SensorCacheFir, bit(32)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[33]
+ * SCAC_LFIR_REGACCERR
+ */
+ (SensorCacheFir, bit(33)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[34]
+ * SCAC_LFIR_RESETERR
+ */
+ (SensorCacheFir, bit(34)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[35]
+ * SCAC_LFIR_INTERNAL_SCOM_ERROR
+ */
+ (SensorCacheFir, bit(35)) ? TBDDefaultCallout;
+
+ /** SENSORCACHEFIR[36]
+ * SCAC_LFIR_INTERNAL_SCOM_ERROR_CLONE
+ */
+ (SensorCacheFir, bit(36)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet MBIFIR
+################################################################################
+
+rule MbiFir
+{
+ CHECK_STOP: MBIFIR & ~MBIFIR_MASK & ~MBIFIR_ACT0 & ~MBIFIR_ACT1;
+ RECOVERABLE: MBIFIR & ~MBIFIR_MASK & ~MBIFIR_ACT0 & MBIFIR_ACT1;
+};
+
+group gMbiFir filter singlebit
+{
+ /** MbiFir[0]
+ * MBIFIRQ_REPLAY_TIMEOUT
+ */
+ (MbiFir, bit(0)) ? TBDDefaultCallout;
+
+ /** MbiFir[1]
+ * MBIFIRQ_CHANNEL_FAIL
+ */
+ (MbiFir, bit(1)) ? TBDDefaultCallout;
+
+ /** MbiFir[2]
+ * MBIFIRQ_CRC_ERROR
+ */
+ (MbiFir, bit(2)) ? TBDDefaultCallout;
+
+ /** MbiFir[3]
+ * MBIFIRQ_FRAME_NOACK
+ */
+ (MbiFir, bit(3)) ? TBDDefaultCallout;
+
+ /** MbiFir[4]
+ * MBIFIRQ_SEQID_OUT_OF_ORDER
+ */
+ (MbiFir, bit(4)) ? TBDDefaultCallout;
+
+ /** MbiFir[5]
+ * MBIFIRQ_REPLAY_BUFFER_ECC_CE
+ */
+ (MbiFir, bit(5)) ? TBDDefaultCallout;
+
+ /** MbiFir[6]
+ * MBIFIRQ_REPLAY_BUFFER_ECC_UE
+ */
+ (MbiFir, bit(6)) ? TBDDefaultCallout;
+
+ /** MbiFir[7]
+ * MBIFIRQ_MBI_STATE_MACHINE_TIMEOUT
+ */
+ (MbiFir, bit(7)) ? TBDDefaultCallout;
+
+ /** MbiFir[8]
+ * MBIFIRQ_MBI_INTERNAL_CONTROL_PARITY_ERROR
+ */
+ (MbiFir, bit(8)) ? TBDDefaultCallout;
+
+ /** MbiFir[9]
+ * MBIFIRQ_MBI_DATA_FLOW_PARITY_ERROR
+ */
+ (MbiFir, bit(9)) ? TBDDefaultCallout;
+
+ /** MbiFir[10]
+ * MBIFIRQ_CRC_PERFORMANCE_DEGRADATION
+ */
+ (MbiFir, bit(10)) ? TBDDefaultCallout;
+
+ /** MbiFir[11]
+ * MBIFIRQ_HOST_MC_GLOBAL_CHECKSTOP
+ */
+ (MbiFir, bit(11)) ? TBDDefaultCallout;
+
+ /** MbiFir[12]
+ * MBIFIRQ_HOST_MC_TRACESTOP
+ */
+ (MbiFir, bit(12)) ? TBDDefaultCallout;
+
+ /** MbiFir[13]
+ * MBIFIRQ_CHANNEL_INTERLOCK_FAIL
+ */
+ (MbiFir, bit(13)) ? TBDDefaultCallout;
+
+ /** MbiFir[14]
+ * MBIFIRQ_HOST_MC_LOCAL_CHECKSTOP
+ */
+ (MbiFir, bit(14)) ? TBDDefaultCallout;
+
+ /** MbiFir[15]
+ * MBIFIRQ_FRTL_CONTER_OVERFLOW
+ */
+ (MbiFir, bit(15)) ? TBDDefaultCallout;
+
+ /** MbiFir[16]
+ * MBIFIRQ_SCOM_REGISTER_PARITY_ERROR
+ */
+ (MbiFir, bit(16)) ? TBDDefaultCallout;
+
+ /** MbiFir[17]
+ * MBIFIRQ_IO_FAULT: IO to MBI
+ */
+ (MbiFir, bit(17)) ? TBDDefaultCallout;
+
+ /** MbiFir[18]
+ * MBIFIRQ_MULTIPLE_REPLAY
+ */
+ (MbiFir, bit(18)) ? TBDDefaultCallout;
+
+ /** MbiFir[19]
+ * MBIFIRQ_MBICFG_PARITY_SCOM_ERROR
+ */
+ (MbiFir, bit(19)) ? TBDDefaultCallout;
+
+ /** MbiFir[20]
+ * MBIFIRQ_BUFFER_OVERRUN_ERROR
+ */
+ (MbiFir, bit(20)) ? TBDDefaultCallout;
+
+ /** MbiFir[25]
+ * MBIFIRQ_INTERNAL_SCOM_ERROR_CLONE
+ */
+ (MbiFir, bit(25)) ? TBDDefaultCallout;
+
+ /** MbiFir[26]
+ * MBIFIRQ_INTERNAL_SCOM_ERROR_CLONE_COPY
+ */
+ (MbiFir, bit(26)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet MBSFIR
+################################################################################
+
+rule MbsFir
+{
+ CHECK_STOP: MBSFIR & ~MBSFIR_MASK & ~MBSFIR_ACT0 & ~MBSFIR_ACT1;
+ RECOVERABLE: MBSFIR & ~MBSFIR_MASK & ~MBSFIR_ACT0 & MBSFIR_ACT1;
+};
+
+group gMbsFir filter singlebit
+{
+ /** MBSFIR[0]
+ * MBS_FIR_REG_HOST_PROTOCOL_ERROR
+ */
+ (MbsFir, bit(0)) ? TBDDefaultCallout;
+
+ /** MBSFIR[1]
+ * MBS_FIR_REG_INT_PROTOCOL_ERROR
+ */
+ (MbsFir, bit(1)) ? TBDDefaultCallout;
+
+ /** MBSFIR[2]
+ * MBS_FIR_REG_INVALID_ADDRESS_ERROR
+ */
+ (MbsFir, bit(2)) ? TBDDefaultCallout;
+
+ /** MBSFIR[3]
+ * MBS_FIR_REG_EXTERNAL_TIMEOUT
+ */
+ (MbsFir, bit(3)) ? TBDDefaultCallout;
+
+ /** MBSFIR[4]
+ * MBS_FIR_REG_INTERNAL_TIMEOUT
+ */
+ (MbsFir, bit(4)) ? TBDDefaultCallout;
+
+ /** MBSFIR[5]
+ * MBS_FIR_REG_INT_BUFFER_CE
+ */
+ (MbsFir, bit(5)) ? TBDDefaultCallout;
+
+ /** MBSFIR[6]
+ * MBS_FIR_REG_INT_BUFFER_UE
+ */
+ (MbsFir, bit(6)) ? TBDDefaultCallout;
+
+ /** MBSFIR[7]
+ * MBS_FIR_REG_INT_BUFFER_SUE
+ */
+ (MbsFir, bit(7)) ? TBDDefaultCallout;
+
+ /** MBSFIR[8]
+ * MBS_FIR_REG_INT_PARITY_ERROR
+ */
+ (MbsFir, bit(8)) ? TBDDefaultCallout;
+
+ /** MBSFIR[9]
+ * MBS_FIR_REG_CACHE_SRW_CE
+ */
+ (MbsFir, bit(9)) ? TBDDefaultCallout;
+
+ /** MBSFIR[10]
+ * MBS_FIR_REG_CACHE_SRW_UE
+ */
+ (MbsFir, bit(10)) ? TBDDefaultCallout;
+
+ /** MBSFIR[11]
+ * MBS_FIR_REG_CACHE_SRW_SUE
+ */
+ (MbsFir, bit(11)) ? TBDDefaultCallout;
+
+ /** MBSFIR[12]
+ * MBS_FIR_REG_CACHE_CO_CE
+ */
+ (MbsFir, bit(12)) ? TBDDefaultCallout;
+
+ /** MBSFIR[13]
+ * MBS_FIR_REG_CACHE_CO_UE
+ */
+ (MbsFir, bit(13)) ? TBDDefaultCallout;
+
+ /** MBSFIR[14]
+ * MBS_FIR_REG_CACHE_CO_SUE
+ */
+ (MbsFir, bit(14)) ? TBDDefaultCallout;
+
+ /** MBSFIR[15]
+ * MBS_FIR_REG_DIR_CE
+ */
+ (MbsFir, bit(15)) ? TBDDefaultCallout;
+
+ /** MBSFIR[16]
+ * MBS_FIR_REG_DIR_UE
+ */
+ (MbsFir, bit(16)) ? TBDDefaultCallout;
+
+ /** MBSFIR[17]
+ * MBS_FIR_REG_DIR_MEMBER_DELETED
+ */
+ (MbsFir, bit(17)) ? TBDDefaultCallout;
+
+ /** MBSFIR[18]
+ * MBS_FIR_REG_DIR_ALL_MEMBERS_DELETED
+ */
+ (MbsFir, bit(18)) ? TBDDefaultCallout;
+
+ /** MBSFIR[19]
+ * MBS_FIR_REG_LRU_ERROR
+ */
+ (MbsFir, bit(19)) ? TBDDefaultCallout;
+
+ /** MBSFIR[20]
+ * MBS_FIR_REG_EDRAM_ERROR
+ */
+ (MbsFir, bit(20)) ? TBDDefaultCallout;
+
+ /** MBSFIR[21]
+ * MBS_FIR_REG_EMERGENCY_THROTTLE_SET
+ */
+ (MbsFir, bit(21)) ? TBDDefaultCallout;
+
+ /** MBSFIR[22]
+ * MBS_FIR_REG_HOST_INBAND_READ_ERROR
+ */
+ (MbsFir, bit(22)) ? TBDDefaultCallout;
+
+ /** MBSFIR[23]
+ * MBS_FIR_REG_HOST_INBAND_WRITE_ERROR
+ */
+ (MbsFir, bit(23)) ? TBDDefaultCallout;
+
+ /** MBSFIR[24]
+ * MBS_FIR_REG_OCC_INBAND_READ_ERROR
+ */
+ (MbsFir, bit(24)) ? TBDDefaultCallout;
+
+ /** MBSFIR[25]
+ * MBS_FIR_REG_OCC_INBAND_WRITE_ERROR
+ */
+ (MbsFir, bit(25)) ? TBDDefaultCallout;
+
+ /** MBSFIR[26]
+ * MBS_FIR_REG_SRB_BUFFER_CE
+ */
+ (MbsFir, bit(26)) ? TBDDefaultCallout;
+
+ /** MBSFIR[27]
+ * MBS_FIR_REG_SRB_BUFFER_UE
+ */
+ (MbsFir, bit(27)) ? TBDDefaultCallout;
+
+ /** MBSFIR[28]
+ * MBS_FIR_REG_SRB_BUFFER_SUE
+ */
+ (MbsFir, bit(28)) ? TBDDefaultCallout;
+
+ /** MBSFIR[29]
+ * MBS_FIR_REG_INTERNAL_SCOM_ERROR
+ */
+ (MbsFir, bit(29)) ? TBDDefaultCallout;
+
+ /** MBSFIR[30]
+ * MBS_FIR_REG_INTERNAL_SCOM_ERROR_COPY
+ */
+ (MbsFir, bit(30)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet MBSECC01FIR and MBSECC23FIR
+################################################################################
+
+rule MbsEcc01Fir
+{
+ CHECK_STOP:
+ MBSECC01FIR & ~MBSECC01FIR_MASK & ~MBSECC01FIR_ACT0 & ~MBSECC01FIR_ACT1;
+ RECOVERABLE:
+ MBSECC01FIR & ~MBSECC01FIR_MASK & ~MBSECC01FIR_ACT0 & MBSECC01FIR_ACT1;
+};
+
+rule MbsEcc23Fir
+{
+ CHECK_STOP:
+ MBSECC23FIR & ~MBSECC23FIR_MASK & ~MBSECC23FIR_ACT0 & ~MBSECC23FIR_ACT1;
+ RECOVERABLE:
+ MBSECC23FIR & ~MBSECC23FIR_MASK & ~MBSECC23FIR_ACT0 & MBSECC23FIR_ACT1;
+};
+
+group gMbsEccFir filter singlebit
+{
+ /** MBSECCFIR01[0:7]
+ * MBECCFIR_MEMORY_MPE_RANK_0_7
+ */
+ (MbsEcc01Fir, bit(0|1|2|3|4|5|6|7)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[0:7]
+ * MBECCFIR_MEMORY_MPE_RANK_0_7
+ */
+ (MbsEcc23Fir, bit(0|1|2|3|4|5|6|7)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[16]
+ * MBECCFIR_MEMORY_NCE
+ */
+ (MbsEcc01Fir, bit(16)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[16]
+ * MBECCFIR_MEMORY_NCE
+ */
+ (MbsEcc23Fir, bit(16)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[17]
+ * MBECCFIR_MEMORY_RCE
+ */
+ (MbsEcc01Fir, bit(17)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[17]
+ * MBECCFIR_MEMORY_RCE
+ */
+ (MbsEcc23Fir, bit(17)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[18]
+ * MBECCFIR_MEMORY_SUE
+ */
+ (MbsEcc01Fir, bit(18)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[18]
+ * MBECCFIR_MEMORY_SUE
+ */
+ (MbsEcc23Fir, bit(18)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[19]
+ * MBECCFIR_MEMORY_UE
+ */
+ (MbsEcc01Fir, bit(19)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[19]
+ * MBECCFIR_MEMORY_UE
+ */
+ (MbsEcc23Fir, bit(19)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[20:27]
+ * MBECCFIR_MAINT_MPE_RANK_0_7
+ */
+ (MbsEcc01Fir, bit(20|21|22|23|24|25|26|27)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[20:27]
+ * MBECCFIR_MAINT_MPE_RANK_0_7
+ */
+ (MbsEcc23Fir, bit(20|21|22|23|24|25|26|27)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[36]
+ * MBECCFIR_MAINTENANCE_NCE
+ */
+ (MbsEcc01Fir, bit(36)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[36]
+ * MBECCFIR_MAINTENANCE_NCE
+ */
+ (MbsEcc23Fir, bit(36)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[37]
+ * MBECCFIR_MAINTENANCE_SCE
+ */
+ (MbsEcc01Fir, bit(37)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[37]
+ * MBECCFIR_MAINTENANCE_SCE
+ */
+ (MbsEcc23Fir, bit(37)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[38]
+ * MBECCFIR_MAINTENANCE_MCE
+ */
+ (MbsEcc01Fir, bit(38)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[38]
+ * MBECCFIR_MAINTENANCE_MCE
+ */
+ (MbsEcc23Fir, bit(38)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[39]
+ * MBECCFIR_MAINTENANCE_RCE
+ */
+ (MbsEcc01Fir, bit(39)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[39]
+ * MBECCFIR_MAINTENANCE_RCE
+ */
+ (MbsEcc23Fir, bit(39)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[40]
+ * MBECCFIR_MAINTENANCE_SUE
+ */
+ (MbsEcc01Fir, bit(40)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[40]
+ * MBECCFIR_MAINTENANCE_SUE
+ */
+ (MbsEcc23Fir, bit(40)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[41]
+ * MBECCFIR_MAINTENANCE_UE
+ */
+ (MbsEcc01Fir, bit(41)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[41]
+ * MBECCFIR_MAINTENANCE_UE
+ */
+ (MbsEcc23Fir, bit(41)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[42]
+ * MBECCFIR_MPE_DURING_USE_MAINTENANCE_MARK_MODE
+ */
+ (MbsEcc01Fir, bit(42)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[42]
+ * MBECCFIR_MPE_DURING_USE_MAINTENANCE_MARK_MODE
+ */
+ (MbsEcc23Fir, bit(42)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[43]
+ * MBECCFIR_PREFETCH_MEMORY_UE
+ */
+ (MbsEcc01Fir, bit(43)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[43]
+ * MBECCFIR_PREFETCH_MEMORY_UE
+ */
+ (MbsEcc23Fir, bit(43)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[44]
+ * MBECCFIR_MEMORY_RCD_PARITY_ERROR
+ */
+ (MbsEcc01Fir, bit(44)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[44]
+ * MBECCFIR_MEMORY_RCD_PARITY_ERROR
+ */
+ (MbsEcc23Fir, bit(44)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[45]
+ * MBECCFIR_MAINTENANCE_RCD_PARITY_ERROR
+ */
+ (MbsEcc01Fir, bit(45)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[45]
+ * MBECCFIR_MAINTENANCE_RCD_PARITY_ERROR
+ */
+ (MbsEcc23Fir, bit(45)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[46]
+ * MBECCFIR_RECOVERABLE_CONFIGURATION_REGISTER_PARITY_ERROR
+ */
+ (MbsEcc01Fir, bit(46)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[46]
+ * MBECCFIR_RECOVERABLE_CONFIGURATION_REGISTER_PARITY_ERROR
+ */
+ (MbsEcc23Fir, bit(46)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[47]
+ * MBECCFIR_UNRECOVERABLE_CONFIGURATION_REGISTER_PARITY_ERROR
+ */
+ (MbsEcc01Fir, bit(47)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[47]
+ * MBECCFIR_UNRECOVERABLE_CONFIGURATION_REGISTER_PARITY_ERROR
+ */
+ (MbsEcc23Fir, bit(47)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[48]
+ * MBECCFIR_MASKABLE_CONFIGURATION_REGISTER_PARITY_ERROR
+ */
+ (MbsEcc01Fir, bit(48)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[48]
+ * MBECCFIR_MASKABLE_CONFIGURATION_REGISTER_PARITY_ERROR
+ */
+ (MbsEcc23Fir, bit(48)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[49]
+ * MBECCFIR_ECC_DATAPATH_PARITY_ERROR
+ */
+ (MbsEcc01Fir, bit(49)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[49]
+ * MBECCFIR_ECC_DATAPATH_PARITY_ERROR
+ */
+ (MbsEcc23Fir, bit(49)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[50]
+ * MBECCFIR_INTERNAL_SCOM_ERROR
+ */
+ (MbsEcc01Fir, bit(50)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[50]
+ * MBECCFIR_INTERNAL_SCOM_ERROR
+ */
+ (MbsEcc23Fir, bit(50)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR01[51]
+ * MBECCFIR_INTERNAL_SCOM_ERROR_COPY
+ */
+ (MbsEcc01Fir, bit(51)) ? TBDDefaultCallout;
+
+ /** MBSECCFIR23[51]
+ * MBECCFIR_INTERNAL_SCOM_ERROR_COPY
+ */
+ (MbsEcc23Fir, bit(51)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet MCBIST01FIR and MCBIST23FIR
+################################################################################
+
+rule Mcbist01Fir
+{
+ CHECK_STOP:
+ MCBIST01FIR & ~MCBIST01FIR_MASK & ~MCBIST01FIR_ACT0 & ~MCBIST01FIR_ACT1;
+ RECOVERABLE:
+ MCBIST01FIR & ~MCBIST01FIR_MASK & ~MCBIST01FIR_ACT0 & MCBIST01FIR_ACT1;
+};
+
+rule Mcbist23Fir
+{
+ CHECK_STOP:
+ MCBIST23FIR & ~MCBIST23FIR_MASK & ~MCBIST23FIR_ACT0 & ~MCBIST23FIR_ACT1;
+ RECOVERABLE:
+ MCBIST23FIR & ~MCBIST23FIR_MASK & ~MCBIST23FIR_ACT0 & MCBIST23FIR_ACT1;
+};
+
+group gMcbistFir filter singlebit
+{
+ /** MCBISTFIR01[0]
+ * MBSFIRQ_SCOM_PAR_ERRORS
+ */
+ (Mcbist01Fir, bit(0)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR23[0]
+ * MBSFIRQ_SCOM_PAR_ERRORS
+ */
+ (Mcbist23Fir, bit(0)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR01[1]
+ * MBSFIRQ_MBX_PAR_ERRORS
+ */
+ (Mcbist01Fir, bit(1)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR23[1]
+ * MBSFIRQ_MBX_PAR_ERRORS
+ */
+ (Mcbist23Fir, bit(1)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR01[15]
+ * MBSFIRQ_INTERNAL_SCOM_ERROR
+ */
+ (Mcbist01Fir, bit(15)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR23[15]
+ * MBSFIRQ_INTERNAL_SCOM_ERROR
+ */
+ (Mcbist23Fir, bit(15)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR01[16]
+ * MBSFIRQ_INTERNAL_SCOM_ERROR_CLONE
+ */
+ (Mcbist01Fir, bit(16)) ? TBDDefaultCallout;
+
+ /** MCBISTFIR23[16]
+ * MBSFIRQ_INTERNAL_SCOM_ERROR_CLONE
+ */
+ (Mcbist23Fir, bit(16)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet NESTFBISTFIR
+################################################################################
+
+rule NestFbistFir
+{
+ CHECK_STOP:
+ NESTFBISTFIR & ~NESTFBISTFIR_MASK & ~NESTFBISTFIR_ACT0 & ~NESTFBISTFIR_ACT1;
+ RECOVERABLE:
+ NESTFBISTFIR & ~NESTFBISTFIR_MASK & ~NESTFBISTFIR_ACT0 & NESTFBISTFIR_ACT1;
+};
+
+group gNestFbistFir filter singlebit
+{
+ /** NESTFBISTFIR[0]
+ * FBN_FIR_REG_FBN_SCOM_UE
+ */
+ (NestFbistFir, bit(0)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[1]
+ * FBN_FIR_REG_FBN_USCHK_1HOT
+ */
+ (NestFbistFir, bit(1)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[2]
+ * FBN_FIR_REG_FBN_USCHK_DATA_DROP
+ */
+ (NestFbistFir, bit(2)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[3]
+ * FBN_FIR_REG_FBN_DGEN_1HOT
+ */
+ (NestFbistFir, bit(3)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[4]
+ * FBN_FIR_REG_FBN_CMD_1HOT
+ */
+ (NestFbistFir, bit(4)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[5]
+ * FBN_FIR_REG_FBN_CMD_EARLY_RESPONSE
+ */
+ (NestFbistFir, bit(5)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[6]
+ * FBN_FIR_REG_FBN_FBIST_FAIL
+ */
+ (NestFbistFir, bit(6)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[7]
+ * FBN_FIR_REG_FBN_US_CRC_ERR
+ */
+ (NestFbistFir, bit(7)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[15]
+ * FBN_FIR_REG_INTERNAL_SCOM_ERROR
+ */
+ (NestFbistFir, bit(15)) ? TBDDefaultCallout;
+
+ /** NESTFBISTFIR[16]
+ * FBN_FIR_REG_INTERNAL_SCOM_ERROR_CLONE
+ */
+ (NestFbistFir, bit(16)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# NEST Chiplet MBSSECUREFIR
+################################################################################
+
+rule MbsSecureFir
+{
+ CHECK_STOP:
+ MBSSECUREFIR & ~MBSSECUREFIR_MASK & ~MBSSECUREFIR_ACT0 & ~MBSSECUREFIR_ACT1;
+ # NOTE: This secure FIR will only report checkstop attentions.
+};
+
+group gMbsSecureFir filter singlebit
+{
+ /** MBSSECUREFIR[0]
+ * MBSSIRQ_INVALID_MBSXCR_ACCESS
+ */
+ (MbsSecureFir, bit(0)) ? TBDDefaultCallout;
+
+ /** MBSSECUREFIR[1]
+ * MBSSIRQ_INVALID_MBAXCR01_ACCESS
+ */
+ (MbsSecureFir, bit(1)) ? TBDDefaultCallout;
+
+ /** MBSSECUREFIR[2]
+ * MBSSIRQ_INVALID_MBAXCR23_ACCESS
+ */
+ (MbsSecureFir, bit(2)) ? TBDDefaultCallout;
+
+ /** MBSSECUREFIR[3]
+ * MBSSIRQ_INVALID_MBAXCRMS_ACCRESS
+ */
+ (MbsSecureFir, bit(3)) ? TBDDefaultCallout;
+
+ /** MBSSECUREFIR[5]
+ * MBSSIRQ_INVALID_SIR_MASK_OR_ACTION_REGISTER_ACCESS
+ */
+ (MbsSecureFir, bit(5)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# Actions specific to NEST chiplet
+################################################################################
+
OpenPOWER on IntegriCloud