summaryrefslogtreecommitdiffstats
path: root/src/bootloader
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2017-05-22 16:01:27 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-05-24 23:34:35 -0400
commitc578a6cdfbbc2b77c988548b81df6e1d9f202582 (patch)
treeeec5fe1653d74bb4bb46ce1235a1722e52f97db6 /src/bootloader
parentfcaea7edd10cc3a0f4535437af3fc1d91f827404 (diff)
downloadtalos-hostboot-c578a6cdfbbc2b77c988548b81df6e1d9f202582.tar.gz
talos-hostboot-c578a6cdfbbc2b77c988548b81df6e1d9f202582.zip
Add more error info for Bootloader verification errors
Change-Id: I1407e74360a4e4fd6b931add1a676f349f907318 RTC: 171325 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40815 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/bootloader')
-rw-r--r--src/bootloader/bootloader.C31
1 files changed, 27 insertions, 4 deletions
diff --git a/src/bootloader/bootloader.C b/src/bootloader/bootloader.C
index 408b27c09..78300ea63 100644
--- a/src/bootloader/bootloader.C
+++ b/src/bootloader/bootloader.C
@@ -220,21 +220,44 @@ namespace Bootloader{
&l_hw_parms);
if (l_rc != 0)
{
+ // Get first 4 bytes of Container that failed verification
+ uint32_t l_beginContainer = 0;
+ memcpy(&l_beginContainer, i_pContainer,
+ sizeof(l_beginContainer));
+
+ // Get first 4 bytes of system's hw keys' hash
+ uint32_t l_beginHwKeysHash = 0;
+ memcpy(&l_beginHwKeysHash, g_blData->blToHbData.hwKeysHash,
+ sizeof(l_beginHwKeysHash));
+
+ // Read SBE HB shared data.
+ const auto l_blConfigData = reinterpret_cast<
+ BootloaderConfigData_t *>(SBE_HB_COMM_ADDR);
+
// Verification of Container failed.
BOOTLOADER_TRACE(BTLDR_TRC_MAIN_VERIFY_FAIL);
/*@
* @errortype
* @moduleid Bootloader::MOD_BOOTLOADER_VERIFY
* @reasoncode SECUREBOOT::RC_ROM_VERIFY
- * @userdata1 ROM return code
- * @userdata2 ROM_hw_params log
+ * @userdata1[0:15] TI_WITH_SRC
+ * @userdata1[16:31] TI_BOOTLOADER
+ * @userdata1[32:63] Failing address = 0
+ * @userdata2[0:31] First 4 bytes System's HW keys' Hash
+ * @userdata2[32:63] First 4 bytes of Container Header
+ * @errorInfo[0:15] SBE Boot Side
+ * @errorInfo[16:31] ROM_hw_params log
* @devdesc ROM verification failed
* @custdesc Platform security violation detected
*/
bl_terminate(MOD_BOOTLOADER_VERIFY,
SECUREBOOT::RC_ROM_VERIFY,
- l_rc,
- l_hw_parms.log);
+ l_beginHwKeysHash,
+ l_beginContainer,
+ true,
+ 0,
+ TWO_UINT16_TO_UINT32(l_blConfigData->sbeBootSide,
+ l_hw_parms.log));
}
OpenPOWER on IntegriCloud