summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDong Aisheng <dong.aisheng@linaro.org>2012-07-20 17:20:26 +0800
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-07-24 20:19:34 +0100
commita07e8d49e8b48d3dc458e234a15e36f379a36dff (patch)
tree29859eba6a1b9dbedda0b7b0f1ba5bee3b22e343
parentd0ba4c014934cb56f1eabb481ff8026b6d49d33c (diff)
downloadlinux-a07e8d49e8b48d3dc458e234a15e36f379a36dff.tar.gz
linux-a07e8d49e8b48d3dc458e234a15e36f379a36dff.tar.bz2
linux-a07e8d49e8b48d3dc458e234a15e36f379a36dff.zip
ASoC: sgtl5000: remove unneeded snd_soc_dapm_new_widgets in probe
There's a driver bug that sgtl5000 dapm widget kcontrols do not work. e.g. can not select capture mux with amixer tool(no error info prompted). The root cause is that we still call snd_soc_dapm_new_widgets in codec driver probe function afer converting to table based widgets. This will cause the card dapm widgets are instantiated before the dapm_routes are registered. Then, no available dapm widget pathes can be found during instantiation which finally will cause soc_dapm_mux_update_power to fail(can not find correct path with kcontrol) in snd_soc_dapm_put_enum_double function. Here we remove the unneeded snd_soc_dapm_new_widgets in codec probe and let the soc core to handle the register sequence properly. Then we can fix above issue. Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org> Acked-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--sound/soc/codecs/sgtl5000.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c
index 8af6a5245b18..5c54b6f4623a 100644
--- a/sound/soc/codecs/sgtl5000.c
+++ b/sound/soc/codecs/sgtl5000.c
@@ -1357,8 +1357,6 @@ static int sgtl5000_probe(struct snd_soc_codec *codec)
if (ret)
goto err;
- snd_soc_dapm_new_widgets(&codec->dapm);
-
return 0;
err: