diff options
author | Patrick Williams <iawillia@us.ibm.com> | 2014-03-04 16:39:03 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-03-07 14:19:58 -0600 |
commit | 4083a7cd7829d52121eb26bf41a12d8d298d2062 (patch) | |
tree | 11b1545f29f321b196a003f4fe2d7f37fed5452f | |
parent | b76c4b13f29ffc4295706a00c97ea3ee0fd03578 (diff) | |
download | blackbird-hostboot-4083a7cd7829d52121eb26bf41a12d8d298d2062.tar.gz blackbird-hostboot-4083a7cd7829d52121eb26bf41a12d8d298d2062.zip |
Remove excess devtree nodes from HDAT-based mini-devtree.
Change-Id: I52c8b12abfed656754150051965422b8aad9f273
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/9296
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
-rw-r--r-- | src/usr/devtree/bld_devtree.C | 24 | ||||
-rw-r--r-- | src/usr/devtree/devtree.C | 4 |
2 files changed, 24 insertions, 4 deletions
diff --git a/src/usr/devtree/bld_devtree.C b/src/usr/devtree/bld_devtree.C index b60190ccb..16446a424 100644 --- a/src/usr/devtree/bld_devtree.C +++ b/src/usr/devtree/bld_devtree.C @@ -588,6 +588,25 @@ void load_hbrt_image(uint64_t& io_address) } } +errlHndl_t bld_fdt_system(devTree * i_dt, bool i_smallTree) +{ + // Nothing to do for small trees currently. + if (i_smallTree) { return NULL; } + + errlHndl_t errhdl = NULL; + + dtOffset_t rootNode = i_dt->findNode("/"); + + /* Add compatibility node */ + i_dt->addPropertyString(rootNode, "compatible", "ibm,powernv"); + + /* Add system model node */ + //TODO RTC:88056 - store model type in attributes? + i_dt->addPropertyString(rootNode, "model", "rhesus"); + + return errhdl; +} + errlHndl_t bld_fdt_cpu(devTree * i_dt, std::vector<uint64_t>& o_homerRegions, @@ -900,6 +919,11 @@ errlHndl_t build_flatdevtree( uint64_t i_dtAddr, size_t i_dtSize, TRACFCOMP( g_trac_devtree, "---devtree init---" ); dt->initialize(i_dtAddr, i_dtSize, devTreeVirtual); + errhdl = bld_fdt_system(dt, i_smallTree); + if (errhdl) + { + break; + } std::vector<uint64_t> l_homerRegions; diff --git a/src/usr/devtree/devtree.C b/src/usr/devtree/devtree.C index 1619f8672..4fd8d317b 100644 --- a/src/usr/devtree/devtree.C +++ b/src/usr/devtree/devtree.C @@ -105,10 +105,6 @@ void devTree::initialize(uint64_t i_addr, size_t i_maxSize, bool i_virtual) dtOffset_t rootNode = findNode("/"); addPropertyCell32(rootNode, "#address-cells", 2); addPropertyCell32(rootNode, "#size-cells", 2); - addPropertyString(rootNode, "compatible", "ibm,powernv"); - - //TODO RTC:88056 - store model type in attributes? - addPropertyString(rootNode, "model", "rhesus"); //"Get" the phandle -- this will add one to root node as //it doesn't already have one |