summaryrefslogtreecommitdiffstats
path: root/src/usr/diag
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2015-02-05 11:17:04 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2015-02-16 11:58:53 -0600
commit7fb93de695db73807f4fd70a689f62b381ce7515 (patch)
tree012de780363bdaf2ded395c5368545374c4f7d93 /src/usr/diag
parent9df486caf53c9bb23ab188eaacf0d9d5e602745f (diff)
downloadtalos-hostboot-7fb93de695db73807f4fd70a689f62b381ce7515.tar.gz
talos-hostboot-7fb93de695db73807f4fd70a689f62b381ce7515.zip
PRD: Continuous Background Scrubbing when HBRT PRD is disabled
Change-Id: I9123a8c22d1ca9b8f8640e11d1eb1cd7f34f1195 RTC: 123117 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/15568 Tested-by: Jenkins Server Reviewed-by: Christopher T. Phan <cphan@us.ibm.com> Reviewed-by: Prem Shanker Jha <premjha2@in.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Reviewed-by: Bilicon Patil <bilpatil@in.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: Zane Shelley <zshelle@us.ibm.com> Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/15737
Diffstat (limited to 'src/usr/diag')
-rw-r--r--src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr_ipl.C25
1 files changed, 23 insertions, 2 deletions
diff --git a/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr_ipl.C b/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr_ipl.C
index 8cca955fa..78ba858e8 100644
--- a/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr_ipl.C
+++ b/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr_ipl.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2014 */
+/* Contributors Listed Below - COPYRIGHT 2014,2015 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -271,10 +271,31 @@ int32_t CenMbaTdCtlr::startInitialBgScrub()
? mss_MaintCmd::FAST_MED_BW_IMPACT
: mss_MaintCmd::FAST_MIN_BW_IMPACT;
+ uint32_t stopCond = COND_FAST_SCRUB;
+
+ // TODO: RTC 123338: There are some OpenPOWER companies that do not want
+ // to run with HBRT PRD enabled. Currently the only option right
+ // now is to use the compile flag. Eventually, we may want to add
+ // this as MRW/BIOS option.
+ #ifndef CONFIG_HBRT_PRD
+
+ // HBRT PRD is not enabled. Check if this system has an FSP.
+ if ( !isSpConfigFsp() )
+ {
+ // No runtime PRD will be present. Do not start the initial fast
+ // scrub. Instead, simply start continuous background scrubbing with
+ // no stop-on-error conditions.
+ cmdSpeed = enableFastBgScrub() ? mss_MaintCmd::FAST_MED_BW_IMPACT
+ : mss_MaintCmd::BG_SCRUB;
+ stopCond = 0;
+ }
+
+ #endif // ifdef CONFIG_HBRT_PRD
+
// Start the initial fast scrub.
iv_mssCmd = createMssCmd( mss_MaintCmdWrapper::TIMEBASE_SCRUB,
iv_mbaTrgt, startAddr.getRank(),
- COND_FAST_SCRUB, cmdSpeed,
+ stopCond, cmdSpeed,
mss_MaintCmdWrapper::END_OF_MEMORY );
if ( NULL == iv_mssCmd )
{
OpenPOWER on IntegriCloud