summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C
diff options
context:
space:
mode:
authorMatt Derksen <mderkse1@us.ibm.com>2018-05-23 13:38:38 -0500
committerZane C. Shelley <zshelle@us.ibm.com>2018-06-08 22:45:50 -0400
commit3302fd380ebaf395839932ab00e009567a829037 (patch)
treeba2c2288bb4aae41ecbe857bd4b7bbb4e5a64dde /src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C
parent38666ab58f157b82c3dca2d782667cf071a75cb2 (diff)
downloadtalos-hostboot-3302fd380ebaf395839932ab00e009567a829037.tar.gz
talos-hostboot-3302fd380ebaf395839932ab00e009567a829037.zip
Additional DRAM sparing support functions
Ported isSpareAvailable(), setDramSpare(), and setEccSpare() Created common updateSpared method for MemSymbol Change-Id: I02d4616137f65cf5216b83495594e45f52a93470 RTC: 189221 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59388 Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60137 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C')
-rw-r--r--src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C b/src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C
index a7de2d38c..559e384fa 100644
--- a/src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C
+++ b/src/usr/diag/prdf/plat/mem/prdfMemDsd_ipl.C
@@ -128,10 +128,10 @@ uint32_t DsdEvent<TYPE_MBA>::verifySpare( const uint32_t & i_eccAttns,
// Set the bad spare in the VPD. At this point, the chip mark
// should have already been set in the VPD because it was recently
// verified.
+ MemDqBitmap<DIMMS_PER_RANK::MBA> bitmap;
+ o_rc = getBadDqBitmap<DIMMS_PER_RANK::MBA>( iv_chip->getTrgt(),
+ iv_rank, bitmap );
- /* TODO: RTC 189221
- CenDqBitmap bitmap;
- o_rc = getBadDqBitmap( iv_mbaTrgt, iv_rank, bitmap );
if ( SUCCESS != o_rc )
{
PRDF_ERR( PRDF_FUNC "getBadDqBitmap() failed" );
@@ -143,7 +143,7 @@ uint32_t DsdEvent<TYPE_MBA>::verifySpare( const uint32_t & i_eccAttns,
}
else
{
- o_rc = bitmap.setDramSpare( iv_mark.getCM().getPortSlct() );
+ o_rc = bitmap.setDramSpare( iv_mark.getSymbol().getPortSlct() );
if ( SUCCESS != o_rc )
{
PRDF_ERR( PRDF_FUNC "setDramSpare() failed" );
@@ -151,13 +151,14 @@ uint32_t DsdEvent<TYPE_MBA>::verifySpare( const uint32_t & i_eccAttns,
}
}
- o_rc = setBadDqBitmap( iv_mbaTrgt, iv_rank, bitmap );
+ o_rc = setBadDqBitmap<DIMMS_PER_RANK::MBA>( iv_chip->getTrgt(),
+ iv_rank, bitmap );
if ( SUCCESS != o_rc )
{
PRDF_ERR( PRDF_FUNC "setBadDqBitmap() failed" );
break;
}
- */
+
}
else
{
OpenPOWER on IntegriCloud