Bugzilla – Bug 115837
ALSA: snd_intel8x0 doesn't work
Last modified: 2005-09-13 10:05:53 UTC
Machine: ASUS S5200N Centrino notebook With the Beta4 and RC1 kernels, the snd_intel8x0 spits out errors when loading (the kind and number of semaphore messages varies slightly): ACPI: PCI Interrupt 0000:00:1f.5[B] -> Link [LNKB] -> GSI 7 (level, low) -> IRQ 7 PCI: Setting latency timer of device 0000:00:1f.5 to 64 ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ALSA sound/pci/intel8x0.c:596: codec_semaphore: semaphore is not ready [0x1] [0x700300] ACPI: PCI interrupt for device 0000:00:1f.5 disabled Intel ICH: probe of 0000:00:1f.5 failed with error -13 $ cat /proc/asound/cards --- no soundcards --- With the 9.3 kernel, sound works fine on this machine.
Created attachment 49184 [details] hwinfo output on this machine
Machine: ASUS M2400N i got the same errors since i updated the bios to "M2N02080A". before bios update sound works fine. Are/which logs are needed?
forgot the versions: RC1 and Beta4 works until bios update fine...
I've got BIOS version 0210 from 02/27/04. ASUS has a 0211 update for the S5N (S5xxxN) series which I couldn't yet install because I don't have Windows around. (Is there a DOS flash utility, too?)
The patch below is a brute-force fix to ignore "codec semaphore" errors. This _might_ bring the device workable somehow, but it's of course no correct fix.
Created attachment 49217 [details] Brute-force patch to fix "codec semaphore" errors
BTW, the sound works with 9.3 kernel together with SL10.0 system on Andreas' machine. (You'll need to create /dev/snd/* files manually because of udev changes after 9.3 kernel, though.) I consider it's a problem of PCI core or ACPI problem on the recent kernel rather than the sound driver itself. The changes of intel8x0 and ac97 codes between 9.3 and 10.0 kernels are fairly small and all non-critical.
The patch from comment 6 makes sound work on this machine.
the patch makes also sound on ASUS M2400N again...
OK, then please use the patch below, instead. It adds a new module option "buggy_semaphore". Set buggy_semaphore=1 for snd-intel8x0 module (e.g. in /etc/modprobe.d/sound file). If this works, I'll submit the patch.
Created attachment 49234 [details] Add "buggy_semaphore" option
The patch #11 might not work well. Try the next one below.
Created attachment 49249 [details] Fixed patch for buggy_semaphore option
Confirmed to work on Andreas' machine. The patch is committed to kernel CVS now.
patch on #13 works fine too on ASUS M2400N :)
OK, I resolve this to FIXED since a workaround is provided. It would be nicer to detect this automatically, but the best is to fix the core stuff again, instead.
maybe it is a good idea to append this workaround module parameter in yast2 'sound' to the extended options ... until the core stuff is fixed. like the parm "buggy_irq".