2018-12-10 21:59:01 +01:00
|
|
|
FLASH@0xfe000000 0x2000000 {
|
2018-12-24 05:04:15 +01:00
|
|
|
SI_ALL@0x0 0x400000 {
|
2018-12-10 21:59:01 +01:00
|
|
|
SI_DESC@0x0 0x1000
|
2018-12-24 05:04:15 +01:00
|
|
|
SI_ME@0x1000 0x3ff000
|
2018-12-10 21:59:01 +01:00
|
|
|
}
|
2019-02-12 17:15:47 +01:00
|
|
|
SI_BIOS@0x400000 0x1c00000 {
|
|
|
|
# Place RW_LEGACY at the start of BIOS region such that the rest
|
|
|
|
# of BIOS regions start at 16MiB boundary. Since this is a 32MiB
|
|
|
|
# SPI flash only the top 16MiB actually gets memory mapped.
|
|
|
|
RW_LEGACY(CBFS)@0x0 0x1000000
|
|
|
|
RW_SECTION_A@0x1000000 0x3e0000 {
|
2018-12-10 21:59:01 +01:00
|
|
|
VBLOCK_A@0x0 0x10000
|
2019-02-12 17:15:47 +01:00
|
|
|
FW_MAIN_A(CBFS)@0x10000 0x3cffc0
|
|
|
|
RW_FWID_A@0x3dffc0 0x40
|
2018-12-10 21:59:01 +01:00
|
|
|
}
|
2019-02-12 17:15:47 +01:00
|
|
|
RW_SECTION_B@0x13e0000 0x3e0000 {
|
2018-12-10 21:59:01 +01:00
|
|
|
VBLOCK_B@0x0 0x10000
|
2019-02-12 17:15:47 +01:00
|
|
|
FW_MAIN_B(CBFS)@0x10000 0x3cffc0
|
|
|
|
RW_FWID_B@0x3dffc0 0x40
|
2018-12-10 21:59:01 +01:00
|
|
|
}
|
2019-02-12 17:15:47 +01:00
|
|
|
RW_MISC@0x17c0000 0x40000 {
|
2019-10-04 21:38:47 +02:00
|
|
|
UNIFIED_MRC_CACHE(PRESERVE)@0x0 0x30000 {
|
2018-12-10 21:59:01 +01:00
|
|
|
RECOVERY_MRC_CACHE@0x0 0x10000
|
2019-02-12 17:15:47 +01:00
|
|
|
RW_MRC_CACHE@0x10000 0x20000
|
2018-12-10 21:59:01 +01:00
|
|
|
}
|
mainboard: Enable PRESERVE flag in all vboot/chromeos FMD files
For Chrome OS (or vboot), The PRESERVE flags should be applied on
following sections:
RO_PRESERVE, RO_VPD, RW_PRESERVE, RW_ELOG, RW_NVRAM, RW_SMMSTORE,
RW_VPD, RO_FSG (b:116326638), SI_GBE (chromium:936768),
SI_PDR (chromium:936768)
With the new PRESERVE flag, we don't need RO_PRESERVE and RW_PRESERVE in
the future. But it's still no harm to use it if there are multiple
sections all needing to be preserved.
BUG=chromium:936768
TEST=Builds google/eve and google/kukui inside Chrome OS source tree.
Also boots successfully on eve and kukui devices.
Change-Id: I6664ae3d955001ed14374e2788d400ba5fb9b7f8
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/31709
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2019-03-04 09:48:05 +01:00
|
|
|
RW_ELOG(PRESERVE)@0x30000 0x4000
|
2019-02-12 17:15:47 +01:00
|
|
|
RW_SHARED@0x34000 0x4000 {
|
2018-12-10 21:59:01 +01:00
|
|
|
SHARED_DATA@0x0 0x2000
|
|
|
|
VBLOCK_DEV@0x2000 0x2000
|
|
|
|
}
|
mainboard: Enable PRESERVE flag in all vboot/chromeos FMD files
For Chrome OS (or vboot), The PRESERVE flags should be applied on
following sections:
RO_PRESERVE, RO_VPD, RW_PRESERVE, RW_ELOG, RW_NVRAM, RW_SMMSTORE,
RW_VPD, RO_FSG (b:116326638), SI_GBE (chromium:936768),
SI_PDR (chromium:936768)
With the new PRESERVE flag, we don't need RO_PRESERVE and RW_PRESERVE in
the future. But it's still no harm to use it if there are multiple
sections all needing to be preserved.
BUG=chromium:936768
TEST=Builds google/eve and google/kukui inside Chrome OS source tree.
Also boots successfully on eve and kukui devices.
Change-Id: I6664ae3d955001ed14374e2788d400ba5fb9b7f8
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/31709
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2019-03-04 09:48:05 +01:00
|
|
|
RW_VPD(PRESERVE)@0x38000 0x2000
|
|
|
|
RW_NVRAM(PRESERVE)@0x3a000 0x6000
|
2018-12-10 21:59:01 +01:00
|
|
|
}
|
2018-12-31 11:53:44 +01:00
|
|
|
# Make WP_RO region align with SPI vendor
|
|
|
|
# memory protected range specification.
|
2019-02-12 17:15:47 +01:00
|
|
|
WP_RO@0x1800000 0x400000 {
|
mainboard: Enable PRESERVE flag in all vboot/chromeos FMD files
For Chrome OS (or vboot), The PRESERVE flags should be applied on
following sections:
RO_PRESERVE, RO_VPD, RW_PRESERVE, RW_ELOG, RW_NVRAM, RW_SMMSTORE,
RW_VPD, RO_FSG (b:116326638), SI_GBE (chromium:936768),
SI_PDR (chromium:936768)
With the new PRESERVE flag, we don't need RO_PRESERVE and RW_PRESERVE in
the future. But it's still no harm to use it if there are multiple
sections all needing to be preserved.
BUG=chromium:936768
TEST=Builds google/eve and google/kukui inside Chrome OS source tree.
Also boots successfully on eve and kukui devices.
Change-Id: I6664ae3d955001ed14374e2788d400ba5fb9b7f8
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/31709
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2019-03-04 09:48:05 +01:00
|
|
|
RO_VPD(PRESERVE)@0x0 0x4000
|
2018-12-31 11:53:44 +01:00
|
|
|
RO_SECTION@0x4000 0x3fc000 {
|
2018-12-10 21:59:01 +01:00
|
|
|
FMAP@0x0 0x800
|
|
|
|
RO_FRID@0x800 0x40
|
|
|
|
RO_FRID_PAD@0x840 0x7c0
|
mb/google: Shrink GBB section size
Chrome OS firmware images have moved bitmap resources from GBB into CBFS
for a long time, so the GBB should only hold firmware keys and HWID,
that is usually less than 10k.
ARM boards usually limit GBB to 0x2f00 (see gru, cheza and kukui) but
many recent x86 simply copy from old settings and may run out of space
when we want to add more resources, for example EC RO software sync.
Note, changing the GBB section (inside RO) implies RO update,
so this change *must not* be cherry-picked back to old firmware
branches if some devices were already shipped.
BRANCH=none
BUG=None
TEST=make # board=darllion,hatch,kahlee,octopus,sarien
Change-Id: I615cd7b53b556019f2d54d0df7ac2723d36ee6cf
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36088
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Mathew King <mathewk@chromium.org>
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2019-10-17 06:42:28 +02:00
|
|
|
GBB@0x1000 0x3000
|
|
|
|
COREBOOT(CBFS)@0x4000 0x3f8000
|
2018-12-10 21:59:01 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|