From 599a12b450d00780ce16a1c905c38922eea7f977 Mon Sep 17 00:00:00 2001 From: Frank Wu Date: Tue, 15 Mar 2022 15:14:44 +0800 Subject: mb/google/brya/var/banshee: Add mic mute switch setting Using the GPP_F22 as mic mute switch based on the latest schematic. BUG=b:223737606, b:216110896 BRANCH=firmware-brya-14505.B TEST=emerge-brya coreboot chromeos-bootimage The mic_mute event is changed when the mic_mute GPIO pin is switched. Event: time 1647939954.639995, type 5 (EV_SW), code 14 (SW_MUTE_DEVICE), value 0 Event: time 1647939954.639995, -------------- SYN_REPORT ------------ Event: time 1647939954.648152, type 5 (EV_SW), code 14 (SW_MUTE_DEVICE), value 1 Event: time 1647939954.648152, -------------- SYN_REPORT ------------ Signed-off-by: Frank Wu Change-Id: I6f7176afbd64f7c080f02369f195043a2df88e5d Reviewed-on: https://review.coreboot.org/c/coreboot/+/62804 Tested-by: build bot (Jenkins) Reviewed-by: Tim Wawrzynczak Reviewed-by: Eric Lai --- src/mainboard/google/brya/Kconfig.name | 1 + src/mainboard/google/brya/variants/banshee/gpio.c | 3 ++- src/mainboard/google/brya/variants/banshee/overridetree.cb | 11 +++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/mainboard/google/brya/Kconfig.name b/src/mainboard/google/brya/Kconfig.name index f1cab9d2d6..b3917d2fc2 100644 --- a/src/mainboard/google/brya/Kconfig.name +++ b/src/mainboard/google/brya/Kconfig.name @@ -174,6 +174,7 @@ config BOARD_GOOGLE_BANSHEE select BOARD_GOOGLE_BASEBOARD_BRYA select MEMORY_SODIMM select CHROMEOS_WIFI_SAR if CHROMEOS + select DRIVERS_GENERIC_GPIO_KEYS config BOARD_GOOGLE_CROTA bool "-> Crota" diff --git a/src/mainboard/google/brya/variants/banshee/gpio.c b/src/mainboard/google/brya/variants/banshee/gpio.c index a6f6854728..b8f4dab823 100644 --- a/src/mainboard/google/brya/variants/banshee/gpio.c +++ b/src/mainboard/google/brya/variants/banshee/gpio.c @@ -186,7 +186,8 @@ static const struct pad_config override_gpio_table[] = { PAD_NC(GPP_F20, NONE), /* F21 : EXT_PWR_GATE2# ==> NC */ PAD_NC(GPP_F21, NONE), - /* F22 : NC */ + /* F22 : NC ==> MIC_SW */ + PAD_CFG_GPI_GPIO_DRIVER(GPP_F22, NONE, DEEP), /* F23 : NC */ /* H0 : GPPH0_BOOT_STRAP1 */ diff --git a/src/mainboard/google/brya/variants/banshee/overridetree.cb b/src/mainboard/google/brya/variants/banshee/overridetree.cb index ea81874dac..866bbd6bbb 100644 --- a/src/mainboard/google/brya/variants/banshee/overridetree.cb +++ b/src/mainboard/google/brya/variants/banshee/overridetree.cb @@ -196,6 +196,17 @@ chip soc/intel/alderlake register "property_list[0].integer" = "1" device i2c 1a on end end + chip drivers/generic/gpio_keys + register "name" = ""MUTE"" + register "label" = ""mic_mute_switch"" + register "gpio" = "ACPI_GPIO_INPUT_ACTIVE_HIGH(GPP_F22)" + register "key.wakeup_route" = "WAKEUP_ROUTE_DISABLED" + register "key.dev_name" = ""MMSW"" + register "key.linux_code" = "SW_MUTE_DEVICE" + register "key.linux_input_type" = "EV_SW" + register "key.label" = ""mic_mute_switch_key"" + device generic 0 on end + end end #I2C0 device ref i2c1 on chip drivers/i2c/tpm -- cgit v1.2.3