No sound on IBM laptop

Hi all,

Just installed opensuse 11.0 on my ibm stinkpad. My sounds seems to be dead. I have looked through the audio troublehshooter with no joy. I am including some things to get an idea of what I could look at next.

ibm-linux:/etc/modprobe.d # rpm -qa | grep alsa
ibm-linux:/etc/modprobe.d # rpm -qa | grep pulse
ibm-linux:/etc/modprobe.d # rpm -q libasound2
ibm-linux:/etc/modprobe.d # uname -a
Linux ibm-linux #1 SMP 2008-06-07 01:55:22 +0200 i686 i686 i386 GNU/Linux
ibm-linux:/etc/modprobe.d # cat /etc/modprobe.d/sound
alias snd-card-0 snd-intel8x0
alias sound-slot-0 snd-intel8x0
ibm-linux:/etc/modprobe.d #

I also ran a script that uploads the tsalsa.txt to the no past site: tsalsa.txt - (beta)

Can someone point me in the right direction?



Thanks, running that script was especially helpful. It tells me your thinkpad as an AD1981B.

I noted some aspects out of your mixer settings:

Amixer contents for card 0 [ICH6] _____________________________________        
amixer set 'Headphone',0 68%,68% on        
amixer set 'Line',0 45% off 45% off Capture on        
amixer set 'External Amplifier',0 on        

On earlier openSUSE versions, this AD1981B has often caused user problems. The “trick” appears to be to switch the External Amp OFF. Please try that.

I’ve also read of an other user who suggested that if switching OFF the External Amp was not enough, then one should also switch OFF the “headphone jack” and the “line sense jack”. I’m not convinced that is a solution, but if switching off the External Amp does not “do the trick” by itself, you could also try switching OFF those two.

First, thanks for replying.

When you say switch it off do you mean to just go into Kmix and make it dark? If so, I tried this with no joy along with the phone part of it. If not, is there a better way for me to do this?



I mean disable it.

Also, what is your sound test? Please use the following as a sound test (copy and paste the following into an xterm/konsole):
speaker-test -Dplug:front -c2 -l5 -twav

Also, reboot and check your BIOS. Ensure your sound is ENABLED. Also ensure your MODEM in the BIOS is enabled (as I have read disabling the modem has blocked the sound for some IBM laptop users).

Did your “looking” including running alsaconf ?

Try the following edit in your /etc/modprobe.d/sound file:

alias snd-card-0 snd-intel8x0
alias sound-slot-0 snd-intel8x0
options snd-intel8x0 model=thinkpad

Then restart your alsa by typing the following in an xterm/konsole: rcalsasound restart
Then test your sound with:
speaker-test -Dplug:front -c2 -l5 -twav

Note the following must be done in conjunction with your external amp switched off (disabled).

If that doesn’t work, you could also try “toshiba” instead of “thinkpad”, or “hp” instead of “thinkpad”, but I think “thinkpad” most likely for your IBM.


I did try to run alsaconf and it seems to run properly but when it plays the test wav i am still unable to hear it.

How might i actually disable the portion you are speaking of?

Also, I tried to make the changes to my sound in modprobe directory but when restarting I receive this error:

ibm-linux:/etc/modprobe.d # rcalsasound restart
/usr/sbin/alsactl: save_state:1497: No soundcards found…
Shutting down sound driver done
Starting sound driver: intel8x0FATAL: Error inserting snd_intel8x0 (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)

I see this in dmesg:

