diff options
author | Zane Shelley <zshelle@us.ibm.com> | 2018-04-26 17:06:40 -0500 |
---|---|---|
committer | Zane C. Shelley <zshelle@us.ibm.com> | 2018-05-04 22:26:42 -0400 |
commit | e8111177af9da1880627e7f025ad29fa99dacfa5 (patch) | |
tree | 1ee1c661c7f2361119347d1500fa118fa508e43e /src/usr/diag/prdf/common/plat/mem/prdfMemDbUtils.H | |
parent | 3d5c1c541bae81970b97160272e76e3772a75864 (diff) | |
download | talos-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.H | 22 |
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 |