Hi all, I hope this is the right mailing list - I fall squarely in the 'user' category for ALSA but as it happens I'm a programmer so my analysis so far is a bit deeper and maybe more suitable for the devel list? In any case, I've got an old Sound Blaster Extigy USB sound card. It comes with an infrared remote, which I'd like to be able to use with Lirc. According to the Lirc documentation [1] this should work with ALSA 1.0.9 - presumably later versions *shouldn't* break support. :) However, I've been able to make this work. The audio side of the hardware seems to work fine with ALSA, and the remote works when not attached to the PC. When attached, the red receiver LED flashes as usual, and I also get the following line in dmesg for every button I press: ALSA sound/usb/usbmixer.c:1726: status interrupt: c0 00 The message is independent of the button. (the c0 00 code stays the same for all buttons.) Trying to access the event from userspace is failing completely though. My first attempt at digging into this was picking apart Lirc and running it in a debugger, and my findings lead me to conclude that it's not Lirc's fault, as it's never getting any events from ALSA: * Lirc's alsa-usb driver successfully grabs the RC device by locating the interface of the selected card that identifies itself as SND_HWDEP_IFACE_SB_RC. * It loads up the hwdep interface with snd_hwdep_open() followed by a call to snd_hwdep_poll_descriptors() which yields a valid file descriptor. [2] No errors are returned anywhere, everything looks fine. * It waits on the file descriptor using select() [3]; unfortunately, select() doesn't return when I press a remote button - the pipe is just not getting any data. I've tested on 3 environments: OpenSUSE 10.2, 10.3 and 11.0, which have ALSA 1.0.13/Linux 2.6.18, 1.0.14/2.6.22 and 1.0.16/2.6.25 respectively. All give me the exact same result: nothing happens in userspace; status interrupt line on dmesg. I've tried to dig through the ALSA source for this functionality, but I'm very inexperienced with kernel code, and I don't know what I'm looking for/what the best way to diagnose this would be. For what it's worth, the RC code seems to have changed a lot since the original Extigy RC patch, so maybe something broke? Any help very much appreciated! Thanks ~phil [1] http://www.lirc.org/html/alsa-usb.html [2] from line 87 onwards: http://www.google.com/codesearch?hl=en&q=file:hw_alsa_usb.c+show:Ziggfj8EPWo:2Pgf60mHej4:tYzvuVqIrbc&sa=N&cd=9&ct=ri&cs_p=http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2&cs_f=lirc-0.8.2/daemons/hw_alsa_usb.c [3] around line 1821: http://www.google.com/codesearch?hl=en&q=file:lircd.c+package:http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2+package:%22http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2%22+select+show:72KjMGMO6Fk:2Pgf60mHej4:em2adpER9I0&sa=N&cd=8&ct=rc&cs_p=http://unix.freshmeat.net/redir/lirc/5908/url_bz2/lirc-0.8.1.tar.bz2&cs_f=lirc-0.8.2/daemons/lircd.c ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user