Axel Holzinger wrote:
> Hi,
> 
> I'm trying to get a RME HDSPe MADI card to run in an ARM box with Linux
> 4.1.6. I configured the (vendor specific TI) kernel to support the card
(via
> hdspm) compiled into the kernel (not as loadable module).
> 
> The MADI card is detected as a PCI device and the ALSA driver is loaded.
> Unfortunately playout does NOT work: aplay is reporting an error:
> ALSA lib pcm_mmap.c:374:(snd_pcm_mmap) mmap failed: No such device or
> address
> 
> Does anybody have an idea what might be the reason?
> 
> I tested the card on Linux x64 and it worked flawlessly.
> 
> Below is info about the system, aplay output and an strace of the relevant
> part.
> 
> Thanks in advance
> Axel

A friend of mine pointed me to this document:
https://kernel.readthedocs.io/en/sphinx-samples/writing-an-alsa-driver.html#
external-hardware-buffers

and especially this paragraph:
"Another case is when the chip uses a PCI memory-map region for the 
buffer instead of the host memory. In this case, mmap is available only 
on certain architectures like the Intel one. In non-mmap mode, the data 
cannot be transferred as in the normal way. Thus you need to define the 
copy and silence callbacks as well, as in the cases above."

To me it looks like the hdspm driver assumes that mmap mode is available (as
i.e. on an Intel platform) while in reality (here on ARM) it's not.

Shouldn't the driver test is mmap mode is available (could even be done at
compile time) and either not compile (or second best, not load at runtime)
or use a different technique to do what it wants to do?

Cheers
Axel



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user

Reply via email to