summaryrefslogtreecommitdiffstats
path: root/src/usr/targeting/runtime
diff options
context:
space:
mode:
authorMatt Derksen <mderkse1@us.ibm.com>2017-05-30 15:25:20 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-06-12 11:42:37 -0400
commit94010840e9551be4711ac135c9855b7f0cecb3a3 (patch)
tree2398d28f8123c7f262160e6b87f993756be98eb7 /src/usr/targeting/runtime
parent1c2fcebe0a3fde901e9a621a6f7362fb2cf1d200 (diff)
downloadtalos-hostboot-94010840e9551be4711ac135c9855b7f0cecb3a3.tar.gz
talos-hostboot-94010840e9551be4711ac135c9855b7f0cecb3a3.zip
Consolidating HBRT reserved memory (ATTR,ATTR_OVERRIDE,VPD) into a single entry
Change-Id: I9fc5846d9901ac79c59bb149b8f55b5c7ca2fa73 RTC: 171863 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41141 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/targeting/runtime')
-rw-r--r--src/usr/targeting/runtime/attrPlatOverride_rt.C29
-rw-r--r--src/usr/targeting/runtime/attrrp_rt.C5
-rw-r--r--src/usr/targeting/runtime/test/testtargeting.H4
3 files changed, 20 insertions, 18 deletions
diff --git a/src/usr/targeting/runtime/attrPlatOverride_rt.C b/src/usr/targeting/runtime/attrPlatOverride_rt.C
index 3c5ebb8ae..a8bf17f94 100644
--- a/src/usr/targeting/runtime/attrPlatOverride_rt.C
+++ b/src/usr/targeting/runtime/attrPlatOverride_rt.C
@@ -35,6 +35,8 @@
#include <secureboot/service.H>
#include <targeting/common/targreasoncodes.H>
#include <devicefw/userif.H>
+#include <util/runtime/util_rt.H>
+
using namespace TARGETING;
@@ -129,34 +131,29 @@ void applyTempOverrides()
bool l_usingStash = false;
// Get a pointer to the reserved memory where HB
- // saved the overrides during boot
- uint64_t l_overAddr = 0;
- uint8_t* l_overPtr = nullptr;
- if( g_hostInterfaces != NULL &&
- g_hostInterfaces->get_reserved_mem )
- {
- l_overAddr = g_hostInterfaces
- ->get_reserved_mem("ibm,hbrt-targetoverride-image",0);
- if( l_overAddr != 0 )
- {
- TRACFCOMP(g_trac_targeting, "Overrides found at %.16X", l_overAddr );
- l_overPtr = reinterpret_cast<uint8_t*>(l_overAddr);
- }
- }
+ // saved the overrides during boot
+ uint64_t l_overAttrSize = 0;
+ uint64_t l_overAddr = hb_get_rt_rsvd_mem(HBRT_MEM_LABEL_ATTROVER,
+ 0, l_overAttrSize);
+
// Having no overrides is a normal thing
- if( l_overPtr == nullptr )
+ if( (l_overAddr == 0) )
{
TRACFCOMP(g_trac_targeting, "No Overrides found" );
TRACFCOMP(g_trac_targeting, EXIT_MRK"applyTempOverrides");
return;
}
+ else
+ {
+ TRACFCOMP(g_trac_targeting, "Overrides found at %.16llX", l_overAddr );
+ }
// Use a faux PNOR Section that is associated
// with the data in mainstore
PNOR::SectionInfo_t l_info;
l_info.vaddr = l_overAddr;
- l_info.size = 64*KILOBYTE; //@fixme-RTC:171863-use real size
+ l_info.size = l_overAttrSize;
l_info.id = PNOR::ATTR_TMP;
l_info.name = "HBRT Overrides";
diff --git a/src/usr/targeting/runtime/attrrp_rt.C b/src/usr/targeting/runtime/attrrp_rt.C
index 4f323e699..857b58fd0 100644
--- a/src/usr/targeting/runtime/attrrp_rt.C
+++ b/src/usr/targeting/runtime/attrrp_rt.C
@@ -29,6 +29,7 @@
#include <errl/errlentry.H>
#include <targeting/common/targreasoncodes.H>
#include <targeting/targplatreasoncodes.H>
+#include <util/runtime/util_rt.H>
#include "../attrrp_common.C"
@@ -43,10 +44,10 @@ namespace TARGETING
do
{
+ uint64_t attr_size = 0;
TargetingHeader* l_header =
reinterpret_cast<TargetingHeader*>(
- g_hostInterfaces->
- get_reserved_mem(HBRT_RSVD_MEM__ATTRIBUTES,0));
+ hb_get_rt_rsvd_mem(HBRT_MEM_LABEL_ATTR,0,attr_size));
if ((NULL == l_header) ||
(l_header->eyeCatcher != PNOR_TARG_EYE_CATCHER))
diff --git a/src/usr/targeting/runtime/test/testtargeting.H b/src/usr/targeting/runtime/test/testtargeting.H
index 99c0fbbb4..db9c74415 100644
--- a/src/usr/targeting/runtime/test/testtargeting.H
+++ b/src/usr/targeting/runtime/test/testtargeting.H
@@ -126,6 +126,8 @@ class TargetingTestSuite : public CxxTest::TestSuite
{
using namespace TARGETING;
TRACFCOMP(g_trac_targeting,"testIplOverrides");
+#if 0
+// @TODO RTC 144077 - rt_get_targ_override() no longer sets attribute up
//See rt_get_targ_override() for setup details about setting
// SYSTEM:ATTR_SCRATCH_INT32_1 = -99
@@ -146,8 +148,10 @@ class TargetingTestSuite : public CxxTest::TestSuite
TS_FAIL("testIplOverrides> SCRATCH_INT32_1=%d, expected %d", l_val, -99 );
}
}
+#endif
}
+
void testApplyAttrOverrides()
{
using namespace TARGETING;
OpenPOWER on IntegriCloud