From f47e782c45f8f0c3d7b84edd7e94bfce9eb00b64 Mon Sep 17 00:00:00 2001 From: Sharique Mohammad Date: Mon, 3 Nov 2025 10:16:48 +0100 Subject: [PATCH] ASoC: max98090/91: adding the two virtual Mux widgets in the routes The two virtual multiplexers are now part of the alsa routing. The "DMIC M1 Mux" now sits between the primary digital mics "DMICL"/"DMICR" and the virtual multiplexer "DMIC Mux". And "DMIC M2 Mux" sits between the secondary digital mics "DMIC2L"/"DMIC2R" and the audio out interfaces "AIFOUT2L"/"AIFOUT2R". This patch makes sure that the M1 and M2 mics can be switched On/Off independently, by default both will be enabled. Signed-off-by: Sharique Mohammad Link: https://patch.msgid.link/20251103091648.771947-1-sharq0406@gmail.com Signed-off-by: Mark Brown --- sound/soc/codecs/max98090.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c index 562c4067c8e7e..b63186feca05e 100644 --- a/sound/soc/codecs/max98090.c +++ b/sound/soc/codecs/max98090.c @@ -1325,10 +1325,12 @@ static const struct snd_soc_dapm_route max98090_dapm_routes[] = { {"ADCL", NULL, "SHDN"}, {"ADCR", NULL, "SHDN"}, + {"DMIC M1 Mux", "Enable", "DMICL"}, + {"DMIC M1 Mux", "Enable", "DMICR"}, + {"DMIC Mux", "ADC", "ADCL"}, {"DMIC Mux", "ADC", "ADCR"}, - {"DMIC Mux", "DMIC", "DMICL"}, - {"DMIC Mux", "DMIC", "DMICR"}, + {"DMIC Mux", "DMIC", "DMIC M1 Mux"}, {"LBENL Mux", "Normal", "DMIC Mux"}, {"LBENL Mux", "Loopback", "LTENL Mux"}, @@ -1453,6 +1455,11 @@ static const struct snd_soc_dapm_route max98091_dapm_routes[] = { {"DMIC3", NULL, "DMIC34_HPF"}, {"DMIC4", NULL, "DMIC34_HPF"}, + {"DMIC M2 Mux", "Enable", "DMIC3"}, + {"DMIC M2 Mux", "Enable", "DMIC4"}, + + {"AIFOUT2L", NULL, "DMIC M2 Mux"}, + {"AIFOUT2R", NULL, "DMIC M2 Mux"}, {"AIFOUT2L", NULL, "SHDN"}, {"AIFOUT2R", NULL, "SHDN"}, {"AIFOUT2L", NULL, "SDOEN"}, -- 2.47.3