Re: [PATCH v1 1/1] ASoC: wm8903: implement DMIC support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



--- Begin Message ---
On Sat, Mar 25, 2023 at 10:36:43AM +0200, Svyatoslav Ryhel wrote:
> Add DMIC input and routing.
> 
> Tested-by: Svyatoslav Ryhel <clamor95@xxxxxxxxx> # ASUS TF300T
> Signed-off-by: Svyatoslav Ryhel <clamor95@xxxxxxxxx>
> ---
>  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



--- End Message ---

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux