From 1bcc9644e71666233e4cade9342882555fa34fa6 Mon Sep 17 00:00:00 2001 From: Benjamin Weisenbeck Date: Wed, 11 Dec 2013 14:52:44 -0600 Subject: PRD: L4 CE handling Change-Id: Ib353b140d9dc225f8aec901672eff7c9a126af44 RTC:22872 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/7681 Reviewed-by: Zane Shelley Tested-by: Jenkins Server Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7711 Reviewed-by: A. Patrick Williams III --- .../diag/prdf/common/mnfgtools/prdfMfgThresholds.lst | 1 + .../prdf/common/plat/pegasus/Membuf_acts_NEST.rule | 10 ++++++---- src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C | 19 +++++++++++++++++++ 3 files changed, 26 insertions(+), 4 deletions(-) (limited to 'src/usr/diag/prdf') 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. -- cgit v1.2.1