diff options
| author | Nick Bofferding <bofferdn@us.ibm.com> | 2018-04-03 10:21:06 -0500 |
|---|---|---|
| committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-05-10 22:37:38 -0400 |
| commit | 9394f9d05ef8cad65249a7120f229f7a46ec0dc1 (patch) | |
| tree | b6cdcfb30ec554276f4599e5ad69847b7ccf83dc /src/include | |
| parent | 92a48f3e7c802e6784ad8f272ff94362fe6b5845 (diff) | |
| download | talos-hostboot-9394f9d05ef8cad65249a7120f229f7a46ec0dc1.tar.gz talos-hostboot-9394f9d05ef8cad65249a7120f229f7a46ec0dc1.zip | |
Secure Boot: Inform FSP of key transition progress
The existing key transition flow updates all SBE SEEPROMs within the system in
the same boot, thereby quiescing all SBEs. This compromises the ability of FSP
to detect a key transition TI at the end of the update process because the SBE
is not alive to service FSP's incoming SBE FIFO request to read the memory
holding the attention information. This change adds new support to log
the key transition progress in a node target attribute introduced in an
earlier commit and send that status to FSP via a new mailbox message.
Change-Id: I828184ae8be89ac87137d7510a3c375cef2e05d7
CQ: SW418697
CMVC-Prereq: 1053806
CMVC-Prereq: 1053552
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56677
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-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: Michael Baiocchi <mbaiocch@us.ibm.com>
Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/usr/sbe/sbe_update.H | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/include/usr/sbe/sbe_update.H b/src/include/usr/sbe/sbe_update.H index 19370fbab..70ecf6f15 100644 --- a/src/include/usr/sbe/sbe_update.H +++ b/src/include/usr/sbe/sbe_update.H @@ -76,8 +76,9 @@ namespace SBE const uint8_t SITUATION_BOOT_SIDE_1 = 0x02; // For mbox messages to FSP - const uint32_t MSG_IPL_DUE_TO_SBE_UPDATE = 0x40000012; - const uint32_t MSG_IPL_MASTER_CORE = 0x40000005; + const uint32_t MSG_IPL_DUE_TO_SBE_UPDATE = 0x40000012; + const uint32_t MSG_IPL_MASTER_CORE = 0x40000005; + const uint32_t MSG_KEY_TRANSITION_EVENT_OCCURRED = 0x40000017; /******************************************/ /* Enums */ @@ -608,5 +609,23 @@ namespace SBE uint32_t i_SourceBfrLen, void * & o_pHbblIdStringBfr ); + /** + * @brief Updates the key transition state for the node + * + * @par Detailed Description: + * Updates the specified key transition state for the node and sends a + * synchronous key transition state change alert to FSP (if + * applicable). + * + * @param[in] i_keyTransitionState Key transition state to update + * + * @return errlHndl_t Error log handle + * @retval nullptr Successfully updated node key transition state and + * sent the new key transition state to FSP + * @retval !nullptr Failed to send new key transition state to FSP + */ + errlHndl_t updateKeyTransitionState( + TARGETING::KEY_TRANSITION_STATE i_keyTransitionState); + } //end namespace SBE #endif |

