summaryrefslogtreecommitdiffstats
path: root/src/usr/runtime
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2017-12-07 10:01:48 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-12-12 17:50:35 -0500
commit92466e69168a996395f214001a90c7c7cb70b0bf (patch)
tree998cf1dd892a5715cf6af288508faa1d30601d64 /src/usr/runtime
parenta1f431ee3a68d366851b276c5a022a769527a26c (diff)
downloadtalos-hostboot-92466e69168a996395f214001a90c7c7cb70b0bf.tar.gz
talos-hostboot-92466e69168a996395f214001a90c7c7cb70b0bf.zip
Modify how POWERVM is processed in the MCL manager
POWERVM is verified and loaded to its final location before the MCL processing occurs. Therefore we only need to get the lid sizes and create HDAT entries Additionally it was found that sorting the CompInfoMap resulted to direct key lookup to not work for the POWERVM component, so removed it. Change-Id: I5008a1eaa01e0910743fdb11fa73b73a26eccd63 RTC: 181900 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50644 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/runtime')
-rw-r--r--src/usr/runtime/preverifiedlidmgr.C22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/usr/runtime/preverifiedlidmgr.C b/src/usr/runtime/preverifiedlidmgr.C
index b63d565f5..e4ec082ac 100644
--- a/src/usr/runtime/preverifiedlidmgr.C
+++ b/src/usr/runtime/preverifiedlidmgr.C
@@ -310,7 +310,6 @@ errlHndl_t PreVerifiedLidMgr::_loadFromMCL(const uint32_t i_lidId,
if (i_isPhypComp)
{
cv_pResvMemInfo = &cv_phypResvMemInfo;
- TRACFCOMP( g_trac_runtime, "PreVerifiedLidMgr::_loadFromMCL - Loading Special Component PHYP");
}
do {
@@ -345,12 +344,23 @@ errlHndl_t PreVerifiedLidMgr::_loadFromMCL(const uint32_t i_lidId,
break;
}
- // Load image into HB reserved memory
- l_errl = loadImage(i_addr, i_size);
- if(l_errl)
+ // Phyp component has already been loaded and verified before MCL mgr
+ // Simply update HB reserved prev size in Phyp component case
+ if (i_isPhypComp)
{
- TRACFCOMP( g_trac_runtime, ERR_MRK"PreVerifiedLidMgr::_loadFromMCL - Load Image failed");
- break;
+ // align previous size to page size to ensure starting addresses are
+ // page aligned.
+ cv_pResvMemInfo->prevSize = ALIGN_PAGE(i_size);
+ }
+ else
+ {
+ // Load image into HB reserved memory
+ l_errl = loadImage(i_addr, i_size);
+ if(l_errl)
+ {
+ TRACFCOMP( g_trac_runtime, ERR_MRK"PreVerifiedLidMgr::_loadFromMCL - Load Image failed");
+ break;
+ }
}
// Indicate the lid has been loaded
OpenPOWER on IntegriCloud