summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBill Hoffa <wghoffa@us.ibm.com>2019-04-18 14:44:32 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2019-04-24 14:24:16 -0500
commitf619d06251d5c63b707fcae87aa1c9e396f4ff74 (patch)
tree24a75a7b280c1ff6d1d6338c53376d57ebe85735 /src
parent239bd856fd664ca51a8fcc019b73a6fcd894c6bb (diff)
downloadtalos-hostboot-f619d06251d5c63b707fcae87aa1c9e396f4ff74.tar.gz
talos-hostboot-f619d06251d5c63b707fcae87aa1c9e396f4ff74.zip
Verify Dimm Type in DJVPD Cache
Change-Id: I95cf68ff66ef8710b476fbd4802ea12870bd9509 CQ: SW463042 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76177 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/usr/vpd/spd.C36
1 files changed, 28 insertions, 8 deletions
diff --git a/src/usr/vpd/spd.C b/src/usr/vpd/spd.C
index a58398e4a..34bc37cec 100644
--- a/src/usr/vpd/spd.C
+++ b/src/usr/vpd/spd.C
@@ -2368,17 +2368,37 @@ errlHndl_t cmpPnorToSeeprom ( TARGETING::Target * i_target,
o_match = false;
do
{
- // Read the Basic Memory Type
- uint8_t memType(MEM_TYPE_INVALID);
- err = getMemType( memType,
+ // Read the Basic Memory Type from the Seeprom
+ uint8_t memTypeSeeprom(MEM_TYPE_INVALID);
+ err = getMemType( memTypeSeeprom,
i_target,
- VPD::AUTOSELECT );
+ VPD::SEEPROM );
+ if( err )
+ {
+ break;
+ }
+
+ if( false == isValidDimmType(memTypeSeeprom) )
+ {
+ break;
+ }
+
+ // Read the Basic Memory Type from PNOR
+ uint8_t memTypePnor(MEM_TYPE_INVALID);
+ err = getMemType( memTypePnor,
+ i_target,
+ VPD::PNOR );
if( err )
{
break;
}
- if( false == isValidDimmType(memType) )
+ if( false == isValidDimmType(memTypePnor) )
+ {
+ break;
+ }
+
+ if (memTypeSeeprom != memTypePnor)
{
break;
}
@@ -2386,7 +2406,7 @@ errlHndl_t cmpPnorToSeeprom ( TARGETING::Target * i_target,
// Get the keyword size
const KeywordData* entry = NULL;
err = getKeywordEntry( i_keyword,
- memType,
+ memTypePnor,
i_target,
entry );
if( err )
@@ -2403,7 +2423,7 @@ errlHndl_t cmpPnorToSeeprom ( TARGETING::Target * i_target,
dataPnor,
sizePnor,
i_target,
- memType,
+ memTypePnor,
VPD::PNOR );
if( err )
{
@@ -2420,7 +2440,7 @@ errlHndl_t cmpPnorToSeeprom ( TARGETING::Target * i_target,
dataSeeprom,
sizeSeeprom,
i_target,
- memType,
+ memTypePnor,
VPD::SEEPROM );
if( err )
{
OpenPOWER on IntegriCloud