Subject: Re: Advice to people writing audio drivers
To: Ignatios Souvatzis <email@example.com>
From: Charles M. Hannum <firstname.lastname@example.org>
Date: 01/25/1999 21:27:01
I *know* I've been over this before, but...
> Will using trigger become mandatory?
> [description of board]
This is simply not an issue. If you have to upload the data in
blocks, then you can always write a function that's called from both
the trigger and interrupt routines (analogous to the old `start'
routine). There's no reason for this division to be in the interface.
(And in fact, uploading the next block from a callback, as was
previously done, significantly increases the gap between blocks, which
on some hardware caused a FIFO underrun and an audible glitch.)
> What should 44100-only hardware do?
If the hardware simply can't support the `standard' default settings,
that's fine. But some of the drivers were just being lame.
> MMAP even for non-DMA drivers?
Yes. Even for hardware that doesn't do DMA, it's still faster to
avoid the extra copying to get the data into the ring buffer.
And it's quite trivial to support.