Both the EDMA3 and McASP have the ability to report error conditions. In both cases these errors are silently dropped on the floor.
I would like very much to get HW errors up the stack to the aplay process using the harware. This is an RFC series demonstrating a first attempt. 1/3 isn't nearly as half-baked as the others. It proposes to return SNDRV_PCM_POS_XRUN from davinci-pcm's pointer() function like is currently done in fsl_dma. The problem I have observed in test is that the stream does not abort; several underruns are reported before aplay finally dies. I would prefer immeadiate death with a reason. 2/3 and 3/3 are a first-strike at registering 'health' callbacks provided by the CPU DAI so that error conditions can be reported back. The health callback is polled on calls to pointer(). This may be too often. Also the current method of registering these callbacks seems wrong -- please help me out here. If there is an established method of bubbling HW errors up to userspace that I completely missed: I am sorry for the noise and would be glad to hear about how to use it with davinci-pcm. Best Regards, Ben Gardiner Ben Gardiner (3): [RFC] ASoC: davinci-pcm: latch EDMA errors [RFC] ASoC: davinci-pcm: add cpu-dai health callbacks [RFC] ASoC: davinci-mcasp: add cpu dai health callback sound/soc/davinci/davinci-mcasp.c | 26 ++++++++++++++++++++++++++ sound/soc/davinci/davinci-pcm.c | 19 +++++++++++++++++-- sound/soc/davinci/davinci-pcm.h | 3 +++ 3 files changed, 46 insertions(+), 2 deletions(-) -- 1.7.4.1 _______________________________________________ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source