Matt DeVillier has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
mb/google/hatch: add non-ChromeOS FMAPs
Add 16MiB/32MiB FMAPs for both hatch and puff baseboard-based boards
Change-Id: I296ef6ed5b46655b7d283105acdc201b6293bbd1 Signed-off-by: Matt DeVillier matt.devillier@gmail.com --- M src/mainboard/google/hatch/Kconfig A src/mainboard/google/hatch/default-hatch-16MiB.fmd A src/mainboard/google/hatch/default-hatch-32MiB.fmd A src/mainboard/google/hatch/default-puff-16MiB.fmd A src/mainboard/google/hatch/default-puff-32MiB.fmd 5 files changed, 84 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/24/47724/1
diff --git a/src/mainboard/google/hatch/Kconfig b/src/mainboard/google/hatch/Kconfig index 12e5638..6df8fc4 100644 --- a/src/mainboard/google/hatch/Kconfig +++ b/src/mainboard/google/hatch/Kconfig @@ -96,15 +96,19 @@ if BOARD_GOOGLE_BASEBOARD_HATCH config FMDFILE string - default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-hatch-16MiB.fmd" if BOARD_ROMSIZE_KB_16384 - default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-hatch-32MiB.fmd" if BOARD_ROMSIZE_KB_32768 + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-hatch-16MiB.fmd" if BOARD_ROMSIZE_KB_16384 && CHROMEOS + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-hatch-32MiB.fmd" if BOARD_ROMSIZE_KB_32768 && CHROMEOS + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/default-hatch-16MiB.fmd" if BOARD_ROMSIZE_KB_16384 + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/default-hatch-32MiB.fmd" if BOARD_ROMSIZE_KB_32768 endif
if BOARD_GOOGLE_BASEBOARD_PUFF config FMDFILE string - default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-puff-16MiB.fmd" if BOARD_ROMSIZE_KB_16384 - default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-puff-32MiB.fmd" if BOARD_ROMSIZE_KB_32768 + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-puff-16MiB.fmd" if BOARD_ROMSIZE_KB_16384 && CHROMEOS + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/chromeos-puff-32MiB.fmd" if BOARD_ROMSIZE_KB_32768 && CHROMEOS + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/default-puff-16MiB.fmd" if BOARD_ROMSIZE_KB_16384 + default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/default-puff-32MiB.fmd" if BOARD_ROMSIZE_KB_32768
config POWER_OFF_ON_CR50_UPDATE bool diff --git a/src/mainboard/google/hatch/default-hatch-16MiB.fmd b/src/mainboard/google/hatch/default-hatch-16MiB.fmd new file mode 100644 index 0000000..d07d922 --- /dev/null +++ b/src/mainboard/google/hatch/default-hatch-16MiB.fmd @@ -0,0 +1,17 @@ +FLASH@0xff000000 0x1000000 { + SI_ALL@0x0 0x400000 { + SI_DESC@0x0 0x1000 + SI_ME@0x1000 0x3ff000 + } + SI_BIOS@0x400000 0xc00000 { + # SMMSTORE requires 64k alignment + SMMSTORE 0x40000 + UNIFIED_MRC_CACHE 0x20000 { + RECOVERY_MRC_CACHE 0x10000 + RW_MRC_CACHE 0x10000 + } + FMAP 0x800 + RO_VPD 0x4000 + COREBOOT(CBFS) + } +} diff --git a/src/mainboard/google/hatch/default-hatch-32MiB.fmd b/src/mainboard/google/hatch/default-hatch-32MiB.fmd new file mode 100644 index 0000000..d7455cf --- /dev/null +++ b/src/mainboard/google/hatch/default-hatch-32MiB.fmd @@ -0,0 +1,20 @@ +FLASH@0xff000000 0x2000000 { + SI_ALL@0x0 0x400000 { + SI_DESC@0x0 0x1000 + SI_ME@0x1000 0x3ff000 + } + # Place the start of BIOS region such that it aligns with + # the start of the 16MiB boundary. Since this is a 32MiB + # SPI flash only the top 16MiB actually gets memory mapped. + SI_BIOS@0x1000000 0x1000000 { + # SMMSTORE requires 64k alignment + SMMSTORE 0x40000 + UNIFIED_MRC_CACHE 0x20000 { + RECOVERY_MRC_CACHE 0x10000 + RW_MRC_CACHE 0x10000 + } + FMAP 0x800 + RO_VPD 0x4000 + COREBOOT(CBFS) + } +} diff --git a/src/mainboard/google/hatch/default-puff-16MiB.fmd b/src/mainboard/google/hatch/default-puff-16MiB.fmd new file mode 100644 index 0000000..591b469 --- /dev/null +++ b/src/mainboard/google/hatch/default-puff-16MiB.fmd @@ -0,0 +1,18 @@ +FLASH@0xff000000 0x1000000 { + SI_ALL@0x0 0x300000 { + SI_DESC@0x0 0x1000 + SI_ME@0x1000 0x2ff000 + } + SI_BIOS@0x300000 0xd00000 { + # SMMSTORE requires 64k alignment + SMMSTORE 0x40000 + UNIFIED_MRC_CACHE 0x20000 { + RECOVERY_MRC_CACHE 0x10000 + RW_MRC_CACHE 0x10000 + } + FMAP 0x800 + RO_VPD 0x4000 + RW_SPD_CACHE(PRESERVE) 0x1000 + COREBOOT(CBFS) + } +} diff --git a/src/mainboard/google/hatch/default-puff-32MiB.fmd b/src/mainboard/google/hatch/default-puff-32MiB.fmd new file mode 100644 index 0000000..bdb9baf --- /dev/null +++ b/src/mainboard/google/hatch/default-puff-32MiB.fmd @@ -0,0 +1,21 @@ +FLASH@0xff000000 0x2000000 { + SI_ALL@0x0 0x300000 { + SI_DESC@0x0 0x1000 + SI_ME@0x1000 0x2ff000 + } + # Place the start of BIOS region such that it aligns with + # the start of the 16MiB boundary. Since this is a 32MiB + # SPI flash only the top 16MiB actually gets memory mapped. + SI_BIOS@0x1000000 0x1000000 { + # SMMSTORE requires 64k alignment + SMMSTORE 0x40000 + UNIFIED_MRC_CACHE 0x20000 { + RECOVERY_MRC_CACHE 0x10000 + RW_MRC_CACHE 0x10000 + } + FMAP 0x800 + RO_VPD 0x4000 + RW_SPD_CACHE(PRESERVE) 0x1000 + COREBOOT(CBFS) + } +}
Furquan Shaikh has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/47724/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/47724/1//COMMIT_MSG@9 PS1, Line 9: Add 16MiB/32MiB FMAPs for both hatch and puff baseboard-based boards It would be helpful to capture the motivation behind adding this.
Hello Shelley Chen, V Sowmya, build bot (Jenkins), Furquan Shaikh, Tim Wawrzynczak, Edward O'Callaghan,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/47724
to look at the new patch set (#2).
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
mb/google/hatch: add non-ChromeOS FMAPs
Add non-ChromeOS 16MiB/32MiB FMAPs for both hatch and puff baseboard-based boards. Allows building for standard coreboot payloads (eg, SeaBIOS, Tianocore).
Change-Id: I296ef6ed5b46655b7d283105acdc201b6293bbd1 Signed-off-by: Matt DeVillier matt.devillier@gmail.com --- M src/mainboard/google/hatch/Kconfig A src/mainboard/google/hatch/default-hatch-16MiB.fmd A src/mainboard/google/hatch/default-hatch-32MiB.fmd A src/mainboard/google/hatch/default-puff-16MiB.fmd A src/mainboard/google/hatch/default-puff-32MiB.fmd 5 files changed, 84 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/24/47724/2
Matt DeVillier has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2:
(1 comment)
https://review.coreboot.org/c/coreboot/+/47724/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/47724/1//COMMIT_MSG@9 PS1, Line 9: Add 16MiB/32MiB FMAPs for both hatch and puff baseboard-based boards
It would be helpful to capture the motivation behind adding this.
Done
Tim Wawrzynczak has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2: Code-Review+1
(1 comment)
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... File src/mainboard/google/hatch/default-hatch-32MiB.fmd:
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... PS2, Line 12: did you want the SPD cache marked preserve but not the mrc cache?
Matt DeVillier has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2:
(1 comment)
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... File src/mainboard/google/hatch/default-hatch-32MiB.fmd:
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... PS2, Line 12:
did you want the SPD cache marked preserve but not the mrc cache?
probably because I created the 16MiB layouts first based on hatch/puff, then copied it and hand-edited the values as needed for the 32MiB ones, and didn't notice the MRC cache was marked preserve on the 32MiB FMAPs. Any reason why the discrepancy between the 16/32MiB FMAPs?
Nico Huber has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2:
I probably just missed it. What does this add beyond the default FMAP?
Matt DeVillier has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2:
Patch Set 2:
I probably just missed it. What does this add beyond the default FMAP?
RW_SPD_CACHE and RO_VPD regions, neither of which are able to be added to the default FMAP via Kconfig selection.
Not having the RW_SPD_CACHE results in a small boot time penalty.
Not having the RO_VPD means there is no easy way to persist/load the Ethernet MAC(s) on Puff-based boards with onboard Ethernet, nor the device serial, both of which are contained in the RW_VPD region of the stock ChromeOS firmware.
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2: Code-Review+1
Furquan Shaikh has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2:
(1 comment)
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... File src/mainboard/google/hatch/default-hatch-32MiB.fmd:
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... PS2, Line 12:
probably because I created the 16MiB layouts first based on hatch/puff, then copied it and hand-edit […]
It was just a miss when the fmd files were being split.
Tim Wawrzynczak has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2: Code-Review+2
(1 comment)
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... File src/mainboard/google/hatch/default-hatch-32MiB.fmd:
https://review.coreboot.org/c/coreboot/+/47724/2/src/mainboard/google/hatch/... PS2, Line 12:
It was just a miss when the fmd files were being split.
Just pointing it out, I'll leave it up to you, Matt. Mark it resolved if you're OK with that, otherwise upload a new patch 😊
Matt DeVillier has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2: Code-Review-1
based on some feedback in IRC, going to try and rework this so both regions can be added to the default FMAP via kconfig, and eliminate the need for these dedicated FMAPs
Tim Wawrzynczak has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Patch Set 2: -Code-Review
Patch Set 2: Code-Review-1
based on some feedback in IRC, going to try and rework this so both regions can be added to the default FMAP via kconfig, and eliminate the need for these dedicated FMAPs
not a bad idea
Matt DeVillier has abandoned this change. ( https://review.coreboot.org/c/coreboot/+/47724 )
Change subject: mb/google/hatch: add non-ChromeOS FMAPs ......................................................................
Abandoned
moving to CB:47899 for the SPD cache part; adding the RO_VPD region to the default FMAP will come in a subsequent commit