SDB:Intel-HDA sound problems

From openSUSE


Sympton

The Soundcard looks like it was properly configured with YaST but you can't hear any sound, can't use the mixer or the channels are wrongly assigned. This might also help if your Laptop don't switch of the speaker if you plugin a headphone. In this case you should be able after the changes to control the volumes (speaker and headphone) independently.

Cause

There a a lot of different hda-intel soundcards on the market, unfortunately YaST can't always automaticly configure them correctly.

Solution

Open a terminal like konsole and login as root. Find out what kind of codec is used for your soundcard:

head -n 1 /proc/asound/card0/codec*

here is an example output:

  ==> /proc/asound/card0/codec#0 <==
  Codec: Realtek ALC883
  
  ==> /proc/asound/card0/codec#1 <==
  Codec: Conexant ID 2c06

In this example the codec for the card is codec#0, ALC883.

The options for the modules are available in the kernel-source.rpm, install this if it's not already on your system.

In the file /usr/src/KERNEL_VERSION/Documentation/sound/alsa/ALSA-Configuration.txt search for the codec, in this example again ACL883.

  ALC883/888
	  3stack-dig	3-jack with SPDIF I/O						
	  6stack-dig	6-jack digital with SPDIF I/O					
	  3stack-6ch    3-jack 6-channel						
	  3stack-6ch-dig 3-jack 6-channel with SPDIF I/O				
	  6stack-dig-demo  6-jack digital for Intel demo board				
	  acer		Acer laptops (Travelmate 3012WTMi, Aspire 5600, etc)		
	  medion	Medion Laptops							
	  medion-md2	Medion MD2							
	  targa-dig	Targa/MSI							
	  targa-2ch-dig	Targs/MSI with 2-channel					
	  laptop-eapd   3-jack with SPDIF I/O and EAPD (Clevo M540JE, M550JE)		
	  lenovo-101e	Lenovo 101E							
	  lenovo-nb0763	Lenovo NB0763							
	  lenovo-ms7195-dig Lenovo MS7195						
	  6stack-hp	HP machines with 6stack (Nettle boards)				
	  3stack-hp	HP machines with 3stack (Lucknow, Samba boards)			
	  auto		auto-config reading BIOS (default)

You have to enter the option into /etc/modprobe.d/sound. The original file should look like this:

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

after the change:

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

Add or change only the model= part of the configuration.

Before restarting make sure to change ALSA settings such that Microphone channels are muted to prevent sound loopback and squealing sound. Not doing this might cause high and continuous beep sounds. One can do this usinf alsamixer.

alsamixer

Save the file /etc/modprobe.d/sound after the changes and restart the soundsystem as root.

rcalsasound restart

You have to restart the mixer you use, so start as user kmix or gmix, depending on what windowmanager you use. Open the mixer and set all channels to medium and check if you can hear sound now.

If you start KMix with a left mouse click, you will see only the main volume slider. Click on Mixer to see all channels.


If this was not successfull, use another option in /etc/modprobe.d/sound and restart the procedure.