summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/start_payload
diff options
context:
space:
mode:
authorPatrick Williams <iawillia@us.ibm.com>2014-01-19 22:06:28 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-02-11 15:30:46 -0600
commitb7733595ec491960fa6c97f5ad1fb2c47ac5592c (patch)
treef4a169250428db5411fb42e2f9d7a5f3dd96b927 /src/usr/hwpf/hwp/start_payload
parent18bdf83d7705bd3c519b195ce095e39181214435 (diff)
downloadtalos-hostboot-b7733595ec491960fa6c97f5ad1fb2c47ac5592c.tar.gz
talos-hostboot-b7733595ec491960fa6c97f5ad1fb2c47ac5592c.zip
HBRT: Build small devtree for HDAT-based Sapphire.
Change-Id: I06fb4c6d07a82146b19a38457d2114569c53a571 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8147 Tested-by: Jenkins Server 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.C25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/usr/hwpf/hwp/start_payload/start_payload.C b/src/usr/hwpf/hwp/start_payload/start_payload.C
index e83e66328..c89aa30bc 100644
--- a/src/usr/hwpf/hwp/start_payload/start_payload.C
+++ b/src/usr/hwpf/hwp/start_payload/start_payload.C
@@ -309,6 +309,31 @@ void* call_host_runtime_setup( void *io_pArgs )
break;
}
}
+ else if( is_sapphire_load() )
+ {
+ // Find area in HDAT to load devtree.
+ uint64_t l_dtAddr = 0;
+ size_t l_dtSize = 0;
+ l_err = RUNTIME::get_host_data_section(RUNTIME::HSVC_SYSTEM_DATA,
+ 0, l_dtAddr, l_dtSize);
+
+ if ( l_err )
+ {
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "Could not find system data area for Devtree.");
+ break;
+ }
+
+ l_err = DEVTREE::build_flatdevtree(l_dtAddr, l_dtSize, true);
+
+ if ( l_err )
+ {
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "Failed to build small dev-tree for HDAT.");
+ break;
+ }
+
+ }
else if( TARGETING::PAYLOAD_KIND_PHYP == payload_kind )
{
//If PHYP then clear out the PORE BARs
OpenPOWER on IntegriCloud