summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.rule
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.rule')
-rw-r--r--src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.rule344
1 files changed, 344 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.rule b/src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.rule
new file mode 100644
index 000000000..5f3b423d9
--- /dev/null
+++ b/src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.rule
@@ -0,0 +1,344 @@
+# IBM_PROLOG_BEGIN_TAG
+# This is an automatically generated prolog.
+#
+# $Source: src/usr/diag/prdf/plat/pegasus/Proc_acts_ABUS.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
+
+################################################################################
+# ABUS Chiplet Registers
+################################################################################
+
+rule AbusChipletFir
+{
+ CHECK_STOP:
+ (ABUS_CHIPLET_CS_FIR & `1C00000000000000`) & ~ABUS_CHIPLET_FIR_MASK;
+ RECOVERABLE:
+ ((ABUS_CHIPLET_RE_FIR >> 2) & `1C00000000000000`) & ~ABUS_CHIPLET_FIR_MASK;
+};
+
+group gAbusChipletFir filter singlebit
+{
+ /** ABUS_CHIPLET_FIR[3]
+ * Attention from LFIR
+ */
+ (AbusChipletFir, bit(3)) ? analyze(gAbusLFir);
+
+ /** ABUS_CHIPLET_FIR[4]
+ * Attention from PBESFIR
+ */
+ (AbusChipletFir, bit(4)) ? analyze(gPbesFir);
+
+ /** ABUS_CHIPLET_FIR[5]
+ * Attention from IOAFIR
+ */
+ (AbusChipletFir, bit(5)) ? analyze(gIoaFir);
+};
+
+################################################################################
+# ABUS Chiplet LFIR
+################################################################################
+
+rule AbusLFir
+{
+ CHECK_STOP: ABUS_LFIR & ~ABUS_LFIR_MASK & ~ABUS_LFIR_ACT0 & ~ABUS_LFIR_ACT1;
+ RECOVERABLE: ABUS_LFIR & ~ABUS_LFIR_MASK & ~ABUS_LFIR_ACT0 & ABUS_LFIR_ACT1;
+};
+
+group gAbusLFir filter singlebit
+{
+ /** ABUS_LFIR[0]
+ * CFIR internal parity error
+ */
+ (AbusLFir, bit(0)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[1]
+ * Local errors from GPIO (PCB error)
+ */
+ (AbusLFir, bit(1)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[2]
+ * Local errors from CC (PCB error)
+ */
+ (AbusLFir, bit(2)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[3]
+ * Local errors from CC (OPCG, parity, scan collision, ...)
+ */
+ (AbusLFir, bit(3)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[4]
+ * Local errors from PSC (PCB error)
+ */
+ (AbusLFir, bit(4)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[5]
+ * Local errors from PSC (parity error)
+ */
+ (AbusLFir, bit(5)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[6]
+ * Local errors from Thermal (parity error)
+ */
+ (AbusLFir, bit(6)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[7]
+ * Local errors from Thermal (PCB error)
+ */
+ (AbusLFir, bit(7)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[8|9]
+ * Local errors from Thermal (Trip error)
+ */
+ (AbusLFir, bit(8|9)) ? TBDDefaultCallout;
+
+ /** ABUS_LFIR[10|11]
+ * Local errors from Trace Array ( error)
+ */
+ (AbusLFir, bit(10|11)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# ABUS Chiplet PBESFIR
+################################################################################
+
+rule PbesFir
+{
+ CHECK_STOP:
+ PBESFIR & ~PBESFIR_MASK & ~PBESFIR_ACT0 & ~PBESFIR_ACT1;
+ RECOVERABLE:
+ PBESFIR & ~PBESFIR_MASK & ~PBESFIR_ACT0 & PBESFIR_ACT1;
+};
+
+group gPbesFir filter singlebit
+{
+ /** PBESFIR[0]
+ * A0LINK_FMR_ERROR: a0link_fmr_error
+ */
+ (PbesFir, bit(0)) ? TBDDefaultCallout;
+
+ /** PBESFIR[1]
+ * A1LINK_FMR_ERROR: a1link_fmr_error
+ */
+ (PbesFir, bit(1)) ? TBDDefaultCallout;
+
+ /** PBESFIR[2]
+ * A2LINK_FMR_ERROR: a2link_fmr_error
+ */
+ (PbesFir, bit(2)) ? TBDDefaultCallout;
+
+ /** PBESFIR[3]
+ * A0LINK_PSR_ERR: a0link_psr_err
+ */
+ (PbesFir, bit(3)) ? TBDDefaultCallout;
+
+ /** PBESFIR[4]
+ * A1LINK_PSR_ERR: a1link_psr_err
+ */
+ (PbesFir, bit(4)) ? TBDDefaultCallout;
+
+ /** PBESFIR[5]
+ * A2LINK_PSR_ERR: a2link_psr_err
+ */
+ (PbesFir, bit(5)) ? TBDDefaultCallout;
+
+ /** PBESFIR[6]
+ * A0LINK_PSR_COR_ERR
+ */
+ (PbesFir, bit(6)) ? TBDDefaultCallout;
+
+ /** PBESFIR[7]
+ * A0LINK_PSR_DERR_ERR
+ */
+ (PbesFir, bit(7)) ? TBDDefaultCallout;
+
+ /** PBESFIR[8]
+ * A0LINK_PSR_UNC_ERR
+ */
+ (PbesFir, bit(8)) ? TBDDefaultCallout;
+
+ /** PBESFIR[9]
+ * A1LINK_PSR_COR_ERR
+ */
+ (PbesFir, bit(9)) ? TBDDefaultCallout;
+
+ /** PBESFIR[10]
+ * A1LINK_PSR_DERR_ERR
+ */
+ (PbesFir, bit(10)) ? TBDDefaultCallout;
+
+ /** PBESFIR[11]
+ * A1LINK_PSR_UNC_ERR
+ */
+ (PbesFir, bit(11)) ? TBDDefaultCallout;
+
+ /** PBESFIR[12]
+ * A2LINK_PSR_COR_ERR
+ */
+ (PbesFir, bit(12)) ? TBDDefaultCallout;
+
+ /** PBESFIR[13]
+ * A2LINK_PSR_DERR_ERR
+ */
+ (PbesFir, bit(13)) ? TBDDefaultCallout;
+
+ /** PBESFIR[14]
+ * NK_PSR_UNC_ERR
+ */
+ (PbesFir, bit(14)) ? TBDDefaultCallout;
+
+ /** PBESFIR[15]
+ * A0LINK_FMR_COR_ERR_HI
+ */
+ (PbesFir, bit(15)) ? TBDDefaultCallout;
+
+ /** PBESFIR[16]
+ * A0LINK_FMR_COR_ERR_LO
+ */
+ (PbesFir, bit(16)) ? TBDDefaultCallout;
+
+ /** PBESFIR[17]
+ * A0LINK_FMR_SUE_ERR_HI
+ */
+ (PbesFir, bit(17)) ? TBDDefaultCallout;
+
+ /** PBESFIR[18]
+ * A0LINK_FMR_SUE_ERR_LO
+ */
+ (PbesFir, bit(18)) ? TBDDefaultCallout;
+
+ /** PBESFIR[19]
+ * A0LINK_FMR_UNC_ERR_HI
+ */
+ (PbesFir, bit(19)) ? TBDDefaultCallout;
+
+ /** PBESFIR[20]
+ * A0LINK_FMR_UNC_ERR_LO
+ */
+ (PbesFir, bit(20)) ? TBDDefaultCallout;
+
+ /** PBESFIR[21]
+ * A1LINK_FMR_COR_ERR_HI
+ */
+ (PbesFir, bit(21)) ? TBDDefaultCallout;
+
+ /** PBESFIR[22]
+ * A1LINK_FMR_COR_ERR_LO
+ */
+ (PbesFir, bit(22)) ? TBDDefaultCallout;
+
+ /** PBESFIR[23]
+ * A1LINK_FMR_SUE_ERR_HI
+ */
+ (PbesFir, bit(23)) ? TBDDefaultCallout;
+
+ /** PBESFIR[24]
+ * A1LINK_FMR_SUE_ERR_LO
+ */
+ (PbesFir, bit(24)) ? TBDDefaultCallout;
+
+ /** PBESFIR[25]
+ * A1LINK_FMR_UNC_ERR_HI
+ */
+ (PbesFir, bit(25)) ? TBDDefaultCallout;
+
+ /** PBESFIR[26]
+ * A1LINK_FMR_UNC_ERR_LO
+ */
+ (PbesFir, bit(26)) ? TBDDefaultCallout;
+
+ /** PBESFIR[27]
+ * A2LINK_FMR_COR_ERR_HI
+ */
+ (PbesFir, bit(27)) ? TBDDefaultCallout;
+
+ /** PBESFIR[28]
+ * A2LINK_FMR_COR_ERR_LO
+ */
+ (PbesFir, bit(28)) ? TBDDefaultCallout;
+
+ /** PBESFIR[29]
+ * A2LINK_FMR_SUE_ERR_HI
+ */
+ (PbesFir, bit(29)) ? TBDDefaultCallout;
+
+ /** PBESFIR[30]
+ * A2LINK_FMR_SUE_ERR_LO
+ */
+ (PbesFir, bit(30)) ? TBDDefaultCallout;
+
+ /** PBESFIR[31]
+ * A2LINK_FMR_UNC_ERR_HI
+ */
+ (PbesFir, bit(31)) ? TBDDefaultCallout;
+
+ /** PBESFIR[32]
+ * A2LINK_FMR_UNC_ERR_LO
+ */
+ (PbesFir, bit(32)) ? TBDDefaultCallout;
+
+ /** PBESFIR[33]
+ * A0_OBS_CR_OVERFLOW_FIR_ERR
+ */
+ (PbesFir, bit(33)) ? TBDDefaultCallout;
+
+ /** PBESFIR[34]
+ * A1_OBS_CR_OVERFLOW_FIR_ERR
+ */
+ (PbesFir, bit(34)) ? TBDDefaultCallout;
+
+ /** PBESFIR[35]
+ * A2_OBS_CR_OVERFLOW_FIR_ERR
+ */
+ (PbesFir, bit(35)) ? TBDDefaultCallout;
+
+ /** PBESFIR[36]
+ * FIR_SCOM_ERR_DUP
+ */
+ (PbesFir, bit(36)) ? TBDDefaultCallout;
+
+ /** PBESFIR[37]
+ * FIR_SCOM_ERR
+ */
+ (PbesFir, bit(37)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# ABUS Chiplet IOAFIR
+################################################################################
+
+rule IoaFir
+{
+ CHECK_STOP: IOAFIR & ~IOAFIR_MASK & ~IOAFIR_ACT0 & ~IOAFIR_ACT1;
+ RECOVERABLE: IOAFIR & ~IOAFIR_MASK & ~IOAFIR_ACT0 & IOAFIR_ACT1;
+};
+
+group gIoaFir filter singlebit
+{
+#FIXME:A temp fix to generate error signature by setting bit 0
+ /** IOAFIR[0]
+ * ERROR
+ */
+ (IoaFir, bit(0)) ? TBDDefaultCallout;
+};
+
+################################################################################
+# Actions specific to ABUS chiplet
+################################################################################
+
OpenPOWER on IntegriCloud