summaryrefslogtreecommitdiffstats
path: root/src/usr/runtime
diff options
context:
space:
mode:
authorMatt Derksen <mderkse1@us.ibm.com>2018-07-16 16:57:08 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-07-23 09:39:24 -0500
commit78c7928126a9ece9cd466be1e0598bf3f082b977 (patch)
tree3f24c2c76e59c66c86d7fe89ec875aab5ad6daf5 /src/usr/runtime
parent5ce2333d7d4ac137d389ed5c1ce58795d791ff01 (diff)
downloadtalos-hostboot-78c7928126a9ece9cd466be1e0598bf3f082b977.tar.gz
talos-hostboot-78c7928126a9ece9cd466be1e0598bf3f082b977.zip
Only store HRMOR value on primary node
There is a single field in HDAT where Hostboot fills in an address where PHYP will then write the new HRMOR value any time it changes. The problem is that the independent Hostboot instance in each node is writing the same field with their own node-relative address. There is only 1 field so the last node in will win. Then on the mpipl we won't be able to find it. Change-Id: I18f64816f20b0a3fc2951dff457d9511ca27e1d2 CQ:SW438101 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/62763 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Richard Ward <rward15@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> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@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.C18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/usr/runtime/populate_hbruntime.C b/src/usr/runtime/populate_hbruntime.C
index 5b887022c..28fab3e7d 100644
--- a/src/usr/runtime/populate_hbruntime.C
+++ b/src/usr/runtime/populate_hbruntime.C
@@ -556,14 +556,6 @@ errlHndl_t fill_RsvMem_hbData(uint64_t & io_start_address,
ALIGN_PAGE(l_hbTOC.entry[l_hbTOC.total_entries].size);
l_hbTOC.total_entries++;
- // Fill in HYPCOMM size
- l_hbTOC.entry[l_hbTOC.total_entries].label = Util::HBRT_MEM_LABEL_HYPCOMM;
- l_hbTOC.entry[l_hbTOC.total_entries].offset = 0;
- l_hbTOC.entry[l_hbTOC.total_entries].size = sizeof(hbHypCommArea_t);
- l_totalSectionSize +=
- ALIGN_PAGE(l_hbTOC.entry[l_hbTOC.total_entries].size);
- l_hbTOC.total_entries++;
-
// Fill in VPD_XXXX sizes (if there are any)
VPD::OverrideRsvMemMap_t l_vpdOverrides;
VPD::getListOfOverrideSections( l_vpdOverrides );
@@ -579,7 +571,7 @@ errlHndl_t fill_RsvMem_hbData(uint64_t & io_start_address,
l_hbTOC.total_entries++;
}
- // Fill in the TRACEBUF only for Master Node
+ // Fill in the TRACEBUF & HYPCOMM only for Master Node
if(i_master_node == true )
{
// Fill in TRACEBUF size
@@ -589,6 +581,14 @@ errlHndl_t fill_RsvMem_hbData(uint64_t & io_start_address,
l_totalSectionSize +=
ALIGN_PAGE(l_hbTOC.entry[l_hbTOC.total_entries].size);
l_hbTOC.total_entries++;
+
+ // Fill in HYPCOMM size
+ l_hbTOC.entry[l_hbTOC.total_entries].label = Util::HBRT_MEM_LABEL_HYPCOMM;
+ l_hbTOC.entry[l_hbTOC.total_entries].offset = 0;
+ l_hbTOC.entry[l_hbTOC.total_entries].size = sizeof(hbHypCommArea_t);
+ l_totalSectionSize +=
+ ALIGN_PAGE(l_hbTOC.entry[l_hbTOC.total_entries].size);
+ l_hbTOC.total_entries++;
}
l_totalSectionSize += sizeof(l_hbTOC); // Add 4KB Table of Contents
OpenPOWER on IntegriCloud