Re: [Alsa-user] RME HDSPe MADI under ARM issue with playback
Brought to you by:
perex
From: Axel H. <aho...@gm...> - 2017-06-08 08:27:16
|
Resending without zipped attachment but instead with plain text file. On Tuesday, June 6, 2017 8:27 PM Takashi Iwai wrote: > On Mon, 05 Jun 2017 11:49:53 +0200, > 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 > > Hm, this sounds odd. But the line doesn't really correspond to the > latest version of alsa-lib. Could you try to upgrade to the latest > version? Otherwise it's hard to debug. I installed ALSA with Debian apt-get. How would I update to a newer version? > > strace: > > open("/dev/snd/pcmC0D0p", O_RDWR|O_NONBLOCK|O_CLOEXEC) = 4 > > fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 > > ioctl(4, AGPIOC_ACQUIRE or APM_IOC_STANDBY or > SNDRV_PCM_IOCTL_INFO, > > 0xbecdfb64) = 0 > > fcntl64(4, F_GETFL) = 0x802 (flags O_RDWR|O_NONBLOCK) > > ioctl(4, AGPIOC_INFO or SNDRV_PCM_IOCTL_PVERSION, 0xbecdfacc) = 0 > > ioctl(4, AGPIOC_SETUP or SNDRV_PCM_IOCTL_TTSTAMP, 0xbecdfad4) = 0 > > mmap2(NULL, 4096, PROT_READ, MAP_SHARED, 4, 0x80000000) = -1 ENXIO > (No such > > device or address) > > This error is expected and should be OK. It's an mmap of > status/control page, and this isn't supported on ARM, thus the kernel > returns -ENXIO. alsa-lib then falls back to the normal ioctl instead > of status/control mmap. Okay, got it. So is the mmap emulation plugin via asound.conf suggested by Anders needed then anyhow? > But the ring-buffer mmap is supported as normal on ARM for MADI > driver, at least. MADI provides the SG-buffer that is mappable via > DMA coherent pages, and it should work on most of archs as is. Well I found out something more: If I don't give a "--device" parameter to aplay and the RME card is default, then audio is playing. But I give the " --device=default:CARD=HDSPMx5c74" then the error is occuring. That doesn't make sense to me at all. The tests made were with the asound.conf Anders suggested. Isn't that strange? > You should have another error from mmap, with a different offset > value. That's the real error we need to track down. I attached the complete strace. > (And, 4.1.x is pretty old, rather too old for debugging, too...) Well, I know, but the kernel is a TI based manufacturer kernel for a SoC (AM5728). I'm not such an expert to update that to current kernel version unfortunately. If you don't mind I have another question: If specifying a device "--device", how would I "send" audio to the "upper" channels/tracks of the MADI card? If I ommit the "--device" parameter audio is playing on channels/tracks 1+2. How would I play audio to channels/tracks 33+34 for example? Thank you very much for your support! Axel > Takashi |