ASoC: sgtl5000: remove unneeded snd_soc_dapm_new_widgets in probe
authorDong Aisheng <dong.aisheng@linaro.org>
Fri, 20 Jul 2012 09:20:26 +0000 (17:20 +0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 24 Jul 2012 19:19:34 +0000 (20:19 +0100)
commita07e8d49e8b48d3dc458e234a15e36f379a36dff
tree29859eba6a1b9dbedda0b7b0f1ba5bee3b22e343
parentd0ba4c014934cb56f1eabb481ff8026b6d49d33c
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>
sound/soc/codecs/sgtl5000.c