aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-dapm.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2008-01-10 14:41:46 +0100
committerJaroslav Kysela <perex@perex.cz>2008-01-31 17:29:51 +0100
commit4b67d35504d005e94328558ee2c8f661a46aaaf4 (patch)
tree09ea3f77d9327777c6ab135d40fe6b1551b8a3b8 /sound/soc/soc-dapm.c
parent9af6d9562414568ecadf96aaef5b88e7e8b19821 (diff)
downloadkernel_goldelico_gta04-4b67d35504d005e94328558ee2c8f661a46aaaf4.zip
kernel_goldelico_gta04-4b67d35504d005e94328558ee2c8f661a46aaaf4.tar.gz
kernel_goldelico_gta04-4b67d35504d005e94328558ee2c8f661a46aaaf4.tar.bz2
[ALSA] soc - Don't lock the codec list in snd_soc_dapm_new_widgets()
snd_soc_dapm_new_widgets() takes the codec lock when adding new widgets, causing lockdep warnings when applications later call down through ALSA to adjust controls. Since widgets are only added during probe this lock should be unneeded so don't take it. Thanks to Dmitry Baryshkov <dbaryshkov@gmail.com> for reporting this issue. Cc: Dmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/soc/soc-dapm.c')
-rw-r--r--sound/soc/soc-dapm.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 8b61db2..620d7ea 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -971,7 +971,6 @@ int snd_soc_dapm_new_widgets(struct snd_soc_codec *codec)
{
struct snd_soc_dapm_widget *w;
- mutex_lock(&codec->mutex);
list_for_each_entry(w, &codec->dapm_widgets, list)
{
if (w->new)
@@ -1006,7 +1005,6 @@ int snd_soc_dapm_new_widgets(struct snd_soc_codec *codec)
}
dapm_power_widgets(codec, SND_SOC_DAPM_STREAM_NOP);
- mutex_unlock(&codec->mutex);
return 0;
}
EXPORT_SYMBOL_GPL(snd_soc_dapm_new_widgets);