summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/mdia/mdiasm.C
diff options
context:
space:
mode:
authorCaleb Palmer <cnpalmer@us.ibm.com>2017-10-03 16:49:51 -0500
committerZane C. Shelley <zshelle@us.ibm.com>2017-10-14 15:25:22 -0400
commit4d12533d1f07b4698450528ee86d81e1138aaa55 (patch)
treef6770ed53bb2d0ab288c918485d7dcef1f45b0d3 /src/usr/diag/mdia/mdiasm.C
parentf1a0f38bcc7e6eb5d1f0df7a2c9e59dad0f439e7 (diff)
downloadtalos-hostboot-4d12533d1f07b4698450528ee86d81e1138aaa55.tar.gz
talos-hostboot-4d12533d1f07b4698450528ee86d81e1138aaa55.zip
PRD: Reenable restoreDramRepairs
Change-Id: I2b5a7516ceb2a04d607544fac0683ac83292f076 RTC: 178682 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/47106 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
Diffstat (limited to 'src/usr/diag/mdia/mdiasm.C')
-rw-r--r--src/usr/diag/mdia/mdiasm.C27
1 files changed, 24 insertions, 3 deletions
diff --git a/src/usr/diag/mdia/mdiasm.C b/src/usr/diag/mdia/mdiasm.C
index 4d6c451ae..a946c2bda 100644
--- a/src/usr/diag/mdia/mdiasm.C
+++ b/src/usr/diag/mdia/mdiasm.C
@@ -47,6 +47,7 @@
#include <initservice/initserviceif.H>
#include <sys/time.h>
#include <p9c_mss_maint_cmds.H>
+#include <dimmBadDqBitmapFuncs.H>
using namespace TARGETING;
using namespace ERRORLOG;
@@ -897,12 +898,32 @@ bool StateMachine::executeWorkItem(WorkFlowProperties * i_wfp)
// do the appropriate thing based on the phase for this target
case RESTORE_DRAM_REPAIRS:
+ {
+ TargetHandle_t target = getTarget( *i_wfp);
+ TYPE trgtType = target->getAttr<ATTR_TYPE>();
- //TODO RTC 136126
- //rc = PRDF::restoreDramRepairs(getTarget(*i_wfp));
+ // MBA target
+ if ( TYPE_MBA == trgtType )
+ {
+ rc = PRDF::restoreDramRepairs<TYPE_MBA>( target );
+ }
+ // MCBIST target
+ else
+ {
+ // Get the connected MCAs.
+ TargetHandleList mcaList;
+ getChildAffinityTargets( mcaList, target, CLASS_UNIT,
+ TYPE_MCA );
+ for ( auto & mca : mcaList )
+ {
+ MDIA_SLOW( "sm: restoreDramRepairs(0x%08x)",
+ get_huid(mca) );
+ rc = PRDF::restoreDramRepairs<TYPE_MCA>( mca );
+ }
+ }
break;
-
+ }
case START_PATTERN_0:
case START_PATTERN_1:
case START_PATTERN_2:
OpenPOWER on IntegriCloud