ASoC: Create card DAPM widgets early so they can be used in callbacks
This helps with things like setting up the initial state. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
This commit is contained in:
@@ -1878,6 +1878,10 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
|
|||||||
INIT_WORK(&card->deferred_resume_work, soc_resume_deferred);
|
INIT_WORK(&card->deferred_resume_work, soc_resume_deferred);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (card->dapm_widgets)
|
||||||
|
snd_soc_dapm_new_controls(&card->dapm, card->dapm_widgets,
|
||||||
|
card->num_dapm_widgets);
|
||||||
|
|
||||||
/* initialise the sound card only once */
|
/* initialise the sound card only once */
|
||||||
if (card->probe) {
|
if (card->probe) {
|
||||||
ret = card->probe(card);
|
ret = card->probe(card);
|
||||||
@@ -1911,9 +1915,6 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
|
|||||||
card->controls,
|
card->controls,
|
||||||
card->num_controls);
|
card->num_controls);
|
||||||
|
|
||||||
if (card->dapm_widgets)
|
|
||||||
snd_soc_dapm_new_controls(&card->dapm, card->dapm_widgets,
|
|
||||||
card->num_dapm_widgets);
|
|
||||||
if (card->dapm_routes)
|
if (card->dapm_routes)
|
||||||
snd_soc_dapm_add_routes(&card->dapm, card->dapm_routes,
|
snd_soc_dapm_add_routes(&card->dapm, card->dapm_routes,
|
||||||
card->num_dapm_routes);
|
card->num_dapm_routes);
|
||||||
|
Reference in New Issue
Block a user