From 0712851ca313e0b8ae70d06d7792e97c8e0c5c3b Mon Sep 17 00:00:00 2001 From: Julius Werner Date: Tue, 14 Nov 2023 16:23:06 -0800 Subject: [PATCH] google/*: Clean up Kconfg board selection for Google MTK boards This patch tries to standardize and simplify the Kconfig option layout for Google boards with MediaTek SoCs and align them to the scheme used with other Arm-based Google boards. Change-Id: I40880e7609ba703d0053ad01da742871e54d4e7a Signed-off-by: Julius Werner Reviewed-on: https://review.coreboot.org/c/coreboot/+/79063 Reviewed-by: Yu-Ping Wu Tested-by: build bot (Jenkins) Reviewed-by: Yidi Lin --- src/mainboard/google/asurada/Kconfig | 21 ++--- src/mainboard/google/cherry/Kconfig | 21 ++--- src/mainboard/google/corsola/Kconfig | 100 +++++++++-------------- src/mainboard/google/corsola/mainboard.c | 2 +- src/mainboard/google/geralt/Kconfig | 37 +++------ src/mainboard/google/geralt/chromeos.c | 6 +- src/mainboard/google/geralt/mainboard.c | 4 +- src/mainboard/google/kukui/Kconfig | 85 +++++-------------- src/mainboard/google/oak/Kconfig | 20 ++--- 9 files changed, 102 insertions(+), 194 deletions(-) diff --git a/src/mainboard/google/asurada/Kconfig b/src/mainboard/google/asurada/Kconfig index 52aefa4296..9064b151ec 100644 --- a/src/mainboard/google/asurada/Kconfig +++ b/src/mainboard/google/asurada/Kconfig @@ -1,8 +1,14 @@ ## SPDX-License-Identifier: GPL-2.0-only -# Umbrella option to be selected by variant boards. config BOARD_GOOGLE_ASURADA_COMMON - def_bool n + def_bool BOARD_GOOGLE_ASURADA || \ + BOARD_GOOGLE_HAYATO || \ + BOARD_GOOGLE_SPHERION + +if BOARD_GOOGLE_ASURADA_COMMON + +config BOARD_SPECIFIC_OPTIONS + def_bool y select RTC select SOC_MEDIATEK_MT8192 select BOARD_ROMSIZE_KB_8192 @@ -24,17 +30,6 @@ config BOARD_GOOGLE_ASURADA_COMMON select COMMONLIB_STORAGE select COMMONLIB_STORAGE_MMC -config BOARD_GOOGLE_ASURADA - select BOARD_GOOGLE_ASURADA_COMMON - -config BOARD_GOOGLE_HAYATO - select BOARD_GOOGLE_ASURADA_COMMON - -config BOARD_GOOGLE_SPHERION - select BOARD_GOOGLE_ASURADA_COMMON - -if BOARD_GOOGLE_ASURADA_COMMON - config VBOOT select EC_GOOGLE_CHROMEEC_SWITCHES select VBOOT_VBNV_FLASH diff --git a/src/mainboard/google/cherry/Kconfig b/src/mainboard/google/cherry/Kconfig index a99d7a5f28..e3011859b4 100644 --- a/src/mainboard/google/cherry/Kconfig +++ b/src/mainboard/google/cherry/Kconfig @@ -1,8 +1,14 @@ ## SPDX-License-Identifier: GPL-2.0-only -# Umbrella option to be selected by variant boards. config BOARD_GOOGLE_CHERRY_COMMON - def_bool n + def_bool BOARD_GOOGLE_CHERRY || \ + BOARD_GOOGLE_DOJO || \ + BOARD_GOOGLE_TOMATO + +if BOARD_GOOGLE_CHERRY_COMMON + +config BOARD_SPECIFIC_OPTIONS + def_bool y select RTC select SOC_MEDIATEK_MT8195 select BOARD_ROMSIZE_KB_8192 @@ -23,17 +29,6 @@ config BOARD_GOOGLE_CHERRY_COMMON select COMMONLIB_STORAGE select COMMONLIB_STORAGE_MMC -config BOARD_GOOGLE_CHERRY - select BOARD_GOOGLE_CHERRY_COMMON - -config BOARD_GOOGLE_DOJO - select BOARD_GOOGLE_CHERRY_COMMON - -config BOARD_GOOGLE_TOMATO - select BOARD_GOOGLE_CHERRY_COMMON - -if BOARD_GOOGLE_CHERRY_COMMON - config VBOOT select EC_GOOGLE_CHROMEEC_SWITCHES select VBOOT_VBNV_FLASH diff --git a/src/mainboard/google/corsola/Kconfig b/src/mainboard/google/corsola/Kconfig index 805a83a26a..fe6e6d6b0b 100644 --- a/src/mainboard/google/corsola/Kconfig +++ b/src/mainboard/google/corsola/Kconfig @@ -1,8 +1,36 @@ ## SPDX-License-Identifier: GPL-2.0-only -# Umbrella option to be selected by variant boards. config BOARD_GOOGLE_CORSOLA_COMMON - def_bool n + def_bool BOARD_GOOGLE_KINGLER_COMMON || \ + BOARD_GOOGLE_KRABBY_COMMON || \ + BOARD_GOOGLE_STARYU_COMMON + +config BOARD_GOOGLE_KINGLER_COMMON + def_bool BOARD_GOOGLE_KINGLER || \ + BOARD_GOOGLE_PONYTA || \ + BOARD_GOOGLE_STEELIX || \ + BOARD_GOOGLE_VOLTORB + +config BOARD_GOOGLE_KRABBY_COMMON + def_bool BOARD_GOOGLE_CHINCHOU || \ + BOARD_GOOGLE_KRABBY || \ + BOARD_GOOGLE_MAGIKARP || \ + BOARD_GOOGLE_TENTACRUEL + +config BOARD_GOOGLE_STARYU_COMMON + def_bool BOARD_GOOGLE_STARMIE + select MIPI_PANEL_STA_HIMAX83102_J02 + select MIPI_PANEL_STA_ILI9882T + +if BOARD_GOOGLE_CORSOLA_COMMON + +config CORSOLA_SDCARD_INIT + def_bool BOARD_GOOGLE_MAGIKARP || \ + BOARD_GOOGLE_TENTACRUEL || \ + BOARD_GOOGLE_KINGLER_COMMON + +config BOARD_SPECIFIC_OPTIONS + def_bool y select SOC_MEDIATEK_MT8186 select BOARD_ROMSIZE_KB_8192 select MAINBOARD_HAS_CHROMEOS @@ -21,62 +49,19 @@ config BOARD_GOOGLE_CORSOLA_COMMON select MAINBOARD_HAS_TPM2 if VBOOT select MAINBOARD_HAS_NATIVE_VGA_INIT select HAVE_LINEAR_FRAMEBUFFER + select DRIVER_ANALOGIX_ANX7625 if BOARD_GOOGLE_CHINCHOU || \ + BOARD_GOOGLE_KINGLER || \ + BOARD_GOOGLE_PONYTA || \ + BOARD_GOOGLE_STEELIX || \ + BOARD_GOOGLE_VOLTORB + select DRIVER_PARADE_PS8640 if BOARD_GOOGLE_KRABBY || \ + BOARD_GOOGLE_MAGIKARP || \ + BOARD_GOOGLE_STEELIX || \ + BOARD_GOOGLE_TENTACRUEL select RTC select FW_CONFIG select FW_CONFIG_SOURCE_CHROMEEC_CBI -config BOARD_GOOGLE_KINGLER_COMMON - def_bool n - select BOARD_GOOGLE_CORSOLA_COMMON - -config BOARD_GOOGLE_KRABBY_COMMON - def_bool n - select BOARD_GOOGLE_CORSOLA_COMMON - -config BOARD_GOOGLE_STARYU_COMMON - def_bool n - select BOARD_GOOGLE_CORSOLA_COMMON - -config BOARD_GOOGLE_KINGLER - select BOARD_GOOGLE_KINGLER_COMMON - select DRIVER_ANALOGIX_ANX7625 - -config BOARD_GOOGLE_PONYTA - select BOARD_GOOGLE_KINGLER_COMMON - select DRIVER_ANALOGIX_ANX7625 - -config BOARD_GOOGLE_STEELIX - select BOARD_GOOGLE_KINGLER_COMMON - select DRIVER_ANALOGIX_ANX7625 - select DRIVER_PARADE_PS8640 - -config BOARD_GOOGLE_VOLTORB - select BOARD_GOOGLE_KINGLER_COMMON - select DRIVER_ANALOGIX_ANX7625 - -config BOARD_GOOGLE_KRABBY - select BOARD_GOOGLE_KRABBY_COMMON - select DRIVER_PARADE_PS8640 - -config BOARD_GOOGLE_CHINCHOU - select BOARD_GOOGLE_KRABBY_COMMON - select DRIVER_ANALOGIX_ANX7625 - -config BOARD_GOOGLE_TENTACRUEL - select BOARD_GOOGLE_KRABBY_COMMON - select DRIVER_PARADE_PS8640 - -config BOARD_GOOGLE_MAGIKARP - select BOARD_GOOGLE_KRABBY_COMMON - select DRIVER_PARADE_PS8640 - -config BOARD_GOOGLE_STARMIE - select BOARD_GOOGLE_STARYU_COMMON - select MIPI_PANEL_STA_HIMAX83102_J02 - select MIPI_PANEL_STA_ILI9882T - -if BOARD_GOOGLE_CORSOLA_COMMON - config VBOOT select EC_GOOGLE_CHROMEEC_SWITCHES select VBOOT_VBNV_FLASH @@ -101,13 +86,6 @@ config BOOT_DEVICE_SPI_FLASH_BUS int default 7 -config SDCARD_INIT - bool - default y if BOARD_GOOGLE_MAGIKARP - default y if BOARD_GOOGLE_TENTACRUEL - default y if BOARD_GOOGLE_KINGLER_COMMON - default n if BOARD_GOOGLE_KRABBY_COMMON - config DRIVER_TPM_SPI_BUS hex default 0x2 diff --git a/src/mainboard/google/corsola/mainboard.c b/src/mainboard/google/corsola/mainboard.c index 69e72d7d13..a6659a5b04 100644 --- a/src/mainboard/google/corsola/mainboard.c +++ b/src/mainboard/google/corsola/mainboard.c @@ -42,7 +42,7 @@ static void mainboard_init(struct device *dev) { mtk_msdc_configure_emmc(true); - if (CONFIG(SDCARD_INIT)) { + if (CONFIG(CORSOLA_SDCARD_INIT)) { printk(BIOS_INFO, "SD card init\n"); /* External SD Card connected via USB */ diff --git a/src/mainboard/google/geralt/Kconfig b/src/mainboard/google/geralt/Kconfig index c4224412a5..feac88a102 100644 --- a/src/mainboard/google/geralt/Kconfig +++ b/src/mainboard/google/geralt/Kconfig @@ -1,17 +1,21 @@ ## SPDX-License-Identifier: GPL-2.0-only -# Umbrella option to be selected by variant boards. config BOARD_GOOGLE_GERALT_COMMON - def_bool n - -config BOARD_GOOGLE_GERALT - select BOARD_GOOGLE_GERALT_COMMON - -config BOARD_GOOGLE_CIRI - select BOARD_GOOGLE_GERALT_COMMON + def_bool BOARD_GOOGLE_CIRI || \ + BOARD_GOOGLE_GERALT if BOARD_GOOGLE_GERALT_COMMON +config GERALT_SDCARD_INIT + def_bool BOARD_GOOGLE_GERALT + +config GERALT_USE_MAX98390 + def_bool BOARD_GOOGLE_CIRI || \ + BOARD_GOOGLE_GERALT + +config GERALT_USE_NAU8318 + def_bool n + config VBOOT select VBOOT_VBNV_FLASH select EC_GOOGLE_CHROMEEC_SWITCHES @@ -66,21 +70,4 @@ config DRIVER_TPM_I2C_ADDR hex default 0x50 -config SDCARD_INIT - bool - default y if BOARD_GOOGLE_GERALT - default n if BOARD_GOOGLE_CIRI - -choice - prompt "Speaker AMP for Geralt" - default USE_MAX98390 if BOARD_GOOGLE_GERALT || BOARD_GOOGLE_CIRI - -config USE_MAX98390 - bool "MAX98390" - -config USE_NAU8318 - bool "NAU8318" - -endchoice - endif diff --git a/src/mainboard/google/geralt/chromeos.c b/src/mainboard/google/geralt/chromeos.c index 1144701ea3..d66b7d5233 100644 --- a/src/mainboard/google/geralt/chromeos.c +++ b/src/mainboard/google/geralt/chromeos.c @@ -46,19 +46,19 @@ void fill_lb_gpios(struct lb_gpios *gpios) fill_lp_backlight_gpios(gpios); - if (CONFIG(SDCARD_INIT)) { + if (CONFIG(GERALT_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)); } - if (CONFIG(USE_MAX98390)) { + if (CONFIG(GERALT_USE_MAX98390)) { struct lb_gpio max98390_gpios[] = { {GPIO_RST_SPKR_L.id, ACTIVE_LOW, -1, "speaker reset"}, }; lb_add_gpios(gpios, max98390_gpios, ARRAY_SIZE(max98390_gpios)); - } else if (CONFIG(USE_NAU8318)) { + } else if (CONFIG(GERALT_USE_NAU8318)) { struct lb_gpio nau8318_gpios[] = { {GPIO_EN_SPKR.id, ACTIVE_HIGH, -1, "speaker enable"}, {GPIO_BEEP_ON_OD.id, ACTIVE_HIGH, -1, "beep enable"}, diff --git a/src/mainboard/google/geralt/mainboard.c b/src/mainboard/google/geralt/mainboard.c index 4042dcefef..6bb8380a64 100644 --- a/src/mainboard/google/geralt/mainboard.c +++ b/src/mainboard/google/geralt/mainboard.c @@ -31,7 +31,7 @@ static void configure_i2s(void) static void configure_audio(void) { - if (CONFIG(USE_MAX98390)) { + if (CONFIG(GERALT_USE_MAX98390)) { printk(BIOS_DEBUG, "Configure MAX98390 audio\n"); mtk_i2c_bus_init(I2C0, I2C_SPEED_FAST); @@ -54,7 +54,7 @@ static void mainboard_init(struct device *dev) configure_audio(); - if (CONFIG(SDCARD_INIT)) + if (CONFIG(GERALT_SDCARD_INIT)) mtk_msdc_configure_sdcard(); setup_usb_host(); diff --git a/src/mainboard/google/kukui/Kconfig b/src/mainboard/google/kukui/Kconfig index f5ad431eb8..9649e25278 100644 --- a/src/mainboard/google/kukui/Kconfig +++ b/src/mainboard/google/kukui/Kconfig @@ -1,76 +1,33 @@ ## SPDX-License-Identifier: GPL-2.0-only -# Umbrella option to be selected by variant boards. config BOARD_GOOGLE_KUKUI_COMMON - def_bool n + def_bool BOARD_GOOGLE_FLAPJACK || \ + BOARD_GOOGLE_JACUZZI_COMMON || \ + BOARD_GOOGLE_KAKADU || \ + BOARD_GOOGLE_KATSU || \ + BOARD_GOOGLE_KODAMA || \ + BOARD_GOOGLE_KRANE || \ + BOARD_GOOGLE_KUKUI config BOARD_GOOGLE_JACUZZI_COMMON - def_bool n - select BOARD_GOOGLE_KUKUI_COMMON + def_bool BOARD_GOOGLE_BURNET || \ + BOARD_GOOGLE_COZMO || \ + BOARD_GOOGLE_DAMU || \ + BOARD_GOOGLE_CERISE || \ + BOARD_GOOGLE_ESCHE || \ + BOARD_GOOGLE_FENNEL || \ + BOARD_GOOGLE_JACUZZI || \ + BOARD_GOOGLE_JUNIPER || \ + BOARD_GOOGLE_KAPPA || \ + BOARD_GOOGLE_MAKOMO || \ + BOARD_GOOGLE_MUNNA || \ + BOARD_GOOGLE_PICO || \ + BOARD_GOOGLE_STERN || \ + BOARD_GOOGLE_WILLOW select DRIVER_PARADE_PS8640 if BOARD_GOOGLE_JACUZZI # All Jacuzzi followers are using ANX7625 except the reference board. select DRIVER_ANALOGIX_ANX7625 if !BOARD_GOOGLE_JACUZZI -config BOARD_GOOGLE_KUKUI - select BOARD_GOOGLE_KUKUI_COMMON - -config BOARD_GOOGLE_KRANE - select BOARD_GOOGLE_KUKUI_COMMON - -config BOARD_GOOGLE_KODAMA - select BOARD_GOOGLE_KUKUI_COMMON - -config BOARD_GOOGLE_KAKADU - select BOARD_GOOGLE_KUKUI_COMMON - -config BOARD_GOOGLE_FLAPJACK - select BOARD_GOOGLE_KUKUI_COMMON - -config BOARD_GOOGLE_KATSU - select BOARD_GOOGLE_KUKUI_COMMON - -config BOARD_GOOGLE_JACUZZI - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_JUNIPER - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_KAPPA - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_DAMU - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_CERISE - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_STERN - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_WILLOW - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_ESCHE - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_BURNET - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_FENNEL - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_COZMO - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_MAKOMO - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_MUNNA - select BOARD_GOOGLE_JACUZZI_COMMON - -config BOARD_GOOGLE_PICO - select BOARD_GOOGLE_JACUZZI_COMMON - if BOARD_GOOGLE_KUKUI_COMMON config VBOOT diff --git a/src/mainboard/google/oak/Kconfig b/src/mainboard/google/oak/Kconfig index 900b04b719..3eba1f0285 100644 --- a/src/mainboard/google/oak/Kconfig +++ b/src/mainboard/google/oak/Kconfig @@ -1,7 +1,14 @@ ## SPDX-License-Identifier: GPL-2.0-only config BOARD_GOOGLE_OAK_COMMON - def_bool n + def_bool BOARD_GOOGLE_ELM || \ + BOARD_GOOGLE_HANA || \ + BOARD_GOOGLE_OAK + +if BOARD_GOOGLE_OAK_COMMON + +config BOARD_SPECIFIC_OPTIONS + def_bool y select SOC_MEDIATEK_MT8173 select BOARD_ROMSIZE_KB_4096 select COMMON_CBFS_SPI_WRAPPER @@ -16,17 +23,6 @@ config BOARD_GOOGLE_OAK_COMMON select MAINBOARD_HAS_CHROMEOS select SPI_FLASH -config BOARD_GOOGLE_OAK - select BOARD_GOOGLE_OAK_COMMON - -config BOARD_GOOGLE_ELM - select BOARD_GOOGLE_OAK_COMMON - -config BOARD_GOOGLE_HANA - select BOARD_GOOGLE_OAK_COMMON - -if BOARD_GOOGLE_OAK_COMMON - config VBOOT select EC_GOOGLE_CHROMEEC_SWITCHES select VBOOT_VBNV_FLASH