aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2009-06-14 06:33:37 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2009-06-14 11:14:53 -0400
commit6d5701b29e392f77d222254aa8e375315d59f0aa (patch)
treef5552372d806219450f5fc4086b5c55f4e1db8ee /sound/soc
parent5ba73683ba5223b218b26f878663e3907e85eedc (diff)
ASoC: Instantiate any forgotten DAPM widgets
With the recent changes to the DAPM power checks it has become important to explicitly instantiate all widgets but some drivers were forgetting to do that. Since everything needs to do it add a call to instantiate them immediately before the card registration - it does no harm when it is called repeatedly and saves work in drivers. Tested-by: pHilipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/soc-core.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index 3f44150d8e30..1d70829464ef 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -1389,6 +1389,9 @@ int snd_soc_init_card(struct snd_soc_device *socdev)
1389 snprintf(codec->card->longname, sizeof(codec->card->longname), 1389 snprintf(codec->card->longname, sizeof(codec->card->longname),
1390 "%s (%s)", card->name, codec->name); 1390 "%s (%s)", card->name, codec->name);
1391 1391
1392 /* Make sure all DAPM widgets are instantiated */
1393 snd_soc_dapm_new_widgets(codec);
1394
1392 ret = snd_card_register(codec->card); 1395 ret = snd_card_register(codec->card);
1393 if (ret < 0) { 1396 if (ret < 0) {
1394 printk(KERN_ERR "asoc: failed to register soundcard for %s\n", 1397 printk(KERN_ERR "asoc: failed to register soundcard for %s\n",