From ae4fd75edc4a363f667a40d3c776493b5c9b0983 Mon Sep 17 00:00:00 2001 From: Corey Swenson Date: Thu, 9 Feb 2017 21:19:33 -0600 Subject: Add attribute for HDAT HB Reserved Memory number-of-sections Change-Id: Iaa4e93e5dcb838e16c44666493504258587658bc RTC:169102 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/36259 Tested-by: Jenkins Server Reviewed-by: Martin Gloff Tested-by: Jenkins OP Build CI Tested-by: FSP CI Jenkins Reviewed-by: Christian R. Geddes Reviewed-by: Daniel M. Crowell --- src/usr/isteps/istep16/call_host_ipl_complete.C | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'src/usr/isteps/istep16') diff --git a/src/usr/isteps/istep16/call_host_ipl_complete.C b/src/usr/isteps/istep16/call_host_ipl_complete.C index 9c25e00a5..30857d73c 100644 --- a/src/usr/isteps/istep16/call_host_ipl_complete.C +++ b/src/usr/isteps/istep16/call_host_ipl_complete.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2016 */ +/* Contributors Listed Below - COPYRIGHT 2015,2017 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -70,27 +70,34 @@ void* call_host_ipl_complete (void *io_pArgs) TARGETING::targetService().getTopLevelTarget( sys ); assert(sys != NULL); - // Set number of pointer pairs for HDAT + + // Set number of pointer pairs for HDAT HB RESERVED MEM //@TODO RTC:142908 Support multiple nodes in HBRT const uint32_t NUM_NODES = 1; - uint32_t l_numSections = NUM_NODES * HBRT_NUM_PTRS; - sys->setAttr(l_numSections); + uint32_t l_numRsvMemSections = NUM_NODES * HB_RSV_MEM_NUM_PTRS; + sys->setAttr(l_numRsvMemSections); + + + // Set number of pointer pairs for HDAT HBRT + //@TODO RTC:142908 Support multiple nodes in HBRT + uint32_t l_numHbrtSections = NUM_NODES * HBRT_NUM_PTRS; + sys->setAttr(l_numHbrtSections); uint64_t l_maxSecSize = VMM_RT_VPD_SIZE; - // Set max size of a section for HDAT + // Set max size of a HBRT section for HDAT TARGETING::ATTR_HDAT_HBRT_SECTION_SIZE_type l_secSize = {0}; uint64_t *l_p_secSize = reinterpret_cast(&l_secSize); uint32_t l_attrArraySize = sizeof(ATTR_HDAT_HBRT_SECTION_SIZE_type) / sizeof(l_secSize[0]); - assert(l_numSections <= l_attrArraySize); + assert(l_numHbrtSections <= l_attrArraySize); uint64_t l_attrSize = AttrRP::maxSize(); l_maxSecSize = (l_attrSize > l_maxSecSize) ? l_attrSize : l_maxSecSize; - for (uint32_t l_sect=0; (l_sect < l_numSections); l_sect++) + for (uint32_t l_sect=0; (l_sect < l_numHbrtSections); l_sect++) { l_p_secSize[l_sect] = l_maxSecSize; } -- cgit v1.2.1