mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 01:04:19 +08:00
ASoC: dapm: Notify stream event to all card components.
Currently when DAPM widgets are power sequenced the stream_event() completion callback is only called for the stream_event originator DAPM context. Other components in the card may also be interested so make sure they are also notified of any widget power events. Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
6c120e19fa
commit
8078d87f9d
@ -1516,6 +1516,12 @@ static int dapm_power_widgets(struct snd_soc_dapm_context *dapm, int event)
|
||||
&async_domain);
|
||||
async_synchronize_full_domain(&async_domain);
|
||||
|
||||
/* do we need to notify any clients that DAPM event is complete */
|
||||
list_for_each_entry(d, &card->dapm_list, list) {
|
||||
if (d->stream_event)
|
||||
d->stream_event(d, event);
|
||||
}
|
||||
|
||||
pop_dbg(dapm->dev, card->pop_time,
|
||||
"DAPM sequencing finished, waiting %dms\n", card->pop_time);
|
||||
pop_wait(card->pop_time);
|
||||
@ -2854,10 +2860,6 @@ static void soc_dapm_stream_event(struct snd_soc_dapm_context *dapm,
|
||||
}
|
||||
|
||||
dapm_power_widgets(dapm, event);
|
||||
|
||||
/* do we need to notify any clients that DAPM stream is complete */
|
||||
if (dapm->stream_event)
|
||||
dapm->stream_event(dapm, event);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user