summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2018-04-26 17:06:40 -0500
committerZane C. Shelley <zshelle@us.ibm.com>2018-05-04 22:26:42 -0400
commite8111177af9da1880627e7f025ad29fa99dacfa5 (patch)
tree1ee1c661c7f2361119347d1500fa118fa508e43e /src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H
parent3d5c1c541bae81970b97160272e76e3772a75864 (diff)
downloadtalos-hostboot-e8111177af9da1880627e7f025ad29fa99dacfa5.tar.gz
talos-hostboot-e8111177af9da1880627e7f025ad29fa99dacfa5.zip
PRD: fixed how RT TPS procedures are banned from processing
If banned, the TPS procedure must be prevented from being added to the queue. This fixes the issue where background scrubbing gets stopped manually and the TPS procedure is never executed. This also fixes a flooding issue when TPS is not available to fix persistent errors. Change-Id: I76cc9f7ce7c06587261ff593a626a4ef51b317e1 RTC: 192009 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57919 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58327 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H')
-rw-r--r--src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H b/src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H
index d792e8cdf..fc4ff7800 100644
--- a/src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H
+++ b/src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H
@@ -157,6 +157,28 @@ uint32_t handleTdEvent<TARGETING::TYPE_MBA>( ExtensibleChip * i_chip,
return getMbaDataBundle(i_chip)->getTdCtlr()->handleTdEvent( io_sc );
}
+/**
+ * @brief Generic wrapper to tell the TD controller to ban TPS on a rank.
+ * @param i_chip MCA or MBA.
+ * @param i_rank The target slave rank.
+ */
+template<TARGETING::TYPE T>
+void banTps( ExtensibleChip * i_chip, const MemRank & i_rank );
+
+template<> inline
+void banTps<TARGETING::TYPE_MCA>( ExtensibleChip * i_chip,
+ const MemRank & i_rank )
+{
+ getMcaDataBundle(i_chip)->getTdCtlr()->banTps( i_chip, i_rank );
+}
+
+template<> inline
+void banTps<TARGETING::TYPE_MBA>( ExtensibleChip * i_chip,
+ const MemRank & i_rank )
+{
+ getMbaDataBundle(i_chip)->getTdCtlr()->banTps( i_chip, i_rank );
+}
+
#endif // Hostboot Runtime only
} // end namespace MemDbUtils
OpenPOWER on IntegriCloud