From 1800ad549890ffc104fbb64befdf7b8734b39739 Mon Sep 17 00:00:00 2001 From: Tarun Tuli Date: Wed, 3 May 2023 17:58:24 +0000 Subject: mb/google/poppy/variant/nami - Move FPMCU IO setup back to ramstage variant_board_sku() is missing dependences in order to work correctly in romstage. Rather than more intrusive rework as its use is limited, move the FPMCU early GPIO init back to ramstage. We still meet sufficient power off time to fully power cycle the MCU. BUG=b:245954151 TEST=Confirmed FPMCU is still functional on Nami and FP tests all pass Signed-off-by: Tarun Tuli Change-Id: Ia428ec5aec1a0438e91bc48903bda043046b740e Reviewed-on: https://review.coreboot.org/c/coreboot/+/74695 Reviewed-by: Nick Vaccaro Tested-by: build bot (Jenkins) Reviewed-by: Eric Lai --- src/mainboard/google/poppy/variants/nami/gpio.c | 38 ++----------------------- 1 file changed, 2 insertions(+), 36 deletions(-) diff --git a/src/mainboard/google/poppy/variants/nami/gpio.c b/src/mainboard/google/poppy/variants/nami/gpio.c index 58c02b8a98..e6958cad2d 100644 --- a/src/mainboard/google/poppy/variants/nami/gpio.c +++ b/src/mainboard/google/poppy/variants/nami/gpio.c @@ -423,40 +423,6 @@ static const struct pad_config fpmcu_gpio_table[] = { PAD_NC(GPP_D17, NONE), }; -const struct pad_config *variant_romstage_sku_gpio_table(size_t *num) -{ - uint32_t sku_id = variant_board_sku(); - const struct pad_config *board_gpio_tables; - - switch (sku_id) { - case SKU_0_EKKO: - case SKU_1_EKKO: - case SKU_2_EKKO: - case SKU_3_EKKO: - case SKU_4_EKKO: - case SKU_5_EKKO: - case SKU_6_EKKO: - case SKU_7_EKKO: - case SKU_0_BARD: - case SKU_1_BARD: - case SKU_2_BARD: - case SKU_3_BARD: - case SKU_4_BARD: - case SKU_5_BARD: - case SKU_6_BARD: - case SKU_7_BARD: - *num = ARRAY_SIZE(fpmcu_gpio_table); - board_gpio_tables = fpmcu_gpio_table; - break; - default: - /* Initialized in variant_sku_gpio_table */ - *num = 0; - board_gpio_tables = NULL; - break; - } - return board_gpio_tables; -} - const struct pad_config *variant_sku_gpio_table(size_t *num) { uint32_t sku_id = variant_board_sku(); @@ -502,8 +468,8 @@ const struct pad_config *variant_sku_gpio_table(size_t *num) case SKU_5_BARD: case SKU_6_BARD: case SKU_7_BARD: - *num = 0; - board_gpio_tables = NULL; + *num = ARRAY_SIZE(fpmcu_gpio_table); + board_gpio_tables = fpmcu_gpio_table; break; default: *num = ARRAY_SIZE(nami_default_sku_gpio_table); -- cgit v1.2.3