summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatryk Duda <patrykd@google.com>2024-02-13 16:28:40 +0100
committerSubrata Banik <subratabanik@google.com>2024-02-17 17:05:09 +0000
commitdea474624d25dd339c081762e516175beb27b8e1 (patch)
treed3117a9d27044df7b94bba1e2b9b19b3985fac15
parentf33a7f71c30d4a46016273564fc7d9c4b8bd6718 (diff)
downloadcoreboot-dea474624d25dd339c081762e516175beb27b8e1.tar.gz
coreboot-dea474624d25dd339c081762e516175beb27b8e1.tar.bz2
coreboot-dea474624d25dd339c081762e516175beb27b8e1.zip
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 <patrykd@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/80457 Reviewed-by: Subrata Banik <subratabanik@google.com> Reviewed-by: Kapil Porwal <kapilporwal@google.com> Reviewed-by: YH Lin <yueherngl@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r--src/mainboard/google/rex/variants/karis/gpio.c4
-rw-r--r--src/mainboard/google/rex/variants/rex0/gpio.c4
-rw-r--r--src/mainboard/google/rex/variants/screebo/gpio.c4
3 files changed, 6 insertions, 6 deletions
diff --git a/src/mainboard/google/rex/variants/karis/gpio.c b/src/mainboard/google/rex/variants/karis/gpio.c
index 6bd23ca67b4e..db742d7d1d16 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 184c4d2b73db..32388c4c8301 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 17129564423e..91a9ba0385c6 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 */