summaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-core.c
diff options
context:
space:
mode:
authorLiam Girdwood <lrg@ti.com>2012-03-07 10:38:26 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-04-01 11:28:21 +0100
commita73fb2df01866b772a48fab93401fe3edbe0b38d (patch)
tree466816bbeb06fc5d3de00f20b5642ef9877d21fa /sound/soc/soc-core.c
parent01b9d99a1f45befa604543ead29f44fdb0878844 (diff)
downloadlinux-a73fb2df01866b772a48fab93401fe3edbe0b38d.tar.bz2
ASoC: dapm: Use DAPM mutex for DAPM ops instead of codec mutex
It has now become necessary to use a DAPM mutex instead of the codec mutex to lock the DAPM operations. This is due to the recent multi component support and forth coming Dynamic PCM updates. Currently we lock DAPM operations with the codec mutex of the calling RTD context. However, DAPM operations can span the whole card context and all components. This patch updates the DAPM operations that use the codec mutex to now use the DAPM mutex PCM subclass for all DAPM ops. We also add a mutex subclass for DAPM init and PCM operations. Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/soc-core.c')
-rw-r--r--sound/soc/soc-core.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index a6da20a72d43..4a145cb43018 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -3126,6 +3126,7 @@ int snd_soc_register_card(struct snd_soc_card *card)
INIT_LIST_HEAD(&card->dapm_dirty);
card->instantiated = 0;
mutex_init(&card->mutex);
+ mutex_init(&card->dapm_mutex);
mutex_lock(&client_mutex);
list_add(&card->list, &card_list);