summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf
diff options
context:
space:
mode:
authorBenjamin Weisenbeck <bweisenb@us.ibm.com>2013-12-11 14:52:44 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-12-13 09:29:37 -0600
commit1bcc9644e71666233e4cade9342882555fa34fa6 (patch)
tree9ad28bd4c37f5ce39362f096ed1c0cdc7ca24903 /src/usr/diag/prdf
parenta201001c56229cb96859790eff8bb4abe3eb6645 (diff)
downloadtalos-hostboot-1bcc9644e71666233e4cade9342882555fa34fa6.tar.gz
talos-hostboot-1bcc9644e71666233e4cade9342882555fa34fa6.zip
PRD: L4 CE handling
Change-Id: Ib353b140d9dc225f8aec901672eff7c9a126af44 RTC:22872 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/7681 Reviewed-by: Zane Shelley <zshelle@us.ibm.com> Tested-by: Jenkins Server Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7711 Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf')
-rwxr-xr-xsrc/usr/diag/prdf/common/mnfgtools/prdfMfgThresholds.lst1
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule10
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C19
3 files changed, 26 insertions, 4 deletions
diff --git a/src/usr/diag/prdf/common/mnfgtools/prdfMfgThresholds.lst b/src/usr/diag/prdf/common/mnfgtools/prdfMfgThresholds.lst
index 6e232513d..1980585e1 100755
--- a/src/usr/diag/prdf/common/mnfgtools/prdfMfgThresholds.lst
+++ b/src/usr/diag/prdf/common/mnfgtools/prdfMfgThresholds.lst
@@ -20,3 +20,4 @@ P8CHIP_OFFNODE_BUS_CES 1
CEN_MBA_RT_SOFT_CE_TH_ALGO 2
CEN_MBA_IPL_SOFT_CE_TH_ALGO 2
CEN_MBA_RT_RCE_PER_RANK 2
+CEN_L4_CACHE_CES 0
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 269a3fd8c..0dec080a9 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
@@ -1320,17 +1320,19 @@ actionclass callout2ndLvlMedThr1UE
/** Clear MBS SecondaryBits and Line Delete*/
actionclass clearSecMbsBitsAndLineDelete
{
+ calloutSelfMed;
+ threshold( field(32 / day), mfg_file(CEN_L4_CACHE_CES));
+ funccall("ClearServiceCallFlag");
funccall("ClearMbsSecondaryBits");
- #TODO via RTC 22872 ( L4 Line Delete )
- TBDDefaultCallout;
};
/** Clear MBACAL SecondaryBits and Line Delete*/
actionclass clearSecMbaCalBitsAndLineDelete
{
+ calloutSelfMed;
+ threshold( field(32 / day), mfg_file(CEN_L4_CACHE_CES));
+ funccall("ClearServiceCallFlag");
funccall("ClearMbaCalSecondaryBits");
- #TODO via RTC 22872 ( L4 Line Delete )
- TBDDefaultCallout;
};
/** Clear MBACAL SecondaryBits and Line SelfMedThr1*/
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
index be494a430..df9858150 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
@@ -1029,6 +1029,25 @@ int32_t checkChnlReplayTimeOut( ExtensibleChip * i_chip,
#undef PRDF_FUNC
} PRDF_PLUGIN_DEFINE( Membuf, checkChnlReplayTimeOut );
+/**
+ * @brief When not in MNFG mode, clear the service call flag so that
+ * thresholding will still be done, but not visible errorlog.
+ * @param i_chip The Centaur chip
+ * @param i_sc service data collector
+ * @returns Success
+ */
+int32_t ClearServiceCallFlag( ExtensibleChip * i_chip,
+ STEP_CODE_DATA_STRUCT & i_sc )
+{
+ if( i_sc.service_data->IsAtThreshold() && !mfgMode() )
+ {
+ i_sc.service_data->ClearFlag(ServiceDataCollector::SERVICE_CALL);
+ }
+
+ return SUCCESS;
+}
+PRDF_PLUGIN_DEFINE( Membuf, ClearServiceCallFlag );
+
//------------------------------------------------------------------------------
// Define the plugins for memory ECC errors.
OpenPOWER on IntegriCloud