diff options
author | Dean Sanner <dsanner@us.ibm.com> | 2017-08-03 07:19:00 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-08-26 22:02:15 -0400 |
commit | bc6c66c50ca468a5463d3e5232751c4382aa845f (patch) | |
tree | 287844db0520bec39715ef9d96f6b1ff90d9d4e6 /src/include/usr | |
parent | a1a37fff41cdb151942e6488bc1b700d2f775e13 (diff) | |
download | talos-hostboot-bc6c66c50ca468a5463d3e5232751c4382aa845f.tar.gz talos-hostboot-bc6c66c50ca468a5463d3e5232751c4382aa845f.zip |
Ability to dump single Target/ATTR via debug interface
Change-Id: I1122a57f6c3e8f47c0ab6a04309da76092e8da41
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/44279
Tested-by: Jenkins Server <pfd-jenkins+hostboot@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: Nicholas E. Bofferding <bofferdn@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Prachi Gupta <pragupta@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr')
-rw-r--r-- | src/include/usr/fapi2/plat_attr_override_sync.H | 21 | ||||
-rw-r--r-- | src/include/usr/initservice/mboxRegs.H | 1 | ||||
-rw-r--r-- | src/include/usr/isteps/spless_255list.H | 6 | ||||
-rw-r--r-- | src/include/usr/util/utilmbox_scratch.H | 5 |
4 files changed, 31 insertions, 2 deletions
diff --git a/src/include/usr/fapi2/plat_attr_override_sync.H b/src/include/usr/fapi2/plat_attr_override_sync.H index 4be640e33..07bcd5a9a 100644 --- a/src/include/usr/fapi2/plat_attr_override_sync.H +++ b/src/include/usr/fapi2/plat_attr_override_sync.H @@ -221,10 +221,16 @@ public: * This is called for ALL FAPI Attributes even if they are * directly backed into HB targeting * + * @param[in] i_type FAPI type to limit scope to, default none + * @param[in] i_fapiPos FAPI pos to limit scope to, default none + * @param[in] i_attrHash Attribute hash to limit scope to, default none + * * - The attribute is saved to be synced to debug interface (Cronus) * */ - void triggerAttrSync(); + void triggerAttrSync(fapi2::TargetType i_type = fapi2::TARGET_TYPE_NONE, + uint32_t i_fapiPos = TARGETING::FAPI_POS_NA, + uint32_t i_attrHash = 0x0); /** * @brief This function will clear all attribute overrides in effect. @@ -235,7 +241,7 @@ public: /** * @brief This function will allow the debug interface to set - * attribut overrides "dynamically" at any point in the IPL + * attribute overrides "dynamically" at any point in the IPL * between isteps. The debug interface is used to process * the attributes in the same format as the ATTR_TMP and ATTR_PERM * PNOR partition binary blobs @@ -244,6 +250,17 @@ public: void dynSetAttrOverrides(); /** + * @brief This function will allow the debug interface to dump a + * specific attribute from a given fapi target type/pos + * at any point in the IPL between isteps. The debug interface + * is used to process a simple request, and then dump the + * atrribute(s) back down the debug interface via same + * mechanism as triggerAttrSync + * + */ + void dynAttrGet(); + + /** * @brief This function actually sends the FAPI Sync tank attributes * across the debug interface */ diff --git a/src/include/usr/initservice/mboxRegs.H b/src/include/usr/initservice/mboxRegs.H index 90f639e38..a98cb9305 100644 --- a/src/include/usr/initservice/mboxRegs.H +++ b/src/include/usr/initservice/mboxRegs.H @@ -92,6 +92,7 @@ namespace SPLESS uint32_t allowAttrOverrides :1; //7 uint32_t reserved2 :24; //8:31 } PACKED; + // NOTE: Used for debug tool communication during Hostboot IPL }; // Mailbox Scratch Register 4 diff --git a/src/include/usr/isteps/spless_255list.H b/src/include/usr/isteps/spless_255list.H index 8eb69b7bd..074e898d5 100644 --- a/src/include/usr/isteps/spless_255list.H +++ b/src/include/usr/isteps/spless_255list.H @@ -66,6 +66,7 @@ namespace INITSERVICE const uint8_t DUMP_FAPI_ATTR = 0x03; const uint8_t SET_ATTR_OVERRIDES = 0x04; const uint8_t CLEAR_ATTR_OVERRIDES = 0x05; + const uint8_t GET_FAPI_ATTR = 0x06; const TaskInfo g_istep255[] = { @@ -99,6 +100,11 @@ namespace INITSERVICE NULL, { NONE, EXT_IMAGE, IPL_NOOP, false } }, + { + ISTEPNAME(255,6, "get_fapi_attr"), + NULL, + { NONE, EXT_IMAGE, IPL_NOOP, false } + }, }; const DepModInfo g_istep255Dependancies = { diff --git a/src/include/usr/util/utilmbox_scratch.H b/src/include/usr/util/utilmbox_scratch.H index ce4fd363d..0849c8c8f 100644 --- a/src/include/usr/util/utilmbox_scratch.H +++ b/src/include/usr/util/utilmbox_scratch.H @@ -61,7 +61,12 @@ namespace Util MSG_TYPE_TRACE = 0x00, MSG_TYPE_ATTRDUMP = 0x01, MSG_TYPE_ATTROVERRIDE = 0x02, + MSG_TYPE_ATTRGET = 0x03, + //ATTR GET control words + DEBUG_ATTRGET_FAPI_TYPE = 0x0, + DEBUG_ATTRGET_FAPI_POS = 0x1, + DEBUG_ATTRGET_HASH = 0x2, }; /** |