summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2015-04-09 10:52:36 +0200
committerMark Brown <broonie@kernel.org>2015-04-09 11:24:03 +0100
commit0757d834eb7482e5763fb9ee014abb50789f906a (patch)
treed444c816e88d118e816458f3aba0c9ec2ace9540 /sound/soc
parent95a9ca74768089d89c17ba958d6f009aa9c18525 (diff)
downloadlinux-0757d834eb7482e5763fb9ee014abb50789f906a.tar.bz2
ASoC: Create card debugfs directory earlier
Create the card debugfs directory at the begining of the initilization rather then the end as various steps in the initilization sequence will try to register files and sub-directories in the card directory. Fixes: 4e2576bd36a1 ("ASoC: soc-core: initialize debugfs in snd_soc_instantiate_card()") Reported-by: Fabio Estevam <festevam@gmail.com> Reported-by: Nicolin Chen <nicoleotsuka@gmail.com> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/soc-core.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index 71585d0562fa..3f18fa7f090d 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -1559,6 +1559,8 @@ static int snd_soc_instantiate_card(struct snd_soc_card *card)
goto base_error;
}
+ soc_init_card_debugfs(card);
+
card->dapm.bias_level = SND_SOC_BIAS_OFF;
card->dapm.dev = card->dev;
card->dapm.card = card;
@@ -1680,8 +1682,6 @@ static int snd_soc_instantiate_card(struct snd_soc_card *card)
mutex_unlock(&card->mutex);
mutex_unlock(&client_mutex);
- soc_init_card_debugfs(card);
-
return 0;
probe_aux_dev_err:
@@ -1695,6 +1695,7 @@ card_probe_error:
if (card->remove)
card->remove(card);
+ soc_cleanup_card_debugfs(card);
snd_card_free(card->snd_card);
base_error: