summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2014-10-08 16:40:36 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-10-31 17:20:50 -0500
commitc57773ccd7a7368342565d109ab10138cee7626f (patch)
tree8ac91aa53bac13e77ec8ce42399b9fd0f3dee9df /src/include
parentc864e50f89bfeb102a2edca45825e6e02cf6ba56 (diff)
downloadtalos-hostboot-c57773ccd7a7368342565d109ab10138cee7626f.tar.gz
talos-hostboot-c57773ccd7a7368342565d109ab10138cee7626f.zip
Add OCC image pnor support
The OCC pnor section only exists in openPOWER Change-Id: I5d5b7d03db681aa2e9b129cc63b768aaf5a15064 RTC: 116297 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13893 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/usr/hwpf/hwp/occ/occ.H5
-rw-r--r--src/include/usr/pnor/pnorif.H1
-rw-r--r--src/include/usr/util/util_reasoncodes.H19
-rw-r--r--src/include/usr/util/utillidmgr.H48
4 files changed, 62 insertions, 11 deletions
diff --git a/src/include/usr/hwpf/hwp/occ/occ.H b/src/include/usr/hwpf/hwp/occ/occ.H
index a94cceb14..aa00823d5 100644
--- a/src/include/usr/hwpf/hwp/occ/occ.H
+++ b/src/include/usr/hwpf/hwp/occ/occ.H
@@ -5,7 +5,9 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* COPYRIGHT International Business Machines Corp. 2013,2014 */
+/* Contributors Listed Below - COPYRIGHT 2013,2014 */
+/* [+] International Business Machines Corp. */
+/* */
/* */
/* Licensed under the Apache License, Version 2.0 (the "License"); */
/* you may not use this file except in compliance with the License. */
@@ -37,7 +39,6 @@ namespace HBOCC {
enum
{
OccHostDataVersion = 1,
- OCC_LIDID = 0x81e00430,
OCC_IBSCOM_RANGE_IN_MB = MEGABYTE,
};
diff --git a/src/include/usr/pnor/pnorif.H b/src/include/usr/pnor/pnorif.H
index 6aed66234..971a399c0 100644
--- a/src/include/usr/pnor/pnorif.H
+++ b/src/include/usr/pnor/pnorif.H
@@ -56,6 +56,7 @@ enum SectionId
CENTAUR_VPD, /**< Centaur VPD */
ATTR_OVER, /**< Attribute Override */
NVRAM, /**< Opal NVRAM */
+ OCC, /**< OCC lid */
TEST, /**< Scratch space for PNOR test cases */
NUM_SECTIONS, /**< Number of defined sections */
diff --git a/src/include/usr/util/util_reasoncodes.H b/src/include/usr/util/util_reasoncodes.H
index 6825c8f6b..7f6ab0c1d 100644
--- a/src/include/usr/util/util_reasoncodes.H
+++ b/src/include/usr/util/util_reasoncodes.H
@@ -5,7 +5,9 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012,2014 */
+/* Contributors Listed Below - COPYRIGHT 2012,2014 */
+/* [+] International Business Machines Corp. */
+/* */
/* */
/* Licensed under the Apache License, Version 2.0 (the "License"); */
/* you may not use this file except in compliance with the License. */
@@ -40,13 +42,14 @@ namespace Util
enum ReasonCode
{
- UTIL_ERC_NONE = UTIL_COMP_ID | 0x01,
- UTIL_ERC_BAD_PTR = UTIL_COMP_ID | 0x02,
- UTIL_ERC_EOF = UTIL_COMP_ID | 0x03,
- UTIL_LIDMGR_RC_FAIL = UTIL_COMP_ID | 0x04,
- UTIL_LIDMGR_INVAL_DATA = UTIL_COMP_ID | 0x05,
- UTIL_LIDMGR_INVAL_SIZE = UTIL_COMP_ID | 0x06,
- UTIL_LIDMGR_UNSUP_MSG = UTIL_COMP_ID | 0x07,
+ UTIL_ERC_NONE = UTIL_COMP_ID | 0x01,
+ UTIL_ERC_BAD_PTR = UTIL_COMP_ID | 0x02,
+ UTIL_ERC_EOF = UTIL_COMP_ID | 0x03,
+ UTIL_LIDMGR_RC_FAIL = UTIL_COMP_ID | 0x04,
+ UTIL_LIDMGR_INVAL_DATA = UTIL_COMP_ID | 0x05,
+ UTIL_LIDMGR_INVAL_SIZE = UTIL_COMP_ID | 0x06,
+ UTIL_LIDMGR_UNSUP_MSG = UTIL_COMP_ID | 0x07,
+ UTIL_LIDMGR_INVAL_SIZE_PNOR = UTIL_COMP_ID | 0x08,
};
};
diff --git a/src/include/usr/util/utillidmgr.H b/src/include/usr/util/utillidmgr.H
index 5a726add6..624f040f3 100644
--- a/src/include/usr/util/utillidmgr.H
+++ b/src/include/usr/util/utillidmgr.H
@@ -5,7 +5,9 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* COPYRIGHT International Business Machines Corp. 2013,2014 */
+/* Contributors Listed Below - COPYRIGHT 2013,2014 */
+/* [+] International Business Machines Corp. */
+/* */
/* */
/* Licensed under the Apache License, Version 2.0 (the "License"); */
/* you may not use this file except in compliance with the License. */
@@ -35,8 +37,18 @@
#include <mbox/mboxif.H>
#include <errl/errlentry.H>
#include <sys/msg.h>
+#include <pnor/pnorif.H>
+namespace Util
+{
+// Lid id's
+enum LidId
+{
+ TEST_LIDID = 0x00000111,
+ OCC_LIDID = 0x81e00430,
+};
+}
class UtilLidMgr
{
@@ -305,6 +317,19 @@ class UtilLidMgr
* @brief Pointer to message queue
*/
msg_q_t iv_HbMsgQ;
+
+ /**
+ * @brief search lidToPnor array for the pnor section for the given lid
+ * lidToPnor array does not includes the ext img section
+ *
+ * @param[in] i_lidId - provide lid id to search for
+ * @param[out] o_lidPnorInfo - pnor section that the lid is in
+ *
+ * @return bool - True if lid is in a section, false otherwise
+ */
+ bool getLidPnorSection(uint32_t i_lidId,
+ PNOR::SectionInfo_t &o_lidPnorInfo);
+
#else // __HOSTBOOT_RUNTIME
/**
@@ -339,6 +364,27 @@ class UtilLidMgr
*/
size_t iv_lidSize;
+ /**
+ * @brief pnor section (other than ext img) current lid is in
+ * PNOR::INVALID_SECTION if not in other sections
+ */
+ PNOR::SectionInfo_t iv_lidPnorInfo;
+
+ /**
+ * @brief value indicating if lid is in its own pnor partition
+ *
+ */
+ bool iv_isLidInPnor;
+
+ /**
+ * @brief value indicating if a fsp exists
+ */
+ bool iv_spBaseServicesEnabled;
+
+ /**
+ * @brief value indicating if lid is in extended image
+ */
+ bool iv_isLidInVFS;
};
OpenPOWER on IntegriCloud