diff options
author | Caleb Palmer <cnpalmer@us.ibm.com> | 2017-10-03 16:49:51 -0500 |
---|---|---|
committer | Zane C. Shelley <zshelle@us.ibm.com> | 2017-10-14 15:25:22 -0400 |
commit | 4d12533d1f07b4698450528ee86d81e1138aaa55 (patch) | |
tree | f6770ed53bb2d0ab288c918485d7dcef1f45b0d3 /src/usr/diag | |
parent | f1a0f38bcc7e6eb5d1f0df7a2c9e59dad0f439e7 (diff) | |
download | talos-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')
-rw-r--r-- | src/usr/diag/mdia/mdiasm.C | 27 |
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: |