ASoC: Allow machines to ignore pmdown_time per-link
With this flag, each dai_link in machine driver can choose to ignore pmdown_time during DAPM shut down sequence. If the ignore_pmdown_time is set, the DAPM for corresponding DAI will be executed immediately. Signed-off-by: Ramesh Babu K V <ramesh.babu@linux.intel.com> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
9c173d15f9
commit
e50fad4f02
|
@ -718,6 +718,9 @@ struct snd_soc_dai_link {
|
|||
/* Symmetry requirements */
|
||||
unsigned int symmetric_rates:1;
|
||||
|
||||
/* pmdown_time is ignored at stop */
|
||||
unsigned int ignore_pmdown_time:1;
|
||||
|
||||
/* codec/machine specific init - e.g. add machine controls */
|
||||
int (*init)(struct snd_soc_pcm_runtime *rtd);
|
||||
|
||||
|
|
|
@ -319,7 +319,8 @@ static int soc_pcm_close(struct snd_pcm_substream *substream)
|
|||
cpu_dai->runtime = NULL;
|
||||
|
||||
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
|
||||
if (unlikely(codec->ignore_pmdown_time)) {
|
||||
if (unlikely(codec->ignore_pmdown_time ||
|
||||
rtd->dai_link->ignore_pmdown_time)) {
|
||||
/* powered down playback stream now */
|
||||
snd_soc_dapm_stream_event(rtd,
|
||||
codec_dai->driver->playback.stream_name,
|
||||
|
|
Loading…
Reference in a new issue