summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/build_winkle_images
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2013-11-25 23:38:56 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-12-09 12:08:54 -0600
commit9ff9e978ad4124c8fcd94339aa40f3a9d3a4f40a (patch)
tree613f16c906429a77b09081840ed34100c16235a2 /src/usr/hwpf/hwp/build_winkle_images
parent5ec9d6332a0b9c91b133690ab356dc4052a5e291 (diff)
downloadtalos-hostboot-9ff9e978ad4124c8fcd94339aa40f3a9d3a4f40a.tar.gz
talos-hostboot-9ff9e978ad4124c8fcd94339aa40f3a9d3a4f40a.zip
Increment base memory address by node
Change-Id: I524a9814cfc9a2b0d831ab31f9ed63e008ffa304 CQ: SW236248 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7429 Tested-by: Jenkins Server Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/build_winkle_images')
-rw-r--r--src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C b/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C
index 739533493..962d097c8 100644
--- a/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C
+++ b/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C
@@ -361,7 +361,6 @@ void* call_host_build_winkle( void *io_pArgs )
uint32_t l_poreSize = 0;
void *l_pRealMemBase = NULL;
void* l_pVirtMemBase = NULL;
- uint64_t l_memBase = VMM_HOMER_REGION_START_ADDR;
ISTEP_ERROR::IStepError l_StepError;
@@ -376,13 +375,21 @@ void* call_host_build_winkle( void *io_pArgs )
do {
+ // Get the node-offset for our instance by looking at the HRMOR
+ uint64_t l_memBase = cpu_spr_value(CPU_SPR_HRMOR);
+ // mask off the secureboot offset
+ l_memBase = 0xFFFFF00000000000 & l_memBase;
+
+ // Now offset up to our hardcoded region
+ l_memBase += VMM_HOMER_REGION_START_ADDR;
+
// Get a chunk of real memory big enough to store all the possible
// SLW images.
assert(VMM_HOMER_REGION_SIZE <= THIRTYTWO_GB,
"host_build_winkle: Unsupported HOMER Region size");
- //If running Sapphire need to place this at the top of memory
+ //If running Sapphire need to place this at the top of memory instead
if(is_sapphire_load())
{
l_memBase = get_top_mem_addr();
OpenPOWER on IntegriCloud