diff options
author | Stephen Cprek <smcprek@us.ibm.com> | 2014-10-08 16:40:36 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-10-31 17:20:50 -0500 |
commit | c57773ccd7a7368342565d109ab10138cee7626f (patch) | |
tree | 8ac91aa53bac13e77ec8ce42399b9fd0f3dee9df /src/include/usr/util | |
parent | c864e50f89bfeb102a2edca45825e6e02cf6ba56 (diff) | |
download | talos-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/usr/util')
-rw-r--r-- | src/include/usr/util/util_reasoncodes.H | 19 | ||||
-rw-r--r-- | src/include/usr/util/utillidmgr.H | 48 |
2 files changed, 58 insertions, 9 deletions
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; }; |