summaryrefslogtreecommitdiffstats
path: root/src/usr/htmgt/htmgt_utility.H
diff options
context:
space:
mode:
authorChris Cain <cjcain@us.ibm.com>2016-05-24 15:28:27 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2016-05-25 18:38:01 -0400
commit834bccc4c031d20d7c4b56f9d10b1cb91cc617db (patch)
treee24b640c5be1c649484502fdf094757402d95eca /src/usr/htmgt/htmgt_utility.H
parentea83d6f50bdf030f18fab0e03bdf77183d2ba41a (diff)
downloadtalos-hostboot-834bccc4c031d20d7c4b56f9d10b1cb91cc617db.tar.gz
talos-hostboot-834bccc4c031d20d7c4b56f9d10b1cb91cc617db.zip
Add internal flag support to prevent OCC resets and query pstate tables
Change-Id: Ifd30c8bf36aa82c168afa3e34de7fd8f4d4e4cab RTC: 152379 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24987 Tested-by: Jenkins Server Reviewed-by: Martha Broyles <mbroyles@us.ibm.com> Tested-by: FSP CI Jenkins Reviewed-by: Sheldon R. Bailey <baileysh@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/htmgt/htmgt_utility.H')
-rw-r--r--src/usr/htmgt/htmgt_utility.H51
1 files changed, 50 insertions, 1 deletions
diff --git a/src/usr/htmgt/htmgt_utility.H b/src/usr/htmgt/htmgt_utility.H
index ad93a0575..d0c70ec20 100644
--- a/src/usr/htmgt/htmgt_utility.H
+++ b/src/usr/htmgt/htmgt_utility.H
@@ -101,6 +101,20 @@ namespace HTMGT
};
extern uint32_t G_debug_trace;
+ enum internalFlagTypes
+ {
+ FLAG_HALT_ON_OCC_SRC = 0x00800000, // Prevent resets after SRC
+ FLAG_HALT_ON_RESET_FAIL = 0x00000100, // Stop additional resets
+ FLAG_EXT_RESET_DISABLED = 0x00000080, // Ignore opal-prd/BMC resets
+ FLAG_DISABLE_MEM_THROTTLE = 0x00000040,
+ FLAG_IGNORE_OCC_STATE = 0x00000020,
+ FLAG_HOLD_OCCS_IN_RESET = 0x00000010, // Ignore load/start status
+ FLAG_LOAD_REQUEST_DISABLED = 0x00000008,
+ FLAG_TERMINATE_ON_ERROR = 0x00000004,
+ FLAG_RESET_DISABLED = 0x00000002, // Ignore any OCC reset
+ FLAG_EXTERNAL_OVERRIDE = 0x00000001
+ };
+
enum tmgtElogSubsecTypes
{
// Values selected to be common with FSP from tmgt_elog_parser.H
@@ -123,11 +137,20 @@ namespace HTMGT
enum htmgtPassThruCmds
{
PASSTHRU_OCC_STATUS = 0x01,
+ PASSTHRU_INTERNAL_FLAG = 0x02, // get or set internal flags
PASSTHRU_SEND_OCC_COMMAND = 0x03, // send raw OCC command
PASSTHRU_CLEAR_RESET_COUNTS = 0x04,
PASSTHRU_EXIT_SAFE_MODE = 0x05,
PASSTHRU_GENERATE_MFG_PSTATE = 0x81,
- PASSTHRU_LOAD_PSTATE = 0x82
+ PASSTHRU_LOAD_PSTATE = 0x82,
+ PASSTHRU_DUMP_ATTRIBUTE = 0x83
+ };
+
+ enum htmgtAttrName
+ {
+ ATTR_PSTATE = 0x01,
+ ATTR_PSTATE_MFG = 0x02,
+ ATTR_RAW = 0xFF
};
/**
@@ -187,5 +210,31 @@ namespace HTMGT
const char *state_string(const uint8_t i_state);
+ /**
+ * @brief Retrieve the internal flag (attribute) value
+ *
+ * @return the flag value (on error will return 0)
+ */
+ uint32_t get_int_flags();
+
+
+ /**
+ * @brief Update internal flags to specified value
+ *
+ * @param[in] i_value - new value for internal flags
+ */
+ void set_int_flags(const uint32_t i_value);
+
+
+ /**
+ * @brief Query if specified internal flag(s) are set
+ *
+ * @param[in] i_mask - bits to query the internalFlags
+ *
+ * @return true if all of the bits of i_mask are set in internalFlags
+ */
+ bool int_flags_set(const uint32_t i_mask);
+
+
} // end namespace
#endif
OpenPOWER on IntegriCloud