mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 05:02:12 +00:00
ASoC: Create codec DAPM widgets before calling the codecs probe function
This allows to create DAPM routes depending on those widgets in the codecs probe function. This is helpful when supporting similar codecs with minor differences in the DAPM routing with the same driver. Something similar has already been done for cards in commit a841ebb9 (ASoC: Create card DAPM widgets early so they can be used in callbacks). Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
20ed0938bf
commit
77530150fb
@ -1495,6 +1495,10 @@ static int soc_probe_codec(struct snd_soc_card *card,
|
||||
|
||||
soc_init_codec_debugfs(codec);
|
||||
|
||||
if (driver->dapm_widgets)
|
||||
snd_soc_dapm_new_controls(&codec->dapm, driver->dapm_widgets,
|
||||
driver->num_dapm_widgets);
|
||||
|
||||
if (driver->probe) {
|
||||
ret = driver->probe(codec);
|
||||
if (ret < 0) {
|
||||
@ -1508,9 +1512,6 @@ static int soc_probe_codec(struct snd_soc_card *card,
|
||||
if (driver->controls)
|
||||
snd_soc_add_controls(codec, driver->controls,
|
||||
driver->num_controls);
|
||||
if (driver->dapm_widgets)
|
||||
snd_soc_dapm_new_controls(&codec->dapm, driver->dapm_widgets,
|
||||
driver->num_dapm_widgets);
|
||||
if (driver->dapm_routes)
|
||||
snd_soc_dapm_add_routes(&codec->dapm, driver->dapm_routes,
|
||||
driver->num_dapm_routes);
|
||||
|
Loading…
Reference in New Issue
Block a user