snd_intel8x0: Unknown parameter `model’

Thanks. … I gave you a model option for the AD1981, even though you have an AD1981B. Maybe that “thinkpad” option will not work in an AD1981B.

Please, can you post here the EXACT contents of your /etc/modprobe.d/with that change, so I can check your syntax? ie output of typing:
cat /etc/modprobe.d/sound

You could also try this syntax:

alias snd-card-0 snd-intel8x0 model=thinkpad
alias sound-slot-0 snd-intel8x0

… and then try “rcalsasound restart” again.

or perhaps try this:

alias snd-card-0 snd-intel8x0 model=auto
alias sound-slot-0 snd-intel8x0

… and then try “rcalsasound restart” again.

If those do not work, put your /etc/modprobe./sound back to how it was originally.

Don’t forget to check the BIOS like I asked.

ALL OF THE OTHER TESTS ARE LIKELY MEANINGLESS if you don’t do this … ie you will have to do them again. Please, don’t waste your time here. Get this done first. Lets be clear on this.

There should be a setting in kmix (if using kde) or alsamixer (if using Gnome). Failing that, you could try “amixer” from a konsole/xterm, although that is not very user friendly. “man amixer” will provide a difficult to follow “man” guide.

I checked the bios ask you asked but forgot to post that everything checked out ok.

When I move the model=thinkpad up and get rid of the options line I get something else a little weird.

ibm-linux:/etc/modprobe.d # cat sound
options snd slots=snd-intel8x0 model=thinkpad
alias snd-card-0 snd-intel8x0

ibm-linux:/etc/modprobe.d # rcalsasound restart
Starting sound driver: intel8x0WARNING: Error inserting snd (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)
WARNING: Error inserting snd_timer (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)
WARNING: Error inserting snd_pcm (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)
WARNING: Error inserting snd_ac97_codec (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)
FATAL: Error inserting snd_intel8x0 (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)

and dmesg…

PCI: Setting latency timer of device 0000:00:1e.2 to 64
intel8x0_measure_ac97_clock: measured 55363 usecs
intel8x0: clocking to 48000
ACPI: PCI interrupt for device 0000:00:1e.2 disabled
snd_intel8x0: Unknown parameter model' ACPI: PCI Interrupt 0000:00:1e.2[A] -> GSI 22 (level, low) -> IRQ 22 PCI: Setting latency timer of device 0000:00:1e.2 to 64 intel8x0_measure_ac97_clock: measured 55336 usecs intel8x0: clocking to 48000 ACPI: PCI interrupt for device 0000:00:1e.2 disabled snd: Unknown parameter model’
snd_timer: Unknown symbol snd_verbose_printd
snd_timer: Unknown symbol snd_info_register
snd_timer: Unknown symbol snd_info_create_module_entry
snd_timer: Unknown symbol snd_info_free_entry
snd_timer: Unknown symbol snd_verbose_printk
snd_timer: Unknown symbol snd_iprintf
snd_timer: Unknown symbol snd_ecards_limit
snd_timer: Unknown symbol snd_oss_info_register
snd_timer: Unknown symbol snd_unregister_device
snd_timer: Unknown symbol snd_device_new
snd_timer: Unknown symbol snd_register_device_for_dev
snd_pcm: Unknown symbol snd_verbose_printd
snd_pcm: Unknown symbol snd_info_register
snd_pcm: Unknown symbol snd_info_create_module_entry
snd_pcm: Unknown symbol snd_timer_notify
snd_pcm: Unknown symbol snd_timer_interrupt
snd_pcm: Unknown symbol snd_info_free_entry
snd_pcm: Unknown symbol snd_add_device_sysfs_file
snd_pcm: Unknown symbol snd_info_get_str
snd_pcm: Unknown symbol snd_verbose_printk
snd_pcm: Unknown symbol snd_ctl_register_ioctl
snd_pcm: Unknown symbol snd_card_file_add
snd_pcm: Unknown symbol snd_iprintf
snd_pcm: Unknown symbol snd_major
snd_pcm: Unknown symbol snd_unregister_device
snd_pcm: Unknown symbol snd_timer_new
snd_pcm: Unknown symbol snd_device_new
snd_pcm: Unknown symbol snd_ctl_unregister_ioctl
snd_pcm: Unknown symbol snd_lookup_minor_data
snd_pcm: Unknown symbol snd_info_create_card_entry
snd_pcm: Unknown symbol snd_power_wait
snd_pcm: Unknown symbol snd_device_free
snd_pcm: Unknown symbol snd_card_file_remove
snd_pcm: Unknown symbol snd_register_device_for_dev
snd_pcm: Unknown symbol snd_device_register
snd_pcm: Unknown symbol snd_info_get_line
snd_ac97_codec: Unknown symbol snd_info_register
snd_ac97_codec: Unknown symbol snd_ctl_add
snd_ac97_codec: Unknown symbol snd_info_free_entry
snd_ac97_codec: Unknown symbol snd_interval_refine
snd_ac97_codec: Unknown symbol snd_ctl_find_id
snd_ac97_codec: Unknown symbol snd_verbose_printk
snd_ac97_codec: Unknown symbol snd_ctl_new1
snd_ac97_codec: Unknown symbol snd_ctl_remove_id
snd_ac97_codec: Unknown symbol snd_component_add
snd_ac97_codec: Unknown symbol snd_pcm_hw_rule_add
snd_ac97_codec: Unknown symbol snd_iprintf
snd_ac97_codec: Unknown symbol snd_ctl_boolean_mono_info
snd_ac97_codec: Unknown symbol snd_device_new
snd_ac97_codec: Unknown symbol snd_info_create_card_entry
snd_ac97_codec: Unknown symbol snd_info_get_line
snd_intel8x0: Unknown symbol snd_verbose_printd
snd_intel8x0: Unknown symbol snd_ac97_pcm_close
snd_intel8x0: Unknown symbol snd_ac97_resume
snd_intel8x0: Unknown symbol snd_pcm_new
snd_intel8x0: Unknown symbol snd_pcm_limit_hw_rates
snd_intel8x0: Unknown symbol snd_card_register
snd_intel8x0: Unknown symbol snd_card_free
snd_intel8x0: Unknown symbol snd_pcm_lib_preallocate_pages_for_all
snd_intel8x0: Unknown symbol snd_card_proc_new
snd_intel8x0: Unknown symbol snd_ac97_pcm_open
snd_intel8x0: Unknown symbol snd_ac97_set_rate
snd_intel8x0: Unknown symbol snd_ac97_update_bits
snd_intel8x0: Unknown symbol snd_ac97_mixer
snd_intel8x0: Unknown symbol snd_ac97_bus
snd_intel8x0: Unknown symbol snd_verbose_printk
snd_intel8x0: Unknown symbol snd_ac97_pcm_double_rate_rules
snd_intel8x0: Unknown symbol snd_ac97_update_power
snd_intel8x0: Unknown symbol snd_card_new
snd_intel8x0: Unknown symbol snd_ac97_suspend
snd_intel8x0: Unknown symbol snd_iprintf
snd_intel8x0: Unknown symbol snd_pcm_lib_malloc_pages
snd_intel8x0: Unknown symbol snd_pcm_lib_ioctl
snd_intel8x0: Unknown symbol snd_pcm_lib_free_pages
snd_intel8x0: Unknown symbol snd_pcm_set_ops
snd_intel8x0: Unknown symbol snd_pcm_hw_constraint_list
snd_intel8x0: Unknown symbol snd_device_new
snd_intel8x0: Unknown symbol snd_ac97_get_short_name
snd_intel8x0: Unknown symbol snd_pcm_suspend_all
snd_intel8x0: Unknown symbol snd_card_disconnect
snd_intel8x0: Unknown symbol snd_ac97_pcm_assign
snd_intel8x0: Unknown symbol snd_pcm_hw_constraint_integer
snd_intel8x0: Unknown symbol snd_pci_quirk_lookup
snd_intel8x0: Unknown symbol snd_pcm_hw_constraint_msbits
snd_intel8x0: Unknown symbol snd_pcm_period_elapsed
snd_intel8x0: Unknown symbol snd_ac97_tune_hardware
ibm-linux:/etc/modprobe.d #

I also had already used alsamixer to go through and set the external amp to OFF, i assume this is what you mean by disabled.

Is that what I asked for?? I thought I asked for this:

alias snd-card-0 snd-intel8x0 model=thinkpad
alias sound-slot-0 snd-intel8x0 

…Please don’t deviate, or if you do, explain your logic for deviating. … :slight_smile: … I almost missed that bad syntax :mad:

Also, if that doesn’t work, how about this:

alias sound-slot-0 snd-intel8x
alias snd-card-0 snd-intel8x0
options snd-intel8x0 model=thinkpad

I did not see your syntax for that (to ensure you did not make a syntax error). Again, restart alsa with “rcalsasound restart”. And try the other options: “auto”, “basic”, “hp”, “toshiba” one at a time. I have read in this forum that there is a bug in yast in reading a first line that has a “model=something” command, but I do not know how authoritative that claim of a bug is.

Here is another syntax format for an /etc/modprobe.d/sound file you can try:

options snd-intel8x0 enable=1 index=0
alias snd-card-0 snd-intel8x0 


options snd-intel8x0 enable=1 index=0 model=something
alias snd-card-0 snd-intel8x0 

where “something” is one of those model options.


alias snd-card-0 snd-intel8x0 
options snd-intel8x0 enable=1 index=0 model=something

where “something” is one of those model options.

I also skimmed thru the thinkwiki for this AD1981B, but it offered minimal insight:
AD1981B - ThinkWiki

Also, please ensure you are not making any mistakes re: hardware. ie if there is a physical volume control or mute on the laptop chassis, please ensure that is not blocking your sound.

I have never seen the syntax “snd slots=snd-intel8x0” before. Where did you get that from ??

Hi there. New to openSUSE here… anywho, I started with 10.3 about a month ago on a new lappy, and my working modprobe.d/sound (for my Asus M51Sn) looked something like this:

options snd-hda-intel model=lenovo enable=1 index=0
# u1Nb.CueKaYhNzbB:82801H (ICH8 Family) HD Audio Controller
alias snd-card-0 snd-hda-intel

Yes, I am aware the model says lenovo. Surprisingly, hp worked for the model as well. When I did a clean install of openSUSE 11.0, my modprobe.d/sound looked something like this:

options snd slots=snd-hda-intel
# u1Nb.CueKaYhNzbB:82801H (ICH8 Family) HD Audio Controller
alias snd-card-0 snd-hda-intel

Reverting back to the 10.3 style seemed to fix my problems. On another note, whenever I set the model to lenovo through yast, it never seemed to save it to my sound file! I had to do it manually… I hope this helps of you guys.


Sorry for the delay…it was time to go home!

the syntax you did not know came from the redoing of my card with yast! I did not add anything I did not get from this site.

at any rate, i tried every single one of those commands, straight copy and paste into my sound file. none of which works. For some reason if i have the “model=” argument in the file I always get exactly the same error…

Starting sound driver: intel8x0FATAL: Error inserting snd_intel8x0 (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)

alsa is not excepting this option for the sound file and I cannot understand it.

I have also made sure that nothing on the laptop is preventing me from hearing the sound. nothing is muted. before I put 11.0 on here I had windoz on and the sound worked…so hardware is out as well.

I have no more ideas.

Either try again (being very careful with the syntax), or write a bug report.

Or maybe someone who knows more than I can chime in. I’m just a user, not an expert in the code.

Thank you for your help.

Sorry I can’t help.

How confident are you that your hardware is good? Can you dual boot to windows and check out your sound there?

You could try testing from a live CD, such as kanotix, knoppix, or sidux.

its cool…thanks for trying.

well i fell back to 10.3, and the sound works fine. no idea what the deal is with the 11.0 install on this laptop…very weird.

Glad to read you have your sound back, even if it does mean going back to 10.3. I still have 10.3 on my main PC (and am running 11.0 only on my test PC). I suspect it will be in late July, or sometime in August before I update my main PC to 11.0. I’m still waiting to see if any suprises jump out of the woodwork.

Now if one wants really good sound, JAD (an openSUSE offshoot, where openSUSE rpms work on the JAD distribution) is quite possibly the way to go:
web site: - the home of JAD
jad wiki: JAD introduction - JackLab UserWiki

It is weird. Lets just keep watching for anyone else having a problem with an AD1981B on openSUSE-11.0.

I do note the structure of the alsa updates for openSUSE has just been changed, with the alsa-driver-kmp-<yourkernel> being moved to a different repository. tiwai recently edited both the audiotroubleshooting guide and the alsa-update guide. I don’t think these updates will help you immediately, but just to have such a contribution to our openSUSE from an alsa developer (ie from tiwai) means a lot to me. I think its a good sign for the future in bringing the developers and the users closer together.

I agree about the developer deal. Thankfully, this is a test laptop and not my main work system and I am glad I tested before making a major move. just for giggles…what works on my 10.3 system is:

options snd-intel8x0 enable=1 index=0
alias snd-card-0 snd-intel8x0