[Sound-open-firmware] [PATCH] dai: xrun: dont stop and restart DAI on XRUN recovery

Liam Girdwood liam.r.girdwood at linux.intel.com
Fri Nov 17 16:08:04 CET 2017


On Fri, 2017-11-17 at 08:35 -0600, Pierre-Louis Bossart wrote:
> On 11/16/17 4:01 PM, Liam Girdwood wrote:
> > WiP: The DAI should not be stopped and the restarted on XRUNs
> 
> Are you sure about this one? if you have an xrun leading to a channel 
> swap, that's not something you could ever recover from?
> 

This was why it was WiP :)

I'm planning a patch for the SSP part later, but in general the DAI
component would pass the XRUN onto the SSP driver and await a return on
how to handle it. e.g. SSP driver error status could indicate whether we
need to restart SSP (due to BCE or underrun or overruns).

Flow would go something like :-

1) SSP IRQ fires and status indicates xrun/BCE. SSP IRQ handler notifies
pipeline of XRUN.

2) Pipeline XRUN handler runs through all components, DAI component
takes XRUN and check action with SSP driver. SSP indicates whether
restart is needed.

3) DAI layer takes any XRUN actions.

4) Playback continues.

Liam




More information about the Sound-open-firmware mailing list