summaryrefslogtreecommitdiffstats
path: root/src/usr/runtime
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2017-04-13 10:03:54 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-04-14 12:03:30 -0400
commita51371c0acfb4b3bb04d3a6058d9664abb696dde (patch)
treea88ed43eeee688723ddfc7450a49fadbedf60b35 /src/usr/runtime
parenta6100976bd9360ee8cec08c48004466f59eff235 (diff)
downloadtalos-hostboot-a51371c0acfb4b3bb04d3a6058d9664abb696dde.tar.gz
talos-hostboot-a51371c0acfb4b3bb04d3a6058d9664abb696dde.zip
Do not terminate IPL if HDAT doesn't have RHB sections
Add a check for the RHB sections in HDAT that will skip populating the data for HBRT in OPAL mode. Note - this means HBRT is not supported at all if this happens. Change-Id: I4b15d31b00087d63022f3b3a91471642c8918f21 CQ: SW386123 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39219 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> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/runtime')
-rw-r--r--src/usr/runtime/populate_hbruntime.C20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/usr/runtime/populate_hbruntime.C b/src/usr/runtime/populate_hbruntime.C
index 987c77647..b045a1cd7 100644
--- a/src/usr/runtime/populate_hbruntime.C
+++ b/src/usr/runtime/populate_hbruntime.C
@@ -484,6 +484,24 @@ errlHndl_t populate_HbRsvMem(uint64_t i_nodeId)
else if(TARGETING::is_sapphire_load())
{
+ //@fixme-RTC:169478-Remove this workaround once HDAT is ready
+ // Check to see if HDAT has the space we need allocated
+ // by looking for a 3rd instance
+ uint64_t l_rsvMemDataAddr = 0;
+ uint64_t l_rsvMemDataSizeMax = 0;
+ l_elog = RUNTIME::get_host_data_section( RUNTIME::RESERVED_MEM,
+ 3,
+ l_rsvMemDataAddr,
+ l_rsvMemDataSizeMax );
+ if(l_elog != nullptr)
+ {
+ TRACFCOMP( g_trac_runtime, "populate_HbRsvMem> HDAT doesn't have RHB allocated - HBRT is NOT supported here" );
+ delete l_elog;
+ l_elog = nullptr;
+ break;
+ }
+ //end workaround
+
// Opal data goes at top_of_mem
l_topMemAddr = TARGETING::get_top_mem_addr();
assert (l_topMemAddr != 0,
@@ -1226,7 +1244,7 @@ errlHndl_t populate_hbRuntimeData( void )
}
}
- if(!TARGETING::is_no_load())
+ if( !TARGETING::is_no_load() )
{
l_elog = populate_HbRsvMem(nodeid);
if(l_elog != nullptr)
OpenPOWER on IntegriCloud