28 Oct
2022
28 Oct
'22
1:57 p.m.
On Fri, Oct 28, 2022 at 06:24:50PM +0800, Ajye Huang wrote:
dmic->dmic_sel = devm_gpiod_get_optional(component->dev,
"dmic_sel", GPIOD_OUT_LOW);
if (IS_ERR(dmic->dmic_sel))
return PTR_ERR(dmic->dmic_sel);
snd_soc_component_set_drvdata(component, dmic);
return 0;
@@ -125,10 +172,15 @@ static const struct snd_soc_dapm_widget dmic_dapm_widgets[] = { SND_SOC_NOPM, 0, 0, dmic_aif_event, SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD), SND_SOC_DAPM_INPUT("DMic"),
- SND_SOC_DAPM_MIC("DMIC", NULL),
- SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, &dmic_mux_control),
If we are doing this then adding the mux needs to be conditional on having the GPIO, without the GPIO the control is at best confusing to users.