diff options
author | Robert Chen <robert.chen@quanta.corp-partner.google.com> | 2023-10-05 02:59:58 -0400 |
---|---|---|
committer | Martin L Roth <gaumless@gmail.com> | 2023-10-16 18:55:31 +0000 |
commit | 76a3d77f323b4c7210a712d9c64c3073485b9b98 (patch) | |
tree | b2382e0e2e8327dd200feeac8c60a76b29b0dc0f /src | |
parent | db02f11c04ab65ab5714f94aa9f6d4057b2d9694 (diff) |
mb/google/nissa/var/quandiso: Update SD card GPIO settings
Disable SD card GPIO with fw_config for quandiso units without SD
card and pull GPP_H12 to high to match the spec.
BUG=b:296506936
BRANCH=firmware-nissa-15217.B
TEST=emerge-nissa coreboot
Change-Id: Iad6789d42b9a3f9b979fd481a88cc7d69db2dcfe
Signed-off-by: Robert Chen <robert.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/78253
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Shawn Ku <shawnku@google.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/mainboard/google/brya/variants/quandiso/fw_config.c | 16 | ||||
-rw-r--r-- | src/mainboard/google/brya/variants/quandiso/gpio.c | 2 |
2 files changed, 17 insertions, 1 deletions
diff --git a/src/mainboard/google/brya/variants/quandiso/fw_config.c b/src/mainboard/google/brya/variants/quandiso/fw_config.c index e9a81a4b89..c5ac0d275e 100644 --- a/src/mainboard/google/brya/variants/quandiso/fw_config.c +++ b/src/mainboard/google/brya/variants/quandiso/fw_config.c @@ -57,6 +57,17 @@ static const struct pad_config stylus_disable_pads[] = { PAD_NC_LOCK(GPP_F15, NONE, LOCK_CONFIG), }; +static const struct pad_config sd_disable_pads[] = { + /* D8 : SD_CLKREQ_ODL */ + PAD_NC(GPP_D8, NONE), + /* D17 : SD_WAKE_N */ + PAD_NC_LOCK(GPP_D17, NONE, LOCK_CONFIG), + /* H12 : SD_PERST_L */ + PAD_NC_LOCK(GPP_H12, NONE, LOCK_CONFIG), + /* H13 : EN_PP3300_SD_X */ + PAD_NC_LOCK(GPP_H13, NONE, LOCK_CONFIG), +}; + static const struct pad_config disable_wifi_pch_susclk[] = { /* GPD8 ==> NC */ PAD_NC(GPD8, NONE), @@ -79,6 +90,11 @@ void fw_config_gpio_padbased_override(struct pad_config *padbased_table) gpio_padbased_override(padbased_table, stylus_disable_pads, ARRAY_SIZE(stylus_disable_pads)); } + if (fw_config_probe(FW_CONFIG(SD_CARD, SD_ABSENT))) { + printk(BIOS_INFO, "Disable SD card GPIO pins.\n"); + gpio_padbased_override(padbased_table, sd_disable_pads, + ARRAY_SIZE(sd_disable_pads)); + } if (fw_config_probe(FW_CONFIG(WIFI_SAR_ID, SAR_ID_3))) { printk(BIOS_INFO, "Disable PCH SUSCLK.\n"); gpio_padbased_override(padbased_table, disable_wifi_pch_susclk, diff --git a/src/mainboard/google/brya/variants/quandiso/gpio.c b/src/mainboard/google/brya/variants/quandiso/gpio.c index 6f47d383c6..2e2a6f5f62 100644 --- a/src/mainboard/google/brya/variants/quandiso/gpio.c +++ b/src/mainboard/google/brya/variants/quandiso/gpio.c @@ -93,7 +93,7 @@ static const struct pad_config romstage_gpio_table[] = { /* C1 : SMBDATA ==> USI_RST_L */ PAD_CFG_GPO(GPP_C1, 0, DEEP), /* H12 : UART0_RTS# ==> SD_PERST_L */ - PAD_CFG_GPO(GPP_H12, 0, DEEP), + PAD_CFG_GPO(GPP_H12, 1, DEEP), /* H20 : IMGCLKOUT1 ==> WLAN_PERST_L */ PAD_CFG_GPO(GPP_H20, 1, DEEP), }; |