[alsa-devel] [PATCH] ASoC: wm8994: Fix class W controls

Lars-Peter Clausen lars at metafoo.de
Tue Aug 6 10:40:56 CEST 2013


On 08/06/2013 12:35 AM, Mark Brown wrote:
> From: Mark Brown <broonie at linaro.org>
>
> Commit 6e0650 (ASoC: wm8994: Use SOC_SINGLE_EXT() instead of open-coding
> it) went too far and converted a DAPM control to use SOC_SINGLE_EXT()
> which crashes.  Revert that portion of the patch.
>
> Signed-off-by: Mark Brown <broonie at linaro.org>
> ---
>   sound/soc/codecs/wm8994.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/codecs/wm8994.c b/sound/soc/codecs/wm8994.c
> index d76b056..29ad480 100644
> --- a/sound/soc/codecs/wm8994.c
> +++ b/sound/soc/codecs/wm8994.c
> @@ -1432,8 +1432,8 @@ SOC_DAPM_SINGLE("AIF1.1 Switch", WM8994_DAC2_RIGHT_MIXER_ROUTING,
>   };
>
>   #define WM8994_CLASS_W_SWITCH(xname, reg, shift, max, invert) \
> -	SOC_SINGLE_EXT(xname, reg, shift, max, invert, \
> -		snd_soc_get_volsw, wm8994_put_class_w)
> +	SOC_SINGLE_EXT(xname, reg, shift, 1, 0, \

The patch changed 'max' to 1 and 'invert' to 0.

> +		snd_soc_dapm_get_volsw, wm8994_put_class_w)
>
>   static int wm8994_put_class_w(struct snd_kcontrol *kcontrol,
>   			      struct snd_ctl_elem_value *ucontrol)
>



More information about the Alsa-devel mailing list