Bugzilla – Bug 440907
Sound doesn't work on new Dell Studio Desktop
Last modified: 2008-11-07 14:37:47 UTC
Just got a new Dell Studio Desktop machine w/ an ATI RadeonHD 3650 (as opposed to the 3450 which is the default, iirc). One of my problems is that I cannot get audio working. kernel: kernel-pae-2.6.25.18-0.2 Results of lspci: 00:00.0 Host bridge: Intel Corporation Eaglelake DRAM Controller (rev 03) 00:01.0 PCI bridge: Intel Corporation Eaglelake PCI Express Root Port (rev 03) 00:1a.0 USB Controller: Intel Corporation ICH10 USB UHCI Controller #4 00:1a.1 USB Controller: Intel Corporation ICH10 USB UHCI Controller #5 00:1a.2 USB Controller: Intel Corporation ICH10 USB UHCI Controller #6 00:1a.7 USB Controller: Intel Corporation ICH10 USB2 EHCI Controller #2 00:1b.0 Audio device: Intel Corporation ICH10 HD Audio Controller 00:1c.0 PCI bridge: Intel Corporation ICH10 PCI Express Port 1 00:1c.2 PCI bridge: Intel Corporation ICH10 PCI Express Port 3 00:1c.5 PCI bridge: Intel Corporation ICH10 PCI Express Port 6 00:1d.0 USB Controller: Intel Corporation ICH10 USB UHCI Controller #1 00:1d.1 USB Controller: Intel Corporation ICH10 USB UHCI Controller #2 00:1d.2 USB Controller: Intel Corporation ICH10 USB UHCI Controller #3 00:1d.7 USB Controller: Intel Corporation ICH10 USB2 EHCI Controller #1 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90) 00:1f.0 ISA bridge: Intel Corporation ICH10 LPC Interface Controller 00:1f.2 IDE interface: Intel Corporation ICH10 4 port SATA IDE Controller 00:1f.3 SMBus: Intel Corporation ICH10 SMBus Controller 00:1f.5 IDE interface: Intel Corporation ICH10 2 port SATA IDE Controller 01:00.0 VGA compatible controller: ATI Technologies Inc Mobilitiy Radeon HD 3600 Series 01:00.1 Audio device: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series] 03:00.0 FireWire (IEEE 1394): JMicron Technologies, Inc. Device 2380 04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02) yast2 sound config has 2 devices listed (using my leet ascii art ui skills): Index | Card Model -------------------------------------------------- 0 | ICH10 HD Audio Controller 1 | RV635 Audio device [Radeon HD 3600 Series] In the section below, selecting either row states that the driver used is snd-hda-intel Selecting the ICH10 row and going to the drop-down menu at the very bottom right of the configuration window, here's what I get selecting the Volume option: Master: 98 Front: 98 ------------------ Front Mic: 0 Front Mic Boost: 0 Surround: 97 Center: 97 LFE: 0 Side: 0 Line: 0 Mic: 0 Mic Boost: 100 The Volume option for the Radeon HD card has no volume controls Playing test sound for either card does not work. Here's what I get w/ lsmod: Module Size Used by snd_usb_audio 100992 0 snd_usb_lib 34432 1 snd_usb_audio snd_rawmidi 42496 1 snd_usb_lib snd_pcm_oss 64256 0 snd_mixer_oss 33408 1 snd_pcm_oss snd_seq 73664 0 snd_seq_device 25100 2 snd_rawmidi,snd_seq snd_hda_intel 386716 1 snd_pcm 100100 3 snd_usb_audio,snd_pcm_oss,snd_hda_intel snd_timer 40712 2 snd_seq,snd_pcm snd_page_alloc 27400 2 snd_hda_intel,snd_pcm snd_hwdep 26372 2 snd_usb_audio,snd_hda_intel snd 79544 13 snd_usb_audio,snd_usb_lib,snd_rawmidi,snd_pcm_oss,snd_mixer_oss,snd_seq,snd_seq_device,snd_hda_intel,snd_pcm,snd_timer,snd_hwdep nls_utf8 18432 0 iptable_filter 19840 0 binfmt_misc 28040 1 ip_tables 30224 1 iptable_filter ip6_tables 31376 0 x_tables 33668 2 ip_tables,ip6_tables af_packet 38656 0 cpufreq_conservative 24456 0 cpufreq_userspace 22660 0 cpufreq_powersave 18176 0 acpi_cpufreq 26380 3 speedstep_lib 21508 0 microcode 30608 0 firmware_class 25984 1 microcode fuse 66332 7 loop 35332 0 dm_mod 78676 0 uvcvideo 71688 0 ohci1394 48432 0 compat_ioctl32 17664 1 uvcvideo i2c_i801 26128 0 rtc_cmos 27168 0 usb_storage 101000 0 sr_mod 33448 0 videodev 48000 1 uvcvideo button 25360 0 dcdbas 25252 0 rtc_core 37148 1 rtc_cmos v4l1_compat 29572 2 uvcvideo,videodev ieee1394 107016 1 ohci1394 r8169 47748 0 i2c_core 41108 1 i2c_i801 agpgart 50868 0 serio_raw 23428 0 soundcore 24264 1 snd cdrom 50588 1 sr_mod rtc_lib 19328 1 rtc_core sg 52020 0 usbhid 60260 0 hid 53708 1 usbhid ff_memless 21896 1 usbhid sd_mod 45336 7 ehci_hcd 52492 0 uhci_hcd 40848 0 usbcore 164812 8 snd_usb_audio,snd_usb_lib,uvcvideo,usb_storage,usbhid,ehci_hcd,uhci_hcd edd 26440 0 ext3 156040 3 mbcache 25348 1 ext3 jbd 73504 1 ext3 fan 22660 0 ata_piix 38532 6 libata 176604 1 ata_piix scsi_mod 168436 5 usb_storage,sr_mod,sg,sd_mod,libata dock 27536 1 libata thermal 40348 0 processor 67500 3 acpi_cpufreq,thermal `lsmod | grep snd` probably would have been enough, but I wasn't sure so listed everything.
First off, try alsa-driver-kmp package on OBS multimedia:audio:KMP repo. This contains the latest updates of alsa-driver.
I should probably know how to do this... but I don't :( Could you explain how I can get the package? Thanks
n/m, I think I got it all under control (maybe)
ok, so I grabbed the alsa-driver-kmp src.rpm, built it, and installed the pae package (since my kernel is pae) I then rebooted, but still no audio. Here's what I get from mplayer: [AO OSS] audio_setup: Can't open audio device /dev/dsp: Invalid argument *** PULSEAUDIO: Unable to create stream. [AO_ALSA] Unable to set hw-parameters: Input/output error [AO ESD] latency: [server: 0.19s, net: 0.00s] (adjust 0.19s)
Make sure that you didn't install both alsa-driver-kmp and alsa-driver-unstable-kmp. Install only the first one. If you installed both, remove the latter, and re-install alsa-driver-kmp again. Then, run "rcalsasound restart" or reboot.
these were the packages that rpmbuild -bb created: alsa-driver-doc-1.0.18.20081103-4.1.i586.rpm alsa-driver-kmp-debug-1.0.18.20081103_2.6.25.18_0.2-4.1.i586.rpm alsa-driver-kmp-default-1.0.18.20081103_2.6.25.18_0.2-4.1.i586.rpm alsa-driver-kmp-lockdep-1.0.18.20081103_2.6.25.18_0.2-4.1.i586.rpm alsa-driver-kmp-pae-1.0.18.20081103_2.6.25.18_0.2-4.1.i586.rpm I installed the alsa-driver-kmp-pae-1.0.18.20081103_2.6.25.18_0.2-4.1.i586.rpm package I then rebooted (I didn't know about rcalsasound restart) and still no sound
You didn't have to use rebuild. You could just use the package from OBS multimedia:audio:KMP/openSUSE_11.0-Update... Does the same error occur or not? "doesn't work" doesn't explain any details. Please elaborate what you tested, what you expected (e.g. you seem to have multiple I/Os including HDMI), and what errors you got. Also, run alsa-info.sh (found in either /usr/share/doc/packages/alsa or /usr/sbin) with --no-upload option, and attach the generated file here. This contains the hardware details.
I searched for the package on software.opensuse.org or whatever and all I saw in the multimedia:audio:KMP/openSUSE_11.0-Update channel was the src.rpm, so I grabbed that at this point, it doesn't matter though - it's installed. well, I didn't really get an "error" before, just had no audio when trying to play media via mplayer or other media players nor any sound when clicking the "Play Test" buttons in yast2's Sound config module. After installing the alsa-driver-kmp package, no difference afaict. I'll try running the alsa-info.sh script this evening when I get home (at the office right now).
Created attachment 249498 [details] alsa-info.txt
ok, attached
Hm, the proc output of ALC888 is useless because of broken GPIO entries. I fixed the driver code now, so please try to update later, and get alsa-info.sh output again.
Created attachment 249678 [details] updated alsa-info.txt ok, installed alsa-driver-kmp-pae-1.0.18.20081104_2.6.25.18_0.2-2.1.i586.rpm this is the new alsa-info.sh output
Wait for a while, and try again later. It's still the old version.
Created attachment 249819 [details] alsa-info.txt this alsa-info.txt was gotten w/ alsa-driver-kmp-pae-1.0.18.20081105_2.6.25.18_0.2-1.1.i586.rpm
The proc output looks still very strange. Is the onboard sound activated on BIOS?
I have no idea, how can I figure that out?
You might be able to check it in BIOS setup in the boot menu... But not sure whether it's available. Anyway, upload the kernel message (output of dmesg). This shows the automatic pin information. Then, try to pass model=6stack-dell option to snd-hda-intel driver. Edit /etc/modprobe.d/sound, add that model option to options snd-hda-intel line, and reboot (or rcalsasound restart). After restarting, adjust the mixer via "alsamixer -Dhw" once. Then check the sound playback again.
Created attachment 250013 [details] kernel.log this is the output of dmesg after a reboot to check the BIOS The only audio option in the BIOS was under: Advanced / Internal Peripherals: Onboard Audio [Enabled]
this is what my post-edited sound config file looks like (for the record): options snd slots=snd-hda-intel,snd-hda-intel model=6stack-dell # u1Nb.lmcVSDLIxjB:ICH10 HD Audio Controller alias snd-card-0 snd-hda-intel # NXNs.fkPT+0L_Kn9:RV635 Audio device [Radeon HD 3600 Series] alias snd-card-1 snd-hda-intel this is the output I got from rcalsasound restart: [root@serenity ~]# rcalsasound restart Shutting down sound driver done Starting sound driver: hda-intelWARNING: Error inserting snd (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_hwdep (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd-hwdep.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_timer (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd-timer.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_pcm (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd-pcm.ko): Unknown symbol in module, or unknown parameter (see dmesg) FATAL: Error inserting snd_hda_intel (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/pci/hda/snd-hda-intel.ko): Unknown symbol in module, or unknown parameter (see dmesg) hda-intelWARNING: Error inserting snd (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_hwdep (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd-hwdep.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_timer (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd-timer.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_pcm (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/acore/snd-pcm.ko): Unknown symbol in module, or unknown parameter (see dmesg) FATAL: Error inserting snd_hda_intel (/lib/modules/2.6.25.18-0.2-pae/updates/alsa/pci/hda/snd-hda-intel.ko): Unknown symbol in module, or unknown parameter (see dmesg) failed I attempted this a few times, just so you know when you read the dmesg output I'll attach next. I should also note that I messed up your instructions at first and put the model= parameter on the alias line, rather than the options line at first. So you'll probably see some kernel error messages there :)
Created attachment 250023 [details] kernel2.log this dmesg log was gotten after attempting to `rcalsasound restart` after modifying my /etc/modprobe.d/sound config file
No, add model=6stack-dell to "options snd-hda-intel" line. It it doesn't exist, create one, such as options snd-hda-intel model=6stack-dell
ok, rcalsasound restart succeeded that time. however, I still get no audio when trying to play a sound file (an ogg in my case) via mplayer. The output from mplayer seems to have not changed: Playing reel big fish - sell out.ogg. [Ogg] stream 0: audio (Vorbis), -aid 0 Ogg file format detected. Clip info: Name: Sell out Artist: Reel Big Fish Track: 1 ========================================================================== Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders AUDIO: 44100 Hz, 2 ch, s16le, 192.0 kbit/13.61% (ratio: 24000->176400) Selected audio codec: [ffvorbis] afm: ffmpeg (FFmpeg Vorbis decoder) ========================================================================== [AO OSS] audio_setup: Can't open audio device /dev/dsp: Invalid argument *** PULSEAUDIO: Unable to create stream. [AO_ALSA] Unable to set hw-parameters: Input/output error [AO ESD] latency: [server: 0.19s, net: 0.00s] (adjust 0.19s) AO: [esd] 44100Hz 2ch s16le (2 bytes per sample) Video: no video Starting playback... A: 0.0 (00.0) of 227.4 (03:47.3) ??,?% MPlayer interrupted by signal 2 in module: play_audio the values in the A: line were constant until I hit control-c after not hearing any audio for a while
Try to run "killall -9 pulseaudio" before running mplayer. Also, for testing, use aplay instead of mplayer. Run just like: % aplay foo.wav Or, maybe better to run like below at the first time: % aplay -Dplughw foo.wav In this way, you'll notice if the audio device is already being used by another process. Anyway, upload alsa-info.sh output again with the latest state.
from aplay, I get: *** PULSEAUDIO: Unable to connect: Connection refused aplay: main:583: audio open error: Connection refused the -Dplughw argument seems to be invalid :( if I ad the -Dplughw argument, I get: aplay: main:583: audio open error: Invalid argument
Created attachment 250035 [details] alsa-info.txt current alsa-info.txt
We need to get rid of pulseaudio breakage first. Try to logout once, go to linux console, login as root, and change to runlevel 3 via "init 3". Then try "aplay -Dplughw ......" again.
just noticed that my user account was not part of the 'audio' group, so just added msyelf to that group. sadly, I still get no audio but I do get more output from aplay now: [fejj@serenity ~]$ aplay wav/austin_mini_me.wav Playing WAVE 'wav/austin_mini_me.wav' : Unsigned 8 bit, Rate 11025 Hz, Mono *** PULSEAUDIO: Unable to create stream. aplay: set_params:1015: Unable to install hw params: ACCESS: RW_INTERLEAVED FORMAT: U8 SUBFORMAT: STD SAMPLE_BITS: 8 FRAME_BITS: 8 CHANNELS: 1 RATE: 11025 PERIOD_TIME: 125000 PERIOD_SIZE: (1378 1379) PERIOD_BYTES: (1378 1379) PERIODS: 4 BUFFER_TIME: (500045 500046) BUFFER_SIZE: 5513 BUFFER_BYTES: 5513 TICK_TIME: [0 0] I don't think the wav info is terribly useful for debugging this problem, but the error has at least changed (hopefully for the better)
As long as "PULSEAUDIO" appears, something is wrong. Use "-Dplughw" at first before trying any aplay.
ok, just went to runlevel 3 and tried aplay again. aplay -Dplughw foo.wav still gives: aplay: main:583: audio open error: Invalid argument if I skip the -Dplughw argument, I get: ALSA lib pcm_dmix.c:996:(snd_pcm_dmix_open) unable to open slave aplay: main:583: audio open error: Invalid argument
Judging from the previous kernel log, the driver seems really having problems in communications with the codec chip. The controller gets screwed up. This explains why the proc output is so weird. So, please reboot once, and upload the clean kernel log again. Does any other OS work on that machine, BTW?
I have Vista on it and it plays sound fine, not sure if any other linux distros work or not tho. I'll reboot and attach a fresh dmesg log.
Created attachment 250038 [details] kernel.log output of dmesg after a fresh reboot
Hm, that's still there. To be sure, try to add the following option to "options snd-hda-intel" line. enable=1,0
like this? options snd-hda-intel model=6stack-dell enable=1,0 or should it be on a new line?
Created attachment 250042 [details] kernel.log
Thanks. Then I have no idea what's wrong. By any strange reason, the hardware refuses to access the codec in some basic verbs.
Considering this issue again, this might be a problem of probing a non-existing codec slots, caused by a BIOS bug. Could you add probe_mask=1 option to snd-hda-intel? Do you still see "da_intel: azx_get_response timeout, switching to single_cmd mode" ? (Note that "switch to polling mode" is harmless in many cases, but "switching to single_cmd mode" is critical.) If this option works, remove enable and model options and try again.
not much in the way of ALSA drive output from dmesg this time at all: ALSA /usr/src/packages/BUILD/alsa-driver/pci/hda/hda_codec.c:2562: hda_codec: model '6stack-dell' is selected HDA Intel: probe of 0000:01:00.1 failed with error -2 even though I don't get the da_intel error, I suspect this is not what you were hoping for :( for the record (in case I goofed your instructions), this is my sound config file: options snd slots=snd-hda-intel,snd-hda-intel options snd-hda-intel probe_mask=1 model=6stack-dell enable=1,0 # u1Nb.lmcVSDLIxjB:ICH10 HD Audio Controller alias snd-card-0 snd-hda-intel # NXNs.fkPT+0L_Kn9:RV635 Audio device [Radeon HD 3600 Series] alias snd-card-1 snd-hda-intel
The error is OK. It comes from the disablement of the secondary device (HDMI one) via enable option. And what shows /proc/asound/cards now? If any sound device is present, do you still get errors by test playbacks?
this is the content of /proc/asound/cards: 0 [Intel ]: HDA-Intel - HDA Intel HDA Intel at 0xfe8f8000 irq 22 2 [SP2208WFP ]: USB-Audio - Monitor Webcam (SP2208WFP) Mic-OmniVision Technologies, Inc.538-2640-07.08.09.6 Monitor Webcam (SP2208WFP) and yea, playing wav files works now. should I remove the model and enable options now? or?
Yes, please remove them. I'm afraid that you might have some problems if the model option isn't given, but let's try first...
sound still works after rebooting without the model= or enable= options.
OK, then please try the full operation as default, with pulseaudio & co. If you find any problems, please speak up.
And, please upload the alsa-info.sh (again) on the working system. Now finally we can see the proper codec and system information :) BTW, I fixed the driver a bit to be more robust against this sort of problems. alsa-driver-kmp is being built with that change now. Please give it a try later. The new package should have a rpm changelog like: Thu Nov 6 17:34:15 CET 2008 - tiwai@suse.de - DRIVER-HEAD:da5709eb691c6955c20302c252e680207d373096 - KERNEL-HEAD:12e774a4e89381f27c2a621a0ff28e25152cb45b * ALSA: hda - Add lifebook model for Realtek ALC269 * ALSA: hda - Make codec-probing more robust * ALSA: hda - simplify hda_bus ops callbacks With this package, try without probe_mask option. Then the driver should give a warning message but still proceed to work. Regardless whether it works or not, upload the kernel message again.
Created attachment 250516 [details] alsa-info.txt this is the alsa-info.txt from my working system, haven't installed your latest alsa-driver-kmp package yet tho - I'll do that tomorrow morning.
Created attachment 250663 [details] kernel.log here's the latest kernel log after removing the probe_mask=1 option and also upgrading to the latest alsa-driver-kmp package with your fix the good news is sound still works for me! woot woot! ;)
Great, thanks for patient testing! Meanwhile I fixed SLES11 kernel (a simpler fix by checking PCI SSID) as well now. So let's close this bug now.
is this fix going to make it into openSUSE 11.1? I assume so based on your SLES11 comment, but just wanted to make sure :) (I plan on upgrading to 11.1 shortly after it goes gold) anyways, thank you for helping me fix this!
Yes, I already committed the fix patch to our kernel tree, which is used for both 11.1 and SLE11 (code11). This might slip from 11.1-beta5, but it should be in rc1.
awesome, thanks ;)