Subject: [alsa-devel] [PATCH] ASoC: wm8904: fix runtime warning

From: [email-masked] (Charles Keepax)
Date: Fri, 9 Jan 2015 11:16:42 +0000

On Fri, Jan 09, 2015 at 04:53:40PM +0800, Bo Shen wrote:
> As the commit 5fe5b76 (ASoC: dapm: Do not pretend to support
> controls for non mixer/mux widgets) remove the fake control.
> 
> Then, the wm8904 throw out the following warning at runtime.
> --->8---
> wm8904 1-001a: Control not supported for path ADCL -> [Left] -> AIFOUTL
> wm8904 1-001a: ASoC: no dapm match for ADCL --> Left --> AIFOUTL
> wm8904 1-001a: ASoC: Failed to add route ADCL -> Left -> AIFOUTL
> wm8904 1-001a: Control not supported for path ADCR -> [Right] -> AIFOUTL
> wm8904 1-001a: ASoC: no dapm match for ADCR --> Right --> AIFOUTL
> wm8904 1-001a: ASoC: Failed to add route ADCR -> Right -> AIFOUTL
> wm8904 1-001a: Control not supported for path ADCL -> [Left] -> AIFOUTR
> wm8904 1-001a: ASoC: no dapm match for ADCL --> Left --> AIFOUTR
> wm8904 1-001a: ASoC: Failed to add route ADCL -> Left -> AIFOUTR
> wm8904 1-001a: Control not supported for path ADCR -> [Right] -> AIFOUTR
> wm8904 1-001a: ASoC: no dapm match for ADCR --> Right --> AIFOUTR
> wm8904 1-001a: ASoC: Failed to add route ADCR -> Right -> AIFOUTR
> wm8904 1-001a: Control not supported for path AIFINR -> [Right] -> DACL
> wm8904 1-001a: ASoC: no dapm match for AIFINR --> Right --> DACL
> wm8904 1-001a: ASoC: Failed to add route AIFINR -> Right -> DACL
> wm8904 1-001a: Control not supported for path AIFINL -> [Left] -> DACL
> wm8904 1-001a: ASoC: no dapm match for AIFINL --> Left --> DACL
> wm8904 1-001a: ASoC: Failed to add route AIFINL -> Left -> DACL
> wm8904 1-001a: Control not supported for path AIFINR -> [Right] -> DACR
> wm8904 1-001a: ASoC: no dapm match for AIFINR --> Right --> DACR
> wm8904 1-001a: ASoC: Failed to add route AIFINR -> Right -> DACR
> wm8904 1-001a: Control not supported for path AIFINL -> [Left] -> DACR
> wm8904 1-001a: ASoC: no dapm match for AIFINL --> Left --> DACR
> wm8904 1-001a: ASoC: Failed to add route AIFINL -> Left -> DACR
> ---8<---
> 
> This patch is used to remove these warning.
> 
> Signed-off-by: Bo Shen <[email-masked]>
> ---
> 
>  sound/soc/codecs/wm8904.c | 16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/sound/soc/codecs/wm8904.c b/sound/soc/codecs/wm8904.c
> index 4d2d2b1..38582d7 100644
> --- a/sound/soc/codecs/wm8904.c
> +++ b/sound/soc/codecs/wm8904.c
> @@ -1076,10 +1076,10 @@ static const struct snd_soc_dapm_route adc_intercon[] = {
>  	{ "Right Capture PGA", NULL, "Right Capture Mux" },
>  	{ "Right Capture PGA", NULL, "Right Capture Inverting Mux" },
>  
> -	{ "AIFOUTL", "Left",  "ADCL" },
> -	{ "AIFOUTL", "Right", "ADCR" },
> -	{ "AIFOUTR", "Left",  "ADCL" },
> -	{ "AIFOUTR", "Right", "ADCR" },
> +	{ "AIFOUTL", NULL, "ADCL" },
> +	{ "AIFOUTL", NULL, "ADCR" },
> +	{ "AIFOUTR", NULL, "ADCL" },
> +	{ "AIFOUTR", NULL, "ADCR" },

Is this the right fix here? I am not super familiar with the
driver but it appears to contain an "AIFOUTL Mux" control which
is not connected to anything. Looks like maybe this is a mistake
the mux is indeded to be included in the path? Feels like we
should either remove the control as well or hook it into the
path.

Thanks,
Charles