diff options
author | Stephen Cprek <smcprek@us.ibm.com> | 2017-06-22 16:50:25 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-07-20 15:54:41 -0400 |
commit | 22d6e4636c815eecdcf778c417ef217e32878fba (patch) | |
tree | 0e709eee941452f3d5b1b7b43b6257587d97d90d /src/include/bootloader | |
parent | 6744879ceba92b2b2a060cff929bfaaf5d26d762 (diff) | |
download | talos-hostboot-22d6e4636c815eecdcf778c417ef217e32878fba.tar.gz talos-hostboot-22d6e4636c815eecdcf778c417ef217e32878fba.zip |
Handle Compatability issues for new BltoHbData location
Change-Id: I9ec35ca8dd513a5e31f69cd899fa5d1e00d41c63
RTC: 175114
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42442
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Michael Baiocchi <mbaiocch@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: Jenkins OP HW <op-hw-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/include/bootloader')
-rw-r--r-- | src/include/bootloader/bootloader.H | 8 | ||||
-rw-r--r-- | src/include/bootloader/bootloaderif.H | 14 |
2 files changed, 13 insertions, 9 deletions
diff --git a/src/include/bootloader/bootloader.H b/src/include/bootloader/bootloader.H index afe2acc71..f00927530 100644 --- a/src/include/bootloader/bootloader.H +++ b/src/include/bootloader/bootloader.H @@ -226,10 +226,10 @@ namespace Bootloader{ #define HW_KEYS_HASH_ADDR (getHRMOR() + HBBL_EXCEPTION_VECTOR_SIZE \ + MAX_HBBL_SIZE - 64) /** Location of working copy of HBB with ECC */ -#define HBB_ECC_WORKING_ADDR (getHRMOR() + ( 1*MEGABYTE)) +#define HBB_ECC_WORKING_ADDR (getHRMOR() - ( 1*MEGABYTE)) /** Location of working copy of HBB without ECC */ -#define HBB_WORKING_ADDR (getHRMOR() - ( 1*MEGABYTE)) +#define HBB_WORKING_ADDR (getHRMOR() + ( 1*MEGABYTE)) /** Location of HBBL data */ #define HBBL_DATA_ADDR (getHRMOR() + HBBL_EXCEPTION_VECTOR_SIZE \ @@ -238,10 +238,6 @@ namespace Bootloader{ /** Location of HBBL scratch space */ #define HBBL_SCRATCH_SPACE_ADDR (getHRMOR() + (64*KILOBYTE)) - /** Location of running copy of HBB */ -#define HBB_HRMOR (getHRMOR() - ( 2*MEGABYTE)) -#define HBB_RUNNING_ADDR (getHRMOR() - ( 2*MEGABYTE)) - /** Location of SBE HB communication area Defined in SBE code and bootloader.ld */ #define SBE_HB_COMM_ADDR (getHRMOR() + 0x4) diff --git a/src/include/bootloader/bootloaderif.H b/src/include/bootloader/bootloaderif.H index fc810dc4b..a418d047b 100644 --- a/src/include/bootloader/bootloaderif.H +++ b/src/include/bootloader/bootloaderif.H @@ -42,13 +42,21 @@ namespace Bootloader{ #define MAX_HBB_SIZE (512 * KILOBYTE) -// The Bootloader to Hostboot communication area exists after the working HBB +// Location of running copy of HBB #ifdef BOOTLOADER -#define BLTOHB_COMM_DATA_ADDR (getHRMOR() - ( 2*MEGABYTE) + MAX_HBB_SIZE) +#define HBB_HRMOR (getHRMOR() - ( 2*MEGABYTE)) +#define HBB_RUNNING_ADDR (getHRMOR() - ( 2*MEGABYTE)) #else -#define BLTOHB_COMM_DATA_ADDR (getHRMOR() + MAX_HBB_SIZE) +#define HBB_HRMOR (getHRMOR()) +#define HBB_RUNNING_ADDR (getHRMOR()) #endif +// Different Locations of BlToHBData struct over time. +// New values make "_LATEST" and switch current "_LATEST" to "V<N>" +// NOTE: Done this way to limit code space. +#define BLTOHB_COMM_DATA_ADDR_V1 (HBB_HRMOR + 512*KILOBYTE) +#define BLTOHB_COMM_DATA_ADDR_LATEST (HBB_HRMOR + MAX_HBB_SIZE) + // Expected BlToHbData eye catch const uint64_t BLTOHB_EYECATCHER = 0x23626C746F686200; // #BLTOHB\0 |