Wed Jun 10 10:12:54 CEST 2009
reliably deal with over/underrun. On the hardware I'm using it is
possible to construct a system which will always behave predictably
but I can't build it using the ALSA driver interface.
These issues probably indicates that the DMA interface between ALSA
and the driver has been designed at the wrong level. For example those
timers trying to fix glitches in HDA belong down in the HDA driver,
not the core. Why did my DMA code needs to peak back into ALSA core at
appl pointer? The proliferation of flags on the DMA interface is also
an indication that it is too low level.
I'm still working on solutions for my embedded application but I may
be forced to add private IOCTLs to the driver and by-pass ASLA. That
will work for me since I'm not building a general purpose system.
jonsmirl at gmail.com
More information about the Alsa-devel