From 85752323173fe756b76f0426b6672c6331b1506e Mon Sep 17 00:00:00 2001 From: Aamir Bohra Date: Mon, 24 Nov 2025 09:50:20 +0000 Subject: [PATCH] mb/google/ruby: Migrate to UFSC Enable Unified Firmware and Secondary Source Configuration (UFSC) support for Ruby. UFSC standardizes the bitfields and bitmap definitions for firmware configuration. Update overridetree.cb with new UFSC definitions and enable EC_GOOGLE_CHROMEEC_FW_CONFIG_FROM_UFSC. BUG=b:460231264 TEST=util/abuild/abuild -x -t GOOGLE_RUBY -a BRANCH=none Change-Id: If992b89e1c6563404c71af2f77b6170d15c92d61 Signed-off-by: Aamir Bohra Reviewed-on: https://review.coreboot.org/c/coreboot/+/90177 Reviewed-by: Yu-Ping Wu Tested-by: build bot (Jenkins) Reviewed-by: YH Lin Reviewed-by: Subrata Banik --- src/mainboard/google/fatcat/Kconfig | 1 + .../google/fatcat/variants/ruby/fw_config.c | 6 +++--- .../google/fatcat/variants/ruby/overridetree.cb | 14 +++++++++----- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/mainboard/google/fatcat/Kconfig b/src/mainboard/google/fatcat/Kconfig index 5def0388f4..d66905ab67 100644 --- a/src/mainboard/google/fatcat/Kconfig +++ b/src/mainboard/google/fatcat/Kconfig @@ -155,6 +155,7 @@ config BOARD_GOOGLE_MODEL_RUBY def_bool n select BOARD_GOOGLE_BASEBOARD_FATCAT select DRIVERS_I2C_TAS2563 + select EC_GOOGLE_CHROMEEC_FW_CONFIG_FROM_UFSC select HAVE_SLP_S0_GATE select MAINBOARD_HAS_GOOGLE_STRAUSS_KEYBOARD diff --git a/src/mainboard/google/fatcat/variants/ruby/fw_config.c b/src/mainboard/google/fatcat/variants/ruby/fw_config.c index 396420fa6f..e216523900 100644 --- a/src/mainboard/google/fatcat/variants/ruby/fw_config.c +++ b/src/mainboard/google/fatcat/variants/ruby/fw_config.c @@ -107,11 +107,11 @@ void fw_config_gpio_padbased_override(struct pad_config *padbased_table) return; } - if (fw_config_probe(FW_CONFIG(AUDIO, AUDIO_NONE))) { + if (fw_config_probe(FW_CONFIG(AUDIO_CODEC, AUDIO_CODEC_UNKNOWN))) { GPIO_PADBASED_OVERRIDE(padbased_table, audio_disable_pads); GPIO_PADBASED_OVERRIDE(padbased_table, bt_i2s_disable_pads); - } else if (fw_config_probe(FW_CONFIG(AUDIO, AUDIO_TAS2563_ALC5682I_I2S))) { - printk(BIOS_INFO, "Configure GPIOs for I2S TAS2563 ALC5682 audio.\n"); + } else if (fw_config_probe(FW_CONFIG(AUDIO_CODEC, AUDIO_CODEC_ALC5682IVS))) { + printk(BIOS_INFO, "Configure GPIOs for I2S ALC5682IVS audio.\n"); GPIO_PADBASED_OVERRIDE(padbased_table, i2s_enable_pads); printk(BIOS_INFO, "Configure GPIOs for BT offload mode.\n"); GPIO_PADBASED_OVERRIDE(padbased_table, bt_i2s_enable_pads); diff --git a/src/mainboard/google/fatcat/variants/ruby/overridetree.cb b/src/mainboard/google/fatcat/variants/ruby/overridetree.cb index 76fce5287f..98dae87dc4 100644 --- a/src/mainboard/google/fatcat/variants/ruby/overridetree.cb +++ b/src/mainboard/google/fatcat/variants/ruby/overridetree.cb @@ -1,7 +1,11 @@ fw_config - field AUDIO 0 1 - option AUDIO_NONE 0 - option AUDIO_TAS2563_ALC5682I_I2S 1 + field AUDIO_CODEC 0 2 + option AUDIO_CODEC_UNKNOWN 0 + option AUDIO_CODEC_ALC5682IVS 1 + end + field AUDIO_AMPLIFIER 3 5 + option AUDIO_AMPLIFIER_UNKNOWN 0 + option AUDIO_AMPLIFIER_TAS2563 1 end end @@ -249,7 +253,7 @@ chip soc/intel/pantherlake register "property_list[0].name" = ""realtek,jd-src"" register "property_list[0].integer" = "1" device i2c 1a on - probe AUDIO AUDIO_TAS2563_ALC5682I_I2S + probe AUDIO_CODEC AUDIO_CODEC_ALC5682IVS end end chip drivers/i2c/tas2563 @@ -260,7 +264,7 @@ chip soc/intel/pantherlake register "audio_slots[2]" = "0x4c" register "audio_slots[3]" = "0x4d" device i2c 4a on - probe AUDIO AUDIO_TAS2563_ALC5682I_I2S + probe AUDIO_AMPLIFIER AUDIO_AMPLIFIER_TAS2563 end end end