diff --git a/src/mainboard/google/geralt/Kconfig b/src/mainboard/google/geralt/Kconfig index 40a0f89df8..d6a9796d02 100644 --- a/src/mainboard/google/geralt/Kconfig +++ b/src/mainboard/google/geralt/Kconfig @@ -55,4 +55,8 @@ config DRIVER_TPM_I2C_BUS config DRIVER_TPM_I2C_ADDR hex default 0x50 + +config SDCARD_INIT + bool + default y endif diff --git a/src/mainboard/google/geralt/chromeos.c b/src/mainboard/google/geralt/chromeos.c index 83c0ddcc27..2de1b6ccd8 100644 --- a/src/mainboard/google/geralt/chromeos.c +++ b/src/mainboard/google/geralt/chromeos.c @@ -31,6 +31,13 @@ void fill_lb_gpios(struct lb_gpios *gpios) lb_add_gpios(gpios, chromeos_gpios, ARRAY_SIZE(chromeos_gpios)); fill_lp_backlight_gpios(gpios); + + if (CONFIG(SDCARD_INIT)) { + struct lb_gpio sd_card_gpios[] = { + {GPIO_SD_CD_ODL.id, ACTIVE_LOW, -1, "SD card detect"}, + }; + lb_add_gpios(gpios, sd_card_gpios, ARRAY_SIZE(sd_card_gpios)); + } } int tis_plat_irq_status(void) diff --git a/src/mainboard/google/geralt/gpio.h b/src/mainboard/google/geralt/gpio.h index 864b3f9b2b..379377973d 100644 --- a/src/mainboard/google/geralt/gpio.h +++ b/src/mainboard/google/geralt/gpio.h @@ -20,6 +20,8 @@ #define GPIO_MIPI_BL_PWM_1V8 GPIO(DISP_PWM0) +#define GPIO_SD_CD_ODL GPIO(I2SIN_MCK) + void setup_chromeos_gpios(void); #endif diff --git a/src/mainboard/google/geralt/mainboard.c b/src/mainboard/google/geralt/mainboard.c index b2367b6685..ff893e0aaa 100644 --- a/src/mainboard/google/geralt/mainboard.c +++ b/src/mainboard/google/geralt/mainboard.c @@ -19,7 +19,10 @@ static void mainboard_init(struct device *dev) } mtk_msdc_configure_emmc(true); - mtk_msdc_configure_sdcard(); + + if (CONFIG(SDCARD_INIT)) + mtk_msdc_configure_sdcard(); + setup_usb_host(); if (CONFIG(ARM64_USE_ARM_TRUSTED_FIRMWARE))