summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/prdfMain_ipl.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/diag/prdf/prdfMain_ipl.C')
-rw-r--r--src/usr/diag/prdf/prdfMain_ipl.C36
1 files changed, 13 insertions, 23 deletions
diff --git a/src/usr/diag/prdf/prdfMain_ipl.C b/src/usr/diag/prdf/prdfMain_ipl.C
index 874d1323e..8241d925f 100644
--- a/src/usr/diag/prdf/prdfMain_ipl.C
+++ b/src/usr/diag/prdf/prdfMain_ipl.C
@@ -40,7 +40,7 @@
// Platform includes
#include <prdfCenMbaDataBundle.H>
-//#include <prdfMbaDomain.H> TODO RTC 157888
+#include <prdfCenMbaDomain.H>
#include <prdfPlatServices.H>
#include <prdfP9McaDataBundle.H>
#include <prdfP9McbistDomain.H>
@@ -152,34 +152,24 @@ errlHndl_t startScrub()
PRDF_ENTER( PRDF_FUNC "HUID=0x%08x", nodeId );
- //master proc is CUMULUS, use MBA
- if ( MODEL_CUMULUS == getChipModel( getMasterProc() ) )
+ // Start background scrubbing.
+ TARGETING::MODEL procModel = getChipModel( getMasterProc() );
+ if ( MODEL_CUMULUS == procModel )
{
- //TODO RTC 157888
- // Start scrubbing on all MBAs.
- //MbaDomain * domain = (MbaDomain *)systemPtr->GetDomain(MBA_DOMAIN);
- //if ( nullptr == domain )
- //{
- // PRDF_ERR( PRDF_FUNC "MBA_DOMAIN not found. nodeId=0x%08x",
- // nodeId );
- // l_rc = FAIL; break;
- //}
- //l_rc = domain->startScrub();
+ MbaDomain * domain = (MbaDomain *)systemPtr->GetDomain(MBA_DOMAIN);
+ l_rc = domain->startScrub();
}
- //else use MCBIST
- else
+ else if ( MODEL_NIMBUS == procModel )
{
- //Start scrubbing on all MCBISTs
McbistDomain * domain =
- (McbistDomain *)systemPtr->GetDomain(MCBIST_DOMAIN);
- if ( nullptr == domain )
- {
- PRDF_ERR( PRDF_FUNC "MCBIST_DOMAIN not found. nodeId=0x%08x",
- nodeId );
- l_rc = FAIL; break;
- }
+ (McbistDomain *)systemPtr->GetDomain(MCBIST_DOMAIN);
l_rc = domain->startScrub();
}
+ else
+ {
+ PRDF_ERR(PRDF_FUNC "Master PROC model %d not supported", procModel);
+ PRDF_ASSERT(false);
+ }
PRDF_EXIT( PRDF_FUNC "HUID=0x%08x", nodeId );
OpenPOWER on IntegriCloud