mb/lenovo/{x200,t400}: Add VBOOT support
Tested on thinkpad X200 with CONFIG_H8_FN_KEY_AS_VBOOT_RECOVERY_SW selected, the RW_A slot is properly selected unless the FN button is pressed. 600+ms are spend waiting for the EC to be ready. Change-Id: I689fe310e5b828f2e68fcbe9afd582f35738ed1d Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/coreboot/+/35998 Reviewed-by: Nico Huber <nico.h@gmx.de> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
334211e4a6
commit
41f826a498
|
@ -28,6 +28,24 @@ config BOARD_SPECIFIC_OPTIONS
|
||||||
select MAINBOARD_USES_IFD_GBE_REGION if !BOARD_LENOVO_R500
|
select MAINBOARD_USES_IFD_GBE_REGION if !BOARD_LENOVO_R500
|
||||||
select INTEL_GMA_HAVE_VBT
|
select INTEL_GMA_HAVE_VBT
|
||||||
|
|
||||||
|
config VBOOT
|
||||||
|
select VBOOT_VBNV_CMOS
|
||||||
|
select GBB_FLAG_DISABLE_LID_SHUTDOWN
|
||||||
|
select GBB_FLAG_DISABLE_PD_SOFTWARE_SYNC
|
||||||
|
select GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC
|
||||||
|
select GBB_FLAG_DISABLE_FWMP
|
||||||
|
|
||||||
|
config VBOOT_SLOTS_RW_A
|
||||||
|
default y
|
||||||
|
|
||||||
|
config VBOOT_VBNV_OFFSET
|
||||||
|
hex
|
||||||
|
default 0x82
|
||||||
|
|
||||||
|
config FMDFILE
|
||||||
|
string
|
||||||
|
default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/vboot-rwa.fmd" if VBOOT
|
||||||
|
|
||||||
config MAINBOARD_DIR
|
config MAINBOARD_DIR
|
||||||
string
|
string
|
||||||
default lenovo/t400
|
default lenovo/t400
|
||||||
|
|
|
@ -88,6 +88,9 @@ entries
|
||||||
# RAM initialization internal data
|
# RAM initialization internal data
|
||||||
1024 128 r 0 read_training_results
|
1024 128 r 0 read_training_results
|
||||||
|
|
||||||
|
# VBOOT
|
||||||
|
1152 128 r 0 vbnv
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
|
|
||||||
enumerations
|
enumerations
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
FLASH@0xff800000 0x800000 {
|
||||||
|
SI_ALL@0x0 0x600000 {
|
||||||
|
SI_DESC@0x0 0x1000
|
||||||
|
SI_ME@0x1000 0x5f5000
|
||||||
|
SI_GBE@0x5f6000 0x2000
|
||||||
|
SI_PD@0x5f8000 0x8000
|
||||||
|
}
|
||||||
|
SI_BIOS@0x600000 0x200000 {
|
||||||
|
RW_SECTION_A 0x100000 {
|
||||||
|
VBLOCK_A 0x10000
|
||||||
|
FW_MAIN_A(CBFS)
|
||||||
|
RW_FWID_A 0x40
|
||||||
|
}
|
||||||
|
RW_VPD(PRESERVE) 0x1000
|
||||||
|
CONSOLE 0x10000
|
||||||
|
SMMSTORE(PRESERVE) 0x40000
|
||||||
|
WP_RO {
|
||||||
|
FMAP 0x800
|
||||||
|
RO_FRID 0x40
|
||||||
|
RO_PADDING 0x7c0
|
||||||
|
RO_VPD(PRESERVE) 0x1000
|
||||||
|
GBB 0x1e000
|
||||||
|
COREBOOT(CBFS)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -24,6 +24,24 @@ config BOARD_SPECIFIC_OPTIONS
|
||||||
select MAINBOARD_HAS_LIBGFXINIT
|
select MAINBOARD_HAS_LIBGFXINIT
|
||||||
select MAINBOARD_USES_IFD_GBE_REGION
|
select MAINBOARD_USES_IFD_GBE_REGION
|
||||||
|
|
||||||
|
config VBOOT
|
||||||
|
select VBOOT_VBNV_CMOS
|
||||||
|
select GBB_FLAG_DISABLE_LID_SHUTDOWN
|
||||||
|
select GBB_FLAG_DISABLE_PD_SOFTWARE_SYNC
|
||||||
|
select GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC
|
||||||
|
select GBB_FLAG_DISABLE_FWMP
|
||||||
|
|
||||||
|
config VBOOT_SLOTS_RW_A
|
||||||
|
default y
|
||||||
|
|
||||||
|
config VBOOT_VBNV_OFFSET
|
||||||
|
hex
|
||||||
|
default 0x82
|
||||||
|
|
||||||
|
config FMDFILE
|
||||||
|
string
|
||||||
|
default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/vboot-rwa.fmd" if VBOOT
|
||||||
|
|
||||||
config MAINBOARD_DIR
|
config MAINBOARD_DIR
|
||||||
string
|
string
|
||||||
default lenovo/x200
|
default lenovo/x200
|
||||||
|
|
|
@ -86,6 +86,10 @@ entries
|
||||||
# RAM initialization internal data
|
# RAM initialization internal data
|
||||||
1024 128 r 0 read_training_results
|
1024 128 r 0 read_training_results
|
||||||
|
|
||||||
|
# VBOOT
|
||||||
|
1152 128 r 0 vbnv
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
|
|
||||||
enumerations
|
enumerations
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
FLASH@0xff800000 0x800000 {
|
||||||
|
SI_ALL@0x0 0x600000 {
|
||||||
|
SI_DESC@0x0 0x1000
|
||||||
|
SI_ME@0x1000 0x5f5000
|
||||||
|
SI_GBE@0x5f6000 0x2000
|
||||||
|
SI_PD@0x5f8000 0x8000
|
||||||
|
}
|
||||||
|
SI_BIOS@0x600000 0x200000 {
|
||||||
|
RW_SECTION_A 0x100000 {
|
||||||
|
VBLOCK_A 0x10000
|
||||||
|
FW_MAIN_A(CBFS)
|
||||||
|
RW_FWID_A 0x40
|
||||||
|
}
|
||||||
|
RW_VPD(PRESERVE) 0x1000
|
||||||
|
CONSOLE 0x10000
|
||||||
|
SMMSTORE(PRESERVE) 0x40000
|
||||||
|
WP_RO {
|
||||||
|
FMAP 0x800
|
||||||
|
RO_FRID 0x40
|
||||||
|
RO_PADDING 0x7c0
|
||||||
|
RO_VPD(PRESERVE) 0x1000
|
||||||
|
GBB 0x1e000
|
||||||
|
COREBOOT(CBFS)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue