aboutsummaryrefslogtreecommitdiff
path: root/core/flash.c
diff options
context:
space:
mode:
authorSamuel Mendoza-Jonas <sam@mendozajonas.com>2018-07-10 16:25:32 +1000
committerStewart Smith <stewart@linux.ibm.com>2018-07-17 00:01:23 -0500
commit3cd749c99791d43ee929b9401fb14fc6739ce360 (patch)
treedac79c5a11e20050cd9ffe3330dc38d04a94fac8 /core/flash.c
parent2c30ddb93baf34c0191e5c23579c03a8f76f27c4 (diff)
downloadskiboot-3cd749c99791d43ee929b9401fb14fc6739ce360.zip
skiboot-3cd749c99791d43ee929b9401fb14fc6739ce360.tar.gz
skiboot-3cd749c99791d43ee929b9401fb14fc6739ce360.tar.bz2
Recognise signed VERSION partition
A few things need to change to support a signed VERSION partition: - A signed VERSION partition will be 4K + SECURE_BOOT_HEADERS_SIZE (4K). - The VERSION partition needs to be loaded after secure/trusted boot is set up, and therefore after nvram_init(). - Added to the trustedboot resources array. This also moves the ipmi_dt_add_bmc_info() call to after flash_dt_add_fw_version() since it adds info to ibm,firmware-versions. Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'core/flash.c')
-rw-r--r--core/flash.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/core/flash.c b/core/flash.c
index e3be576..e258fe1 100644
--- a/core/flash.c
+++ b/core/flash.c
@@ -51,7 +51,7 @@ static u32 nvram_offset, nvram_size;
/* ibm,firmware-versions support */
static char *version_buf;
-static size_t version_buf_size = 0x1000;
+static size_t version_buf_size = 0x2000;
bool flash_reserve(void)
{
@@ -235,6 +235,8 @@ void flash_dt_add_fw_version(void)
fw_version = dt_new(dt_root, "ibm,firmware-versions");
assert(fw_version);
+ if (stb_is_container(version_buf, version_buf_size))
+ numbytes += SECURE_BOOT_HEADERS_SIZE;
for ( ; (numbytes < version_buf_size) && version_buf[numbytes]; numbytes++) {
if (version_buf[numbytes] == '\n') {
version_data[i] = '\0';