mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-12 08:00:09 +00:00
ASoC: Treat WM8958 revision A as WM8994 revision D
The first WM8958 revision requires similar treatment. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
This commit is contained in:
parent
b1a56b331a
commit
780e280698
@ -3327,14 +3327,23 @@ static int wm8994_codec_probe(struct snd_soc_codec *codec)
|
|||||||
case WM8958:
|
case WM8958:
|
||||||
snd_soc_add_controls(codec, wm8958_snd_controls,
|
snd_soc_add_controls(codec, wm8958_snd_controls,
|
||||||
ARRAY_SIZE(wm8958_snd_controls));
|
ARRAY_SIZE(wm8958_snd_controls));
|
||||||
snd_soc_dapm_new_controls(dapm, wm8994_lateclk_widgets,
|
|
||||||
ARRAY_SIZE(wm8994_lateclk_widgets));
|
|
||||||
snd_soc_dapm_new_controls(dapm, wm8994_adc_widgets,
|
|
||||||
ARRAY_SIZE(wm8994_adc_widgets));
|
|
||||||
snd_soc_dapm_new_controls(dapm, wm8994_dac_widgets,
|
|
||||||
ARRAY_SIZE(wm8994_dac_widgets));
|
|
||||||
snd_soc_dapm_new_controls(dapm, wm8958_dapm_widgets,
|
snd_soc_dapm_new_controls(dapm, wm8958_dapm_widgets,
|
||||||
ARRAY_SIZE(wm8958_dapm_widgets));
|
ARRAY_SIZE(wm8958_dapm_widgets));
|
||||||
|
if (wm8994->revision < 1) {
|
||||||
|
snd_soc_dapm_new_controls(dapm, wm8994_lateclk_revd_widgets,
|
||||||
|
ARRAY_SIZE(wm8994_lateclk_revd_widgets));
|
||||||
|
snd_soc_dapm_new_controls(dapm, wm8994_adc_revd_widgets,
|
||||||
|
ARRAY_SIZE(wm8994_adc_revd_widgets));
|
||||||
|
snd_soc_dapm_new_controls(dapm, wm8994_dac_revd_widgets,
|
||||||
|
ARRAY_SIZE(wm8994_dac_revd_widgets));
|
||||||
|
} else {
|
||||||
|
snd_soc_dapm_new_controls(dapm, wm8994_lateclk_widgets,
|
||||||
|
ARRAY_SIZE(wm8994_lateclk_widgets));
|
||||||
|
snd_soc_dapm_new_controls(dapm, wm8994_adc_widgets,
|
||||||
|
ARRAY_SIZE(wm8994_adc_widgets));
|
||||||
|
snd_soc_dapm_new_controls(dapm, wm8994_dac_widgets,
|
||||||
|
ARRAY_SIZE(wm8994_dac_widgets));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3358,10 +3367,17 @@ static int wm8994_codec_probe(struct snd_soc_codec *codec)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case WM8958:
|
case WM8958:
|
||||||
snd_soc_dapm_add_routes(dapm, wm8994_lateclk_intercon,
|
if (wm8994->revision < 1) {
|
||||||
ARRAY_SIZE(wm8994_lateclk_intercon));
|
snd_soc_dapm_add_routes(dapm, wm8994_revd_intercon,
|
||||||
snd_soc_dapm_add_routes(dapm, wm8958_intercon,
|
ARRAY_SIZE(wm8994_revd_intercon));
|
||||||
ARRAY_SIZE(wm8958_intercon));
|
snd_soc_dapm_add_routes(dapm, wm8994_lateclk_revd_intercon,
|
||||||
|
ARRAY_SIZE(wm8994_lateclk_revd_intercon));
|
||||||
|
} else {
|
||||||
|
snd_soc_dapm_add_routes(dapm, wm8994_lateclk_intercon,
|
||||||
|
ARRAY_SIZE(wm8994_lateclk_intercon));
|
||||||
|
snd_soc_dapm_add_routes(dapm, wm8958_intercon,
|
||||||
|
ARRAY_SIZE(wm8958_intercon));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user