From 5f40fc61c69f4ad90ee728abe7b974c46076a1a5 Mon Sep 17 00:00:00 2001 From: Sean Rhodes Date: Thu, 7 Jul 2022 16:52:24 +0100 Subject: [PATCH] mb/starlabs/lite: Add support for VBOOT Add the required files to support VBOOT for when it is enabled. Signed-off-by: Sean Rhodes Change-Id: I083107b21c23f42193fc88aa174ec22850f45bc8 Reviewed-on: https://review.coreboot.org/c/coreboot/+/65705 Reviewed-by: Angel Pons Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth --- src/mainboard/starlabs/lite/Kconfig | 4 ++++ src/mainboard/starlabs/lite/Makefile.inc | 4 ++++ src/mainboard/starlabs/lite/vboot.c | 8 +++++++ src/mainboard/starlabs/lite/vboot.fmd | 28 ++++++++++++++++++++++++ 4 files changed, 44 insertions(+) create mode 100644 src/mainboard/starlabs/lite/vboot.c create mode 100644 src/mainboard/starlabs/lite/vboot.fmd diff --git a/src/mainboard/starlabs/lite/Kconfig b/src/mainboard/starlabs/lite/Kconfig index 4fc2469cd7..c80020fd9a 100644 --- a/src/mainboard/starlabs/lite/Kconfig +++ b/src/mainboard/starlabs/lite/Kconfig @@ -42,6 +42,7 @@ config EC_VARIANT_DIR default "glkr" if BOARD_STARLABS_LITE_GLKR config FMDFILE + default "src/mainboard/starlabs/lite/vboot.fmd" if VBOOT default "src/mainboard/starlabs/lite/board.fmd" config MAINBOARD_DIR @@ -76,6 +77,9 @@ config VARIANT_DIR default "glk" if BOARD_STARLABS_LITE_GLK default "glkr" if BOARD_STARLABS_LITE_GLKR +config VBOOT + select VBOOT_VBNV_FLASH + config WEBCAM_USB_PORT int default 4 if BOARD_STARLABS_LITE_GLK diff --git a/src/mainboard/starlabs/lite/Makefile.inc b/src/mainboard/starlabs/lite/Makefile.inc index e7f8277787..5cfed3556d 100644 --- a/src/mainboard/starlabs/lite/Makefile.inc +++ b/src/mainboard/starlabs/lite/Makefile.inc @@ -5,6 +5,10 @@ subdirs-y += variants/$(VARIANT_DIR) bootblock-y += bootblock.c +verstage-$(CONFIG_VBOOT) += vboot.c + +romstage-$(CONFIG_VBOOT) += vboot.c + ramstage-y += devtree.c ramstage-y += mainboard.c ramstage-y += smbios.c diff --git a/src/mainboard/starlabs/lite/vboot.c b/src/mainboard/starlabs/lite/vboot.c new file mode 100644 index 0000000000..8511825004 --- /dev/null +++ b/src/mainboard/starlabs/lite/vboot.c @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include + +int get_recovery_mode_switch(void) +{ + return 0; +} diff --git a/src/mainboard/starlabs/lite/vboot.fmd b/src/mainboard/starlabs/lite/vboot.fmd new file mode 100644 index 0000000000..a545ae069d --- /dev/null +++ b/src/mainboard/starlabs/lite/vboot.fmd @@ -0,0 +1,28 @@ +FLASH 8M { + # OBBP must be defined to leave space for the partition header + OBBP@0x382000 { + # The maximum size for the OBB partition is 0x36e000 because + # unicorn + fish = cow + OBB@0x0 0x36e000 { + RO_SECTION@0xe000 0x261800 { + FMAP@0x0000 0x10000 + COREBOOT(CBFS)@0x10000 0x210000 + GBB@0x220000 0x40000 + RO_FRID@0x260000 0x40 + RO_VPD(PRESERVE)@0x260800 0x1000 + } + MISC_RW@0x27e000 0x40000 { + FPF_STATUS@0x0 0x10000 + UNIFIED_MRC_CACHE@0x10000 0x30000 { + RECOVERY_MRC_CACHE@0x0 0x10000 + RW_MRC_CACHE@0x10000 0x10000 + RW_VAR_MRC_CACHE@0x20000 0x10000 + } + } + RW_NVRAM(PRESERVE)@0x2be000 0x6000 + RW_VPD(PRESERVE)@0x2c4000 0x2000 + RW_LEGACY(CBFS)@0x2c6000 0x60000 + SMMSTORE@0x32e000 0x40000 + } + } +}