summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKangheui Won <khwon@chromium.org>2022-06-28 15:55:25 +1000
committerFelix Held <felix-coreboot@felixheld.de>2022-06-30 13:55:15 +0000
commit1858153f109a29095361df2af8b91fde5e1f62c0 (patch)
tree5c2e08ae45734e318f8ca991bd076b8fa08002fc /src
parent9678722060e5884498003f830e054283194799ee (diff)
mb/google/nissa: Add fmd for debug FSP
Debug FSP is ~850KiB larger than release FSP and we don't have sufficient space for nissa flash layout. Remove RW_LEGACY and split them into RW_SECTION_A/B so we can have a room for it. Note: This fmd will only used for internal testing/debugging and not for the firmware in released devices. BUG=b:231395098 TEST=build with CONFIG_BUILDING_WITH_DEBUG_FSP Signed-off-by: Kangheui Won <khwon@chromium.org> Change-Id: Idb17f003285575e80feb86bb292b95daf0f5b3b3 Reviewed-on: https://review.coreboot.org/c/coreboot/+/65467 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Reka Norman <rekanorman@chromium.org> Reviewed-by: Subrata Banik <subratabanik@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/mainboard/google/brya/Kconfig1
-rw-r--r--src/mainboard/google/brya/chromeos-nissa-16MiB-debugfsp.fmd50
2 files changed, 51 insertions, 0 deletions
diff --git a/src/mainboard/google/brya/Kconfig b/src/mainboard/google/brya/Kconfig
index 63fe463310..b985be20a9 100644
--- a/src/mainboard/google/brya/Kconfig
+++ b/src/mainboard/google/brya/Kconfig
@@ -150,6 +150,7 @@ config DRIVER_TPM_I2C_ADDR
config FMDFILE
default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos-serger.fmd" if BOARD_GOOGLE_BRASK
+ default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos-nissa-16MiB-debugfsp.fmd" if BOARD_GOOGLE_BASEBOARD_NISSA && BOARD_ROMSIZE_KB_16384 && BUILDING_WITH_DEBUG_FSP
default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos-nissa-16MiB.fmd" if BOARD_GOOGLE_BASEBOARD_NISSA && BOARD_ROMSIZE_KB_16384
default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos-nissa-32MiB.fmd" if BOARD_GOOGLE_BASEBOARD_NISSA && BOARD_ROMSIZE_KB_32768
default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos.fmd"
diff --git a/src/mainboard/google/brya/chromeos-nissa-16MiB-debugfsp.fmd b/src/mainboard/google/brya/chromeos-nissa-16MiB-debugfsp.fmd
new file mode 100644
index 0000000000..f4909c2455
--- /dev/null
+++ b/src/mainboard/google/brya/chromeos-nissa-16MiB-debugfsp.fmd
@@ -0,0 +1,50 @@
+FLASH 16M {
+ SI_ALL 3776K {
+ SI_DESC 4K
+ SI_ME {
+ CSE_LAYOUT 8K
+ CSE_RO 1360K
+ CSE_DATA 420K
+ # 64-KiB aligned to optimize RW erases during CSE update.
+ CSE_RW 1984K
+ }
+ }
+ SI_BIOS 12608K {
+ RW_SECTION_A 4180K {
+ VBLOCK_A 8K
+ FW_MAIN_A(CBFS)
+ RW_FWID_A 64
+ ME_RW_A(CBFS) 1434K
+ }
+ RW_MISC 152K {
+ UNIFIED_MRC_CACHE(PRESERVE) 128K {
+ RECOVERY_MRC_CACHE 64K
+ RW_MRC_CACHE 64K
+ }
+ RW_ELOG(PRESERVE) 4K
+ RW_SHARED 4K {
+ SHARED_DATA 4K
+ }
+ RW_VPD(PRESERVE) 8K
+ RW_NVRAM(PRESERVE) 8K
+ }
+ RW_SECTION_B 4180K {
+ VBLOCK_B 8K
+ FW_MAIN_B(CBFS)
+ RW_FWID_B 64
+ ME_RW_B(CBFS) 1434K
+ }
+ # Make WP_RO region align with SPI vendor
+ # memory protected range specification.
+ WP_RO 4M {
+ RO_VPD(PRESERVE) 16K
+ RO_GSCVD 8K
+ RO_SECTION {
+ FMAP 2K
+ RO_FRID 64
+ GBB@4K 12K
+ COREBOOT(CBFS)
+ }
+ }
+ }
+}