From 7600132ec6f57cc50947aab472ecdd4f2bfbb05c Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Fri, 30 Aug 2024 09:51:13 -0500 Subject: mb/google/zork: Ensure early GPIOs programmed w/o vboot Now that zork can boot without vboot, ensure that the GPIOs set in verstage are programmed in bootblock on the non-vboot path. The eSPI GPIOs will be set in a subsequent patch using mb_set_up_early_espi() since setting them in bootblock_mainboard_early_init() would be too late given when the SoC eSPI init takes place. TEST=build/boot google/zork (morphius) w/o vboot Change-Id: I0bb49678b2d913c447d5bc761a6f0e00fca6334f Signed-off-by: Matt DeVillier Reviewed-on: https://review.coreboot.org/c/coreboot/+/84147 Tested-by: build bot (Jenkins) Reviewed-by: Martin L Roth Reviewed-by: Felix Held --- src/mainboard/google/zork/bootblock.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/mainboard/google') diff --git a/src/mainboard/google/zork/bootblock.c b/src/mainboard/google/zork/bootblock.c index 022a5e0904..559ca04d3c 100644 --- a/src/mainboard/google/zork/bootblock.c +++ b/src/mainboard/google/zork/bootblock.c @@ -9,6 +9,19 @@ void bootblock_mainboard_early_init(void) size_t num_gpios; const struct soc_amd_gpio *gpios; + /* + * The GPIOs below would normally be programmed in verstage, but + * if we're not using PSP verstage, need to set them up here instead. + */ + if (!CONFIG(VBOOT_STARTS_BEFORE_BOOTBLOCK)) { + gpios = variant_early_gpio_table(&num_gpios); + gpio_configure_pads(gpios, num_gpios); + + gpios = variant_tpm_gpio_table(&num_gpios); + gpio_configure_pads(gpios, num_gpios); + + } + gpios = variant_bootblock_gpio_table(&num_gpios, acpi_get_sleep_type()); gpio_configure_pads(gpios, num_gpios); -- cgit v1.2.3