On Sat, May 15, 2021 at 7:24 AM Fons Adriaensen <fons@linuxaudio.org> wrote:
On Sat, May 15, 2021 at 06:49:28AM -0600, Paul Davis wrote:

> Also, at that time, ALSA didn't yet properly support the mmap'ed mode ...
> it was under development but not finished (as evidenced by the way it could
> not handle non-interleaved devices like the RME digi series.

That's another thing that puzzles me...

At the time audio cards like the RMEs would be sitting on a PCI bus,
and the mmap area could/would be actual hardware buffers.
So then, mmapped mode would be the 'natural' way, with read()/write()
being implemented on top of it. But apparently it was the other way
around...

That's what was changing in the late 1990s. Before "DMA-capable" audio interfaces, you needed special data transfer operations to get data to/from the audio interface. By 2000-2002, that mostly went away, and they were all DMA capable. ALSA evolved to accommodate this, but there had been no reason to focus on mmap-style access before then.