[alsa-devel] function snd_mixer_load failed: Inappropriate ioctl for device
Takashi Iwai
tiwai at suse.de
Mon Dec 17 11:25:41 CET 2007
At Wed, 12 Dec 2007 21:45:26 -0300,
Salatiel Filho wrote:
>
> *** please let me in the to or cc fields. I am not on the list ***
>
> I am having a big trouble to make sound work on my ARM machine. I am
> running debian 4.
>
>
>
> # uname -a
> Linux LS-GL7D6 2.6.16.57-arm2 #7 Wed Dec 12 18:14:51 BRT 2007
> armv5tejl GNU/Linux
>
> # cat /proc/asound/version
> Advanced Linux Sound Architecture Driver Version 1.0.15.
> Compiled on Dec 12 2007 for kernel 2.6.16.57-arm2.
>
>
> Modules load successfully
>
> # lsmod
> Module Size Used by
> snd_pcm_oss 47680 0
> snd_mixer_oss 15040 1 snd_pcm_oss
> snd_usb_audio 79904 0
> snd_pcm 75877 2 snd_pcm_oss,snd_usb_audio
> snd_timer 20164 1 snd_pcm
> snd_page_alloc 8264 1 snd_pcm
> snd_usb_lib 15808 1 snd_usb_audio
> snd_rawmidi 21376 1 snd_usb_lib
> snd_seq_device 7116 1 snd_rawmidi
> snd_hwdep 7460 1 snd_usb_audio
> snd 54368 9
> snd_pcm_oss,snd_mixer_oss,snd_usb_audio,snd_pcm,snd_timer,snd_usb_lib,snd_rawmidi,snd_seq_device,snd_hwdep
> soundcore 7684 1 snd
> nfs 102044 0
> lockd 61780 1 nfs
> sunrpc 142808 3 nfs,lockd
> dm_mod 48176 0
> usbhid 38628 0
>
>
>
> # cat /proc/asound/cards
> 0 [default ]: USB-Audio - C-Media USB Headphone Set
> C-Media USB Headphone Set at
> usb-ehci_platform.4523-1, full speed
>
>
> # cat /proc/asound/version
> Advanced Linux Sound Architecture Driver Version 1.0.15.
> Compiled on Dec 12 2007 for kernel 2.6.16.57-arm2.
>
> but everytime i try to use alsamixer i get:
>
>
> # alsamixer
> alsamixer: function snd_mixer_load failed: Inappropriate ioctl for device
>
> # aplay test.wav
> Playing WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
> aplay: xrun:1090: read/write error, state = PREPARED
>
>
> # strace alsamixer
> ...
> stat64("/usr//share/alsa/alsa.conf", {st_mode=S_IFREG|0644,
> st_size=8611, ...}) = 0
> open("/usr//share/alsa/alsa.conf", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=8611, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x40017000
> read(3, "#\n# ALSA library configuration "..., 4096) = 4096
> read(3, "r\n\t\t\t\tname defaults.pcm.device\n\t"..., 4096) = 4096
> read(3, "{\n\t\t\t at func refer\n\t\t\tname default"..., 4096) = 419
> read(3, "", 4096) = 0
> read(3, "", 4096) = 0
> close(3) = 0
> munmap(0x40017000, 4096) = 0
> access("/etc/asound.conf", R_OK) = -1 ENOENT (No such file or directory)
> access("/root/.asoundrc", R_OK) = -1 ENOENT (No such file or directory)
> open("/dev/snd/controlC0", O_RDONLY) = 3
> close(3) = 0
> open("/dev/snd/controlC0", O_RDWR) = 3
> ioctl(3, USBDEVFS_CONTROL, 0xbec2da64) = 0
> ioctl(3, UI_DEV_CREATE, 0xbec2db2c) = 0
> close(3) = 0
> stat64("/usr//share/alsa/alsa.conf", {st_mode=S_IFREG|0644,
> st_size=8611, ...}) = 0
> open("/dev/snd/controlC0", O_RDONLY) = 3
> close(3) = 0
> open("/dev/snd/controlC0", O_RDWR) = 3
> ioctl(3, USBDEVFS_CONTROL, 0xbec2da44) = 0
> fcntl64(3, F_GETFL) = 0x2 (flags O_RDWR)
> fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0
> ioctl(3, USBDEVFS_RELEASEINTERFACE, 0xbec2dac0) = 0
> ioctl(3, USBDEVFS_RELEASEINTERFACE, 0xbec2dac0) = 0
> ioctl(3, USBDEVFS_CONNECTINFO, 0xbec2d86c) = 0
> ioctl(3, USBDEVFS_IOCTL, 0xbec2d42c) = -1 ENOTTY (Inappropriate
> ioctl for device)
> fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 2), ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x40017000
> write(1, "\n", 1
> ) = 1
> write(2, "alsamixer: function snd_mixer_lo"..., 74alsamixer: function
> snd_mixer_load failed: Inappropriate ioctl for device
> ) = 74
> munmap(0x40017000, 4096) = 0
> io_submit(0x2, 0, 0x8 <unfinished ... exit status 2>
>
>
> any help?
>
>
>
> The same card works ok on my x86 machine using . So the problem is not
> the card but something else.
Likely the difference of struct size due to different compiler or
compiler options.
Takashi
More information about the Alsa-devel
mailing list