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@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user