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 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
|
||||
string
|
||||
default lenovo/t400
|
||||
|
|
|
@ -88,6 +88,9 @@ entries
|
|||
# RAM initialization internal data
|
||||
1024 128 r 0 read_training_results
|
||||
|
||||
# VBOOT
|
||||
1152 128 r 0 vbnv
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
|
||||
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_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
|
||||
string
|
||||
default lenovo/x200
|
||||
|
|
|
@ -86,6 +86,10 @@ entries
|
|||
# RAM initialization internal data
|
||||
1024 128 r 0 read_training_results
|
||||
|
||||
# VBOOT
|
||||
1152 128 r 0 vbnv
|
||||
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
|
||||
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