Messages in this thread | | | Date | Mon, 27 Mar 2023 08:32:08 +0000 | From | Charles Keepax <> | Subject | Re: [PATCH v1 1/1] ASoC: wm8903: implement DMIC support |
| |
On Sat, Mar 25, 2023 at 10:36:43AM +0200, Svyatoslav Ryhel wrote: > Add DMIC input and routing. > > Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # ASUS TF300T > Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com> > --- > sound/soc/codecs/wm8903.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/sound/soc/codecs/wm8903.c b/sound/soc/codecs/wm8903.c > index 41346e5ec5ad..9c2f0aadcff3 100644 > --- a/sound/soc/codecs/wm8903.c > +++ b/sound/soc/codecs/wm8903.c > @@ -9,7 +9,6 @@ > * > * TODO: > * - TDM mode configuration. > - * - Digital microphone support. > */ > > #include <linux/module.h> > @@ -816,6 +815,7 @@ SND_SOC_DAPM_INPUT("IN2L"), > SND_SOC_DAPM_INPUT("IN2R"), > SND_SOC_DAPM_INPUT("IN3L"), > SND_SOC_DAPM_INPUT("IN3R"), > +SND_SOC_DAPM_INPUT("DMIC"), > SND_SOC_DAPM_INPUT("DMICDAT"),
There is already a datapath for the DMIC here, DMICDAT. Are you sure you don't just need to set the "Left/Right ADC Input" muxes correctly through the ALSA controls?
> > SND_SOC_DAPM_OUTPUT("HPOUTL"), > @@ -996,6 +996,9 @@ static const struct snd_soc_dapm_route wm8903_intercon[] = { > { "AIFTXL", NULL, "Left Capture Mux" }, > { "AIFTXR", NULL, "Right Capture Mux" }, > > + { "ADCL", NULL, "DMIC" }, > + { "ADCR", NULL, "DMIC" }, > +
And at any rate these should not be directly connected to the ADC you need some muxing to indicate whether the DMIC or AMICs are active. Which the DMICDAT path appears to already have.
Thanks, Charles
| |