diff options
author | Corey Swenson <cswenson@us.ibm.com> | 2015-05-15 10:30:04 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2015-07-17 09:50:29 -0500 |
commit | a34452451070830c8f9149100a8a8523220527a9 (patch) | |
tree | ceeef38401d1c3eed596b1c3e1bb705570b75892 /src/usr/hwpf/hwp/start_payload | |
parent | 5d1ff7656b2b1b8e50d9f30b180ff3e10b3adf3e (diff) | |
download | talos-hostboot-a34452451070830c8f9149100a8a8523220527a9.tar.gz talos-hostboot-a34452451070830c8f9149100a8a8523220527a9.zip |
Fix for VPD issues in golden and mfg boot
Change-Id: I86bed87da21ec9037c7b828874052066e4ec5f4a
RTC: 128100
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/17821
Tested-by: Jenkins Server
Tested-by: Jenkins OP Build CI
Tested-by: Jenkins OP HW
Reviewed-by: William H. Schwartz <whs@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/start_payload')
-rw-r--r-- | src/usr/hwpf/hwp/start_payload/start_payload.C | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/src/usr/hwpf/hwp/start_payload/start_payload.C b/src/usr/hwpf/hwp/start_payload/start_payload.C index 12f62a331..c582696a0 100644 --- a/src/usr/hwpf/hwp/start_payload/start_payload.C +++ b/src/usr/hwpf/hwp/start_payload/start_payload.C @@ -343,6 +343,14 @@ void* call_host_runtime_setup( void *io_pArgs ) if( is_sapphire_load() && (!INITSERVICE::spBaseServicesEnabled()) ) { + // Update the VPD switches for golden side boot + // Must do this before building the devtree + l_err = VPD::goldenSwitchUpdate(); + if ( l_err ) + { + break; + } + // Write the devtree out in Sapphire mode when SP Base Services not // enabled l_err = DEVTREE::build_flatdevtree(); @@ -354,28 +362,14 @@ void* call_host_runtime_setup( void *io_pArgs ) break; } -#ifdef CONFIG_PNOR_TWO_SIDE_SUPPORT - // We also need to wipe the cache out after booting from the - // golden side of pnor - PNOR::SideInfo_t l_pnorInfo; - l_err = PNOR::getSideInfo( PNOR::WORKING, l_pnorInfo ); - if( l_err ) - { - // commit the error but keep going - errlCommit(l_err, ISTEP_COMP_ID); - // force the caches to get wiped out just in case - l_pnorInfo.isGolden = true; - } - if( l_pnorInfo.isGolden ) + // Invalidate the VPD cache for golden side boot + // Also invalidate in manufacturing mode + // Must do this after building the devtree + l_err = VPD::goldenCacheInvalidate(); + if ( l_err ) { - // Invalidate the VPD Caches for all targets - l_err = VPD::invalidateAllPnorCaches(true); - if (l_err) - { - break; - } + break; } -#endif } else if( is_sapphire_load() ) |