summaryrefslogtreecommitdiffstats
path: root/src/include/bootloader
diff options
context:
space:
mode:
authorMarty Gloff <mgloff@us.ibm.com>2017-06-19 11:54:55 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-06-30 10:18:59 -0400
commit178ec2a3c04b60d6abba4a6a9d344c9fb6f61027 (patch)
tree465293af14f04aff634cd58288334ab79e0ed8a3 /src/include/bootloader
parentf70e2531c2b0bafc08151294d904991f0e376493 (diff)
downloadtalos-hostboot-178ec2a3c04b60d6abba4a6a9d344c9fb6f61027.tar.gz
talos-hostboot-178ec2a3c04b60d6abba4a6a9d344c9fb6f61027.zip
Change Bootloader data alignments
The data defined in bootloader_data.H is not aligned as originally thought. Some changes should be made to this file and the BlData.pm tool to nicely align this data and output it. Also add static_assert statements to alert for future changes. Use default address to find data and traces with optional argument to override that address. Change-Id: I4ed61273baa54b2c7cb510ef9a24cebb239d9300 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42057 Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@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: Stephen M. Cprek <smcprek@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.H13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/include/bootloader/bootloader_data.H b/src/include/bootloader/bootloader_data.H
index 345de9e26..a6f4654e1 100644
--- a/src/include/bootloader/bootloader_data.H
+++ b/src/include/bootloader/bootloader_data.H
@@ -73,16 +73,27 @@ namespace Bootloader{
// Instance of the TI Data Area
HB_TI_DataArea bl_TIDataArea;
+ static_assert( sizeof(HB_TI_DataArea) == 48, "HB_TI_DataArea "
+ "size changed. Check bootloader_data.H alignment. "
+ "Fix BlData.pm processing.");
// Buffer to save HBB PNOR section data
PNOR::SectionData_t bl_hbbSection;
+ uint8_t bl_reserved3[(64 - sizeof(PNOR::SectionData_t)) % 16];
+ static_assert( sizeof(PNOR::SectionData_t) == 26, "SectionData_t "
+ "size changed. Check bootloader_data.H alignment. "
+ "Fix BlData.pm processing.");
// Bool indicating if the secureROM is valid. Toggles verification.
bool secureRomValid;
- uint8_t bl_reserved3[15];
+ uint8_t bl_reserved4[15];
// Object that will be stored where the SBE HB structure indicates
BlToHbData blToHbData;
+ uint8_t bl_reserved5[(512 - sizeof(BlToHbData)) % 16];
+ static_assert( sizeof(BlToHbData) == 91, "BlToHbData "
+ "size changed. Check bootloader_data.H alignment. "
+ "Fix BlData.pm processing.");
} blData_t;
/**
OpenPOWER on IntegriCloud