View previous topic :: View next topic |
Author |
Message |
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Wed May 23, 2007 3:07 am Post subject: hda-intel sound fixed, then unfixed [SOLVED] |
|
|
Hey all. I'm new to gentoo, just installed it the other day and am loving it. I've been working with linux for about half a year now and now run it full time. When I first installed Gentoo on my Toshiba satellite A105-S2021 I used a 2.6.19 kernel. Sound did not work out of the box, but that wasn't surprising. I've installed, over the past half of a year, Ubuntu, OpenSUSE, Gentoo, and Fedora Core. Sound did not work after installing any of them, but I was able to fix it fairly easily in all of them (Ubuntu even has a nice guide to the hda-intel problem on their documents page). I now have the 2.6.20-r8 kernel, and not only did my changes stop working, but new errors are cropping up.
First, lspci and lsmod.
lspci
Code: | 00:00.0 Host bridge: ATI Technologies Inc Unknown device 5a31 (rev 01)
00:01.0 PCI bridge: ATI Technologies Inc RS480 PCI Bridge
00:12.0 IDE interface: ATI Technologies Inc ATI 4379 Serial ATA Controller (rev 80)
00:13.0 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller (rev 80)
00:13.1 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller (rev 80)
00:13.2 USB Controller: ATI Technologies Inc IXP SB400 USB2 Host Controller (rev 80)
00:14.0 SMBus: ATI Technologies Inc IXP SB400 SMBus Controller (rev 81)
00:14.1 IDE interface: ATI Technologies Inc Standard Dual Channel PCI IDE Controller ATI (rev 80)
00:14.2 Audio device: ATI Technologies Inc SB450 HDA Audio (rev 01)
00:14.3 ISA bridge: ATI Technologies Inc IXP SB400 PCI-ISA Bridge (rev 80)
00:14.4 PCI bridge: ATI Technologies Inc IXP SB400 PCI-PCI Bridge (rev 80)
01:05.0 VGA compatible controller: ATI Technologies Inc RC410 [Radeon Xpress 200M]
02:04.0 Ethernet controller: Atheros Communications, Inc. AR5005G 802.11abg NIC (rev 01)
02:06.0 CardBus bridge: ENE Technology Inc CB1410 Cardbus Controller (rev 01)
02:07.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
|
lsmod
Code: | Module Size Used by
snd_seq_device 9736 0
snd_seq_midi_event 9728 0
snd_seq 45232 1 snd_seq_midi_event
snd_hda_intel 225432 0
snd_pcm 64132 1 snd_hda_intel
snd_timer 20100 2 snd_seq,snd_pcm
snd 39032 5 snd_seq_device,snd_seq,snd_hda_intel,snd_pcm,snd_timer
snd_page_alloc 11144 2 snd_hda_intel,snd_pcm
|
In Gentoo, this topic, specifically the post by Okapi (and more specifically the addition of "options snd-hda-intel index=0 model=auto id="HDA" position_fix=1" to /etc/modules.d/alsa), originally fixed my sound. Now, instead of working, clicking on the volume control returns errors like,
Code: | No volume control GStreamer plugins and/or devices found |
and
Code: | The volume control did not find any elements and/or devices to control. This means that you either don't have the right GStreamer plugins or , or that you don't have a sound card configured... |
where it previously had no problem.
Alsa-mixer and alsaconf both recognize the sound card. Alsaconf configures it properly (presumably) and alsa-mixer displays the correct channels (unmuted as necessary to no avail).
Was this problem caused by changing from 2.6.19 to 2.6.20, as I think (because nothing else notably changed), and does anyone know how to fix this? All the old fixes no longer work for me.
Last edited by JSorrell on Thu May 24, 2007 7:31 pm; edited 1 time in total |
|
Back to top |
|
|
Dirk.R.Gently Guru
Joined: 29 Jan 2007 Posts: 546 Location: Titan
|
Posted: Wed May 23, 2007 5:38 am Post subject: |
|
|
Did you install gnome-light??
ok, i'm guessing you install alsa and that is configured in your kernel
Check out the MacBook wiki as it uses the same configuration.
If this is a gnome-light issue you'll need some more programs to have it run: gstreamer gst-plugins gst-plugins-gconf gnome-media gst-plugins-alsa. Uh, yeah that should probably cover it. _________________ • Helpful Linux Tidbits |
|
Back to top |
|
|
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Wed May 23, 2007 1:01 pm Post subject: |
|
|
Dirk.R.Gently wrote: | Did you install gnome-light??
ok, i'm guessing you install alsa and that is configured in your kernel
Check out the MacBook wiki as it uses the same configuration.
If this is a gnome-light issue you'll need some more programs to have it run: gstreamer gst-plugins gst-plugins-gconf gnome-media gst-plugins-alsa. Uh, yeah that should probably cover it. |
I emerged the full gnome. Alsa, alsa-headers, alsa-drivers, alsa-tools, and alsa-utils are all installed as per my previous fix. Alsa is configured properly in the kernel and the proper modules load.
Thanks for the link, I'll check it out.
[EDIT] A-ha! gst-plugins-alsa was not emerged until, just to be safe, I reemerged everything in your list. Now the sound card is recognized by the Volume Manager and Gnome's Sound Preferences. However, no audio seems to be coming from it, still. |
|
Back to top |
|
|
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Thu May 24, 2007 3:31 am Post subject: |
|
|
Ok, I've sorted some problems out, and I think I've narrowed this down to a problem with the modules. Instead of loading all the modules needed, I get:
Code: |
Cannot insert soundcore... Invalid module format |
A google search pointed me towards the Blackfin docs, which says:
Quote: | Code: | root:~> modprobe snd-ad73311
soundcore: version magic '2.6.16.11-ADI-2006R1 gcc-4.1' should be '2.6.16.11-ADI-2006R1 gcc-3.4'
insmod: cannot insert `/lib/modules//2.6.16.11-ADI-2006R1/kernel/sound/soundcore.ko': Invalid module format (-1): Exec format error |
This error means you build the modules with a different version of the compiler than what the kernel is built with. You must build modules and kernel with the same version. |
After digging through some forum posts and mailing lists, I found only a little more info. Basically, soundcore was built with a different version of GCC than the kernel. Any attempts to load it return invalid format errors.
Any ideas? |
|
Back to top |
|
|
PaulBredbury Watchman
Joined: 14 Jul 2005 Posts: 7310
|
Posted: Thu May 24, 2007 4:17 am Post subject: |
|
|
JSorrell wrote: | Invalid module format |
So recompile it. Delete the old modules in /lib/modules/whatever
Code: | cd /usr/src/linux
make clean bzImage modules modules_install |
Then emerge alsa-driver, if you're using alsa-driver. I use in my recompilation script:
Code: | [[ -z $(grep SND_OSSEMUL=y /usr/src/linux/.config) ]] && emerge -1 alsa-driver |
|
|
Back to top |
|
|
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Thu May 24, 2007 5:54 am Post subject: |
|
|
PaulBredbury wrote: | JSorrell wrote: | Invalid module format |
So recompile it. Delete the old modules in /lib/modules/whatever
Code: | cd /usr/src/linux
make clean bzImage modules modules_install |
Then emerge alsa-driver, if you're using alsa-driver. I use in my recompilation script:
Code: | [[ -z $(grep SND_OSSEMUL=y /usr/src/linux/.config) ]] && emerge -1 alsa-driver |
|
No go. Still have the same errors. I recompiled everything involved, removed the old modules then recompiled them as per the kernel, etc. Same errors.
I'm not using alsa-drivers, they're built into the kernel and don't emerge. |
|
Back to top |
|
|
PaulBredbury Watchman
Joined: 14 Jul 2005 Posts: 7310
|
Posted: Thu May 24, 2007 6:12 am Post subject: |
|
|
Not sure whether this is needed, but you might as well run it, to recreate /lib/modules/whatever/modules.*
Then reboot.
PS there's no need to quote everything that I've just said, it's visible anyway and just means more scrolling
Edit: Also, ensure that the new kernel is made live. |
|
Back to top |
|
|
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Thu May 24, 2007 5:58 pm Post subject: |
|
|
Ok, I fixed the module problem. While your script didn't help, it did point me in the right direction and I was able to get the new kernel active and the modules loading.
Still no sound, but all the modules are loaded now so I feel I'm closer. |
|
Back to top |
|
|
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Thu May 24, 2007 7:30 pm Post subject: |
|
|
Woot, fixed it. Thanks Paul.
Here's what I did in case anyone else runs into this.
Kernel config:
Code: |
Device Drivers --->
Sound --->
<M> Sound card support
Advanced Linux Sound Architecture --->
<M> Advanced Linux Sound Architecture
<M> Sequencer support
< > Sequencer dummy client
<M> OSS Mixer API
<M> OSS PCM (digital audio) API
[*] OSS PCM (digital audio) API - Include plugin system
[*] OSS Sequencer API
<M> RTC Timer support
PCI Devices ->
<M> Intel HD Audio
|
returned output that confirmed the wrong kernel was being used. I changed /boot/grub/grub.conf to mirror the changes (went from booting 2.6.20-gentoo-r8 to 2.6.20-gentoo). The correct kernel now loads and ALSA (and framebuffer, woot) now load correctly.
now returns
Code: | ┌ (02:25 PM)--(Fri May 25)
└--(james@Darwin)--(~):lsmod
Module Size Used by
snd_pcm_oss 36384 0
snd_mixer_oss 16896 1 snd_pcm_oss
snd_seq_oss 29824 0
snd_seq_device 9352 1 snd_seq_oss
snd_seq_midi_event 9728 1 snd_seq_oss
snd_seq 44080 4 snd_seq_oss,snd_seq_midi_event
snd_hda_intel 18840 1
snd_hda_codec 152448 1 snd_hda_intel
snd_pcm 58116 3 snd_pcm_oss,snd_hda_intel,snd_hda_codec
snd_timer 19972 2 snd_seq,snd_pcm
snd 42212 11 snd_pcm_oss,snd_mixer_oss,snd_seq_oss,snd_seq_device,snd_seq,snd_hda_intel,snd_hda_codec,snd_pcm,snd_timer
soundcore 9568 1 snd
snd_page_alloc 11144 2 snd_hda_intel,snd_pcm
|
Soundcore now loads without error. But that didn't fix the sound all the way. After the new kernel was booted, I checked the contents of /etc/modules.d/alsa and added the line Code: | options snd-hda-intel model=auto | to /etc/modules.d/alsa. still didn't work. Just as an added check, opened /etc/modules.d/alsa-base and changed model=3stack to model=auto. Prior to the new kernel loading, that did not exist. Only after alsa-base had that line did sound start working. The only issue remaining is the default volume being 0. I can live with that though.
Last edited by JSorrell on Thu May 24, 2007 8:16 pm; edited 1 time in total |
|
Back to top |
|
|
PaulBredbury Watchman
Joined: 14 Jul 2005 Posts: 7310
|
Posted: Thu May 24, 2007 8:16 pm Post subject: |
|
|
Where's /etc/modules.d/alsa-base come from? I don't have that file. What does this show:
Code: | equery belongs alsa-base |
What matters is having the lines in /etc/modprobe.conf, and running update-modules is what regenerates /etc/modprobe.conf
Use alsamixer to set up the volume controls, then run:
That saves the configuration in /etc/asound.state, which /etc/init.d/alsasound will automatically use. |
|
Back to top |
|
|
JSorrell n00b
Joined: 23 May 2007 Posts: 7
|
Posted: Fri May 25, 2007 4:59 am Post subject: |
|
|
I don't know what generated alsa-base, and 'equery belongs alsa-base' returns nothing. All I know is changes to /etc/modules.d/alsa did nothing, and a seemingly vain edit to etc/modules.d/alsa-base fixed the sound problem.
I have fixed the volume issues as well now.
[EDIT] Well, I commented out the 'options...' lines in both /etc/modules.d/alsa and /etc/modules.d/alsa-base, which has, in the past, broken my sound, but no change occurred after multiple reboots. Oy vey, now I don't know what fixed it. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|