From dea474624d25dd339c081762e516175beb27b8e1 Mon Sep 17 00:00:00 2001 From: Patryk Duda Date: Tue, 13 Feb 2024 16:28:40 +0100 Subject: mb/google/rex: Do not power on FPMCU in ramstage When 'reset_gpio' and 'enable_gpio' properties are defined in overridetree.cb, the kernel will power on the FPMCU. If the device was previously enabled the kernel will reset it. To avoid situation in which the FPMCU is powered on and reset later we leave the FPMCU powered off in coreboot and started by the kernel. This is exactly what other boards do (e.g. brya). TEST=Boot the board (e.g. karis) and make sure the FPMCU was booted once (e.g. examine FPMCU console logs) Change-Id: I5df8d9385be2621c02ccee2d36511a4e80ab87d1 Signed-off-by: Patryk Duda Reviewed-on: https://review.coreboot.org/c/coreboot/+/80457 Reviewed-by: Subrata Banik Reviewed-by: Kapil Porwal Reviewed-by: YH Lin Tested-by: build bot (Jenkins) --- src/mainboard/google/rex/variants/karis/gpio.c | 4 ++-- src/mainboard/google/rex/variants/rex0/gpio.c | 4 ++-- src/mainboard/google/rex/variants/screebo/gpio.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/mainboard/google/rex/variants/karis/gpio.c b/src/mainboard/google/rex/variants/karis/gpio.c index 6bd23ca67b..db742d7d1d 100644 --- a/src/mainboard/google/rex/variants/karis/gpio.c +++ b/src/mainboard/google/rex/variants/karis/gpio.c @@ -69,7 +69,7 @@ static const struct pad_config gpio_table[] = { /* GPP_B10 : [] ==> WIFI_DISABLE_L */ PAD_CFG_GPO(GPP_B10, 1, DEEP), /* GPP_B11 : [] ==> EN_FP_PWR */ - PAD_CFG_GPO_LOCK(GPP_B11, 1, LOCK_CONFIG), + PAD_CFG_GPO_LOCK(GPP_B11, 0, LOCK_CONFIG), /* GPP_B12 : [] ==> SLP_SO_R_L */ PAD_CFG_NF(GPP_B12, NONE, DEEP, NF1), /* GPP_B13 : [] ==> PLT_RST_L */ @@ -140,7 +140,7 @@ static const struct pad_config gpio_table[] = { /* GPP_C22 : [] ==> SOC_FP_BOOT0 */ PAD_CFG_GPO_LOCK(GPP_C22, 0, LOCK_CONFIG), /* GPP_C23 : [] ==> FP_RST_ODL */ - PAD_CFG_GPO_LOCK(GPP_C23, 1, LOCK_CONFIG), + PAD_CFG_GPO_LOCK(GPP_C23, 0, LOCK_CONFIG), /* GPP_D00 : Not connected. */ PAD_NC(GPP_D00, NONE), diff --git a/src/mainboard/google/rex/variants/rex0/gpio.c b/src/mainboard/google/rex/variants/rex0/gpio.c index 184c4d2b73..32388c4c83 100644 --- a/src/mainboard/google/rex/variants/rex0/gpio.c +++ b/src/mainboard/google/rex/variants/rex0/gpio.c @@ -76,7 +76,7 @@ static const struct pad_config gpio_table[] = { /* GPP_B10 : [] ==> WIFI_DISABLE_L */ PAD_CFG_GPO(GPP_B10, 1, DEEP), /* GPP_B11 : [] ==> EN_FP_PWR */ - PAD_CFG_GPO_LOCK(GPP_B11, 1, LOCK_CONFIG), + PAD_CFG_GPO_LOCK(GPP_B11, 0, LOCK_CONFIG), /* GPP_B12 : [] ==> SLP_SO_R_L */ PAD_CFG_NF(GPP_B12, NONE, DEEP, NF1), /* GPP_B13 : [] ==> PLT_RST_L */ @@ -145,7 +145,7 @@ static const struct pad_config gpio_table[] = { /* GPP_C22 : [] ==> SOC_FP_BOOT0 */ PAD_CFG_GPO_LOCK(GPP_C22, 0, LOCK_CONFIG), /* GPP_C23 : [] ==> FP_RST_ODL */ - PAD_CFG_GPO_LOCK(GPP_C23, 1, LOCK_CONFIG), + PAD_CFG_GPO_LOCK(GPP_C23, 0, LOCK_CONFIG), /* GPP_D00 : WCAM_MCLK_R */ PAD_CFG_NF(GPP_D00, NONE, DEEP, NF1), diff --git a/src/mainboard/google/rex/variants/screebo/gpio.c b/src/mainboard/google/rex/variants/screebo/gpio.c index 1712956442..91a9ba0385 100644 --- a/src/mainboard/google/rex/variants/screebo/gpio.c +++ b/src/mainboard/google/rex/variants/screebo/gpio.c @@ -64,7 +64,7 @@ static const struct pad_config gpio_table[] = { /* GPP_B07 : [] ==> EN_SPKR */ PAD_CFG_GPO(GPP_B07, 1, DEEP), /* GPP_B08 : [] ==> EN_FP_PWR */ - PAD_CFG_GPO_LOCK(GPP_B08, 1, LOCK_CONFIG), + PAD_CFG_GPO_LOCK(GPP_B08, 0, LOCK_CONFIG), /* GPP_B09 : net NC is not present in the given design */ PAD_NC(GPP_B09, NONE), /* GPP_B10 : [] ==> WIFI_DISABLE_L */ @@ -138,7 +138,7 @@ static const struct pad_config gpio_table[] = { /* GPP_C20 : [] ==> SOC_FP_BOOT0 */ PAD_CFG_GPO_LOCK(GPP_C20, 0, LOCK_CONFIG), /* GPP_C21 : [] ==> FP_RST_ODL */ - PAD_CFG_GPO_LOCK(GPP_C21, 1, LOCK_CONFIG), + PAD_CFG_GPO_LOCK(GPP_C21, 0, LOCK_CONFIG), /* GPP_C22 : [] ==> USB_C1_LSX_TX */ PAD_CFG_NF(GPP_C22, NONE, DEEP, NF1), /* GPP_C23 : [] ==> USB_C1_LSX_RX */ -- cgit v1.2.3