diff options
author | Marty Gloff <mgloff@us.ibm.com> | 2017-05-08 11:25:11 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-06-08 10:41:38 -0400 |
commit | 4edfbd997e46ab635821558047b80ba38a2d7f15 (patch) | |
tree | d25ae8b4fbb3fd16dedfde1d5f37d63cb63e6a4a /src/include/bootloader | |
parent | bb0796065c4a8035b0f0a9bddee61edc8f221c38 (diff) | |
download | talos-hostboot-4edfbd997e46ab635821558047b80ba38a2d7f15.tar.gz talos-hostboot-4edfbd997e46ab635821558047b80ba38a2d7f15.zip |
Use effective fabric position for LPC operations in the bootloader
When the LPC BAR value is supplied in the SBE to BL structure, use it as
the base LPC address, otherwise, still use the LPC constant. Save the
value being used in the Bootloader data (which is reorganized to align
data blocks on boundaries).
Also add hb-bldata to parse out the Bootloader data.
Change-Id: I1db19467464b90e0190c4df5f7404624c9423eb5
RTC: 173525
Depends-on: I2b0d1959c303df8c9c28c8f0a5b5be1e77aa154f
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40217
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>
Reviewed-by: Matt Derksen <mderkse1@us.ibm.com>
Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/bootloader')
-rw-r--r-- | src/include/bootloader/bootloader_data.H | 16 | ||||
-rw-r--r-- | src/include/bootloader/bootloaderif.H | 9 |
2 files changed, 12 insertions, 13 deletions
diff --git a/src/include/bootloader/bootloader_data.H b/src/include/bootloader/bootloader_data.H index a28ea74cd..a97120ca0 100644 --- a/src/include/bootloader/bootloader_data.H +++ b/src/include/bootloader/bootloader_data.H @@ -53,18 +53,20 @@ namespace Bootloader{ // @brief Index for Bootloader Trace entries // One-byte index for next entry to use in bootloader_trace. uint8_t bl_trace_index; + uint8_t bl_reserved1[15]; - // Object that will be stored where the SBE HB structure indicates - BlToHbData blToHbData; - - // Bool indicating if the secureROM is valid. Toggles verification. - bool secureRomValid; + // Instance of the TI Data Area + HB_TI_DataArea bl_TIDataArea; // Buffer to save HBB PNOR section data PNOR::SectionData_t bl_hbbSection; - // Instance of the TI Data Area - HB_TI_DataArea bl_TIDataArea; + // Bool indicating if the secureROM is valid. Toggles verification. + bool secureRomValid; + uint8_t bl_reserved2[15]; + + // Object that will be stored where the SBE HB structure indicates + BlToHbData blToHbData; } blData_t; /** diff --git a/src/include/bootloader/bootloaderif.H b/src/include/bootloader/bootloaderif.H index 6fbbd4fd8..e54688f81 100644 --- a/src/include/bootloader/bootloaderif.H +++ b/src/include/bootloader/bootloaderif.H @@ -27,7 +27,7 @@ #include <arch/ppc.H> #include <securerom/ROM.H> -#include <usr/lpc/lpc_const.H> +#include <arch/memorymap.H> namespace Bootloader{ // Max size of HBBL without ECC. Must match PNOR layout for eyeCatch HBBL @@ -76,11 +76,8 @@ struct BlToHbData secureRomSize(0), hwKeysHash(nullptr), hwKeysHashSize(0), hbbHeader(nullptr), hbbHeaderSize(0), secureAccessBit(false), - // @TODO RTC: 173526 or RTC: 173525 - // Use constants MMIO_GROUP0_CHIP0_XSCOM_BASE_ADDR and - // MMIO_GROUP0_CHIP0_LPC_BASE_ADDR from - // src/include/arch/memorymap.H for setting values - xscomBAR(0x000603FC00000000), lpcBAR(LPC::LPC_PHYS_BASE) {} + xscomBAR(MMIO_GROUP0_CHIP0_XSCOM_BASE_ADDR), + lpcBAR(MMIO_GROUP0_CHIP0_LPC_BASE_ADDR) {} // Simple way to tell if data is valid uint64_t eyeCatch; |