diff options
author | Keith Short <keithshort@chromium.org> | 2023-01-06 11:54:29 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-01-13 16:30:37 +0000 |
commit | 9c9d316599737caf8751baa3ffa7a578ae84fb49 (patch) | |
tree | 63011e8bdfb165a747cff620bdeb48f5563080ca /zephyr/Kconfig.flash | |
parent | c9292d8582f8e1e02cf8458ce9969027d7d42241 (diff) | |
download | chrome-ec-firmware-nissa-15217.45.B-main.tar.gz |
zephyr: fwid: Move RW FWID to end of the flashfirmware-nissa-15217.45.B-main
Force the RW_FWID to always reside in the last 32 bytes of the flash.
This ensures that the RW_FW and RW_FWID sections never move within the
full EC binary.
The FMAP is only stored in RO, so this ensures future compatibility with
RW firmware image size changes.
BUG=b:264229880
BRANCH=none
TEST=Run "futility dump_fmap ec.bin" and verify RW_FWID is located in
last 32-bytes.
TEST=On Herobrine, validate EC sync and validate FMAP manifest when the
RO and RW images are different versions.
Change-Id: I2d96d602f37ca9fafe4d01cbf1a578e20861abaa
Signed-off-by: Keith Short <keithshort@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4143799
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
(cherry picked from commit 83870209314421d0114f868f8f4a92578310e87d)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4164577
Tested-by: Shou-Chieh Hsu <shouchieh@chromium.org>
Reviewed-by: Andrew McRae <amcrae@google.com>
Reviewed-by: David Wu <david_wu@quanta.corp-partner.google.com>
Commit-Queue: Shou-Chieh Hsu <shouchieh@chromium.org>
Diffstat (limited to 'zephyr/Kconfig.flash')
-rw-r--r-- | zephyr/Kconfig.flash | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/zephyr/Kconfig.flash b/zephyr/Kconfig.flash index db049768a6..e3c161f31b 100644 --- a/zephyr/Kconfig.flash +++ b/zephyr/Kconfig.flash @@ -76,6 +76,13 @@ config PLATFORM_EC_INTERNAL_STORAGE endchoice +config PLATFORM_EC_RW_TOTAL_IMAGE_SIZE + hex + default $(dt_node_int_prop_hex,/binman/ec-rw,size) + help + Total size of the EC RW image, including the 32-byte RW_FWID. The + source of truth for this setting is the binman devicetree node. + # Workaround for not being able to have commas in macro arguments DT_CHOSEN_CROS_FLASH := cros-ec,flash |