[alsa-devel] ASoC: no-pcm (backend) error propagation

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Wed Feb 27 16:43:52 CET 2013

> It was originally intended that any underrun / overrun issues in a BE
> DAI would be handled internally by the audio DSP (and this worked well
> with the OMAP4 ABE). However, it is probably a good a idea to have a
> better mechanism for reporting BE xrun issues up the stack to the host
> CPU side too.
> Currently the FE PCM xrun mechanism and FE pointer() callback could be
> used by the host to get the size of any FE:BE underrun/overrun. This
> isn't ideal and wont work when there can be multiple BEs for a FE.
> It looks like some new code is required here to get this working
> correctly for BEs.

My view is that that underruns at the DSP level are fatal anyway, and 
that they a) should be avoided with proper real-time designs and b) they 
should be logged as error conditions to debug should they occur, not be 
tied to a FE. It would be really complicated to add code to 
back-propagate the errors, and if you have mixing/routing what 
individual FEs would do when this is a system error really.

More information about the Alsa-devel mailing list