summaryrefslogtreecommitdiffstats
path: root/src/include/usr/runtime/preverifiedlidmgr.H
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2017-09-27 16:22:04 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2017-11-01 16:17:58 -0400
commit89c19d7e3a5b6f2781636ca5373672f38d8f0a13 (patch)
tree009a08dbf556fcb21259ada013bc9d211d4a460d /src/include/usr/runtime/preverifiedlidmgr.H
parent141c67de2310692873ff1c3f977a1c6e5d4300ca (diff)
downloadtalos-hostboot-89c19d7e3a5b6f2781636ca5373672f38d8f0a13.tar.gz
talos-hostboot-89c19d7e3a5b6f2781636ca5373672f38d8f0a13.zip
Process Components in Master Container Lid
Change-Id: I31523494f462c88addb51973f605b2ed72674e97 RTC: 125304 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46840 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/include/usr/runtime/preverifiedlidmgr.H')
-rw-r--r--src/include/usr/runtime/preverifiedlidmgr.H33
1 files changed, 29 insertions, 4 deletions
diff --git a/src/include/usr/runtime/preverifiedlidmgr.H b/src/include/usr/runtime/preverifiedlidmgr.H
index ca096e5e1..185a0d24f 100644
--- a/src/include/usr/runtime/preverifiedlidmgr.H
+++ b/src/include/usr/runtime/preverifiedlidmgr.H
@@ -66,6 +66,24 @@ class PreVerifiedLidMgr
const uint64_t i_addr,
const size_t i_size);
+ /**
+ * @brief Load PNOR section into HB reserved memory
+ *
+ * @param[in] i_sec - PNOR section ID
+ * @param[in] i_addr - Virtual Address of PNOR section
+ * @param[in] i_size - Size of PNOR section
+ * @param[in] i_isPhypComp - Indicates if PHYP lids
+ * NOTE: PHYP lids go to address HRMOR - 4K
+ * @param[out] o_resvMemAddr - Mainstore address Lid was put in
+ *
+ * @return Error handle if error
+ */
+ static errlHndl_t loadFromMCL(const uint32_t i_lidId,
+ const uint64_t i_addr,
+ const size_t i_size,
+ const bool i_isPhypComp,
+ uint64_t &o_resvMemAddr);
+
protected:
/**
@@ -106,14 +124,20 @@ class PreVerifiedLidMgr
const uint64_t i_addr,
const size_t i_size);
+ /**
+ * @brief Internal implementation of loadFromMCL function.
+ */
+ errlHndl_t _loadFromMCL(const uint32_t i_lidId,
+ const uint64_t i_addr,
+ const size_t i_size,
+ const bool i_isPhypComp,
+ uint64_t &o_resvMemAddr);
+
// Private Members/Variables
// Cache the payload type
static TARGETING::PAYLOAD_KIND cv_payloadKind;
- // Bool to check if the first PHYP lid has been loaded or not.
- static bool cv_phypLidSeen;
-
// Collection of data needed for Hostboot Reserved Memory
struct ResvMemInfo
{
@@ -131,7 +155,7 @@ class PreVerifiedLidMgr
// Collection of data needed for Hostboot Reserved Memory
static ResvMemInfo cv_resvMemInfo;
- // Location for PHYP lids to go.
+ // Collection of data needed for PHYP's placement into HB reserved memory
static ResvMemInfo cv_phypResvMemInfo;
// Map of what lids have been loaded already.
@@ -197,6 +221,7 @@ class PreVerifiedLidMgr
// Allow test cases to have direct access
friend class PreVerifiedLidMgrTest;
+ friend class MasterContainerLidMgrTest;
};
OpenPOWER on IntegriCloud