Table of Contents
Audio and snd-hda-intel
This HOWTO deals with issues related to sound cards which use the Intel HDA chipset.
Do you encounter audio problems such as:
- No sound?
- Headphones work but speakers do not?
- Speakers work but headphones do not?
- Speakers do not mute when headphones are plugged in?
- Audio inputs are not recognised?
Diagnosing the issue
Execute the command
lsmod | grep snd
in a terminal window. If there is a reference to
snd_hda_intel in the output then the
snd-hda-intel kernel module has been loaded as the driver for the controller chip and the codec chips on the HD-audio bus.
Execute the command
in a terminal window. If there are multiple sound devices then you will need to identify and set the sound device that you wish to use. See http://docs.slackware.com/howtos:hardware:sound_problems_on_slackware
snd-hda-intel kernel module tries to autodetect and configure your sound hardware, but this is not always successful. Some further configuration may help.
Often the fix is simple. Just create a file in the
/etc/modprobe.d/ directory and provide suitable options to the
snd-hda-intel kernel module. The actual file name is not important although it must have a
.conf suffix. You could use
snd-hda-intel.conf. Names used by other distributions to hold this information include
A simple way is to execute (as root)
echo "options snd-hda-intel model=auto" > /etc/modprobe.d/snd-hda-intel.conf
It is probably easiest just to reboot at this stage to check if it works right.
If you have multiple sound devices, then you can specify the index values that are to be assigned to each device, where index=0 is the default. For example, if
aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: Generic_1 [HD-Audio Generic], device 0: CX20756 Analog [CX20756 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0
then you could assign card 1 to index=0 with /etc/modprobe.d/snd-hda-intel.conf containing
alias char-major-116 snd alias snd-card-0 snd-hda-intel alias snd-card-1 snd-hda-intel options snd-hda-intel id=Generic_1 index=0 options snd-hda-intel id=Generic index=1
How to find the right options?
Very often the problem has already been solved. Use your favourite internet search engine and search for “snd-hda-intel <Your make> <Your model>”.
If that is unsuccessful then execute
cat /proc/asound/card*/codec* | grep Codec
The output from that command should be something like
Codec: SigmaTel STAC9227
You can then read the documentation in the file
/usr/src/linux/Documentation/sound/alsa/HD-Audio-Models.txt to see a list of possible models that can be used with your codec chip. The default is always
model=auto, but it has been reported that some devices seem to need that option supplied explicitly to be made to work.
If that does not work and you are very keen then take a look at the file
The table below shows options that have been reported to work. Suggestions for additions/amendments are very welcome!
|Make||Model||Output of '/sbin/lspci | grep Audio'||Option||Slackware Version|
|?||?||00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 01)||options snd-hda-intel model=auto||13.37|
|?||?||0:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 05)||options snd-hda-intel model=auto||13.37|
|Asus||Eee PC 1001px||?||options snd-hda-intel model=auto||13.1 with ALSA 1.0.24|
|Asus||K50IJ||00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)||options snd-hda-intel model=auto, enable_msi=1||14.0|
|Dell||Dimension E520||00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)||options snd-hda-intel model=3stack||13.37|
|Dell||Inspiron 1420||?||options snd-hda-intel model=dell||13.37|
|Dell||Inspiron 1545||?||options snd-hda-intel model=dell-m4-1||13.1|
|Dell||Inspiron 15R i7||?||options snd-hda-intel model=dell-s14||13.1|
|Gateway||4022||00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio (rev a2)||options snd-hda-intel model=3stack||13.1|
|Gateway||GT5468||?||options snd-hda-intel model=haier-w66||?|
|Gigabyte||GA-M68MT-S2 Motherboard||00:05.0 Audio device: nVidia Corporation MCP61 High Definition Audio (rev a2)||options snd-hda-intel model=auto||14.0|
|HP||Pavilion dv6-2140ca||01:00.1 Audio device: ATI Technologies Inc RV710/730||options snd-hda-intel model=hp-dv5, enable_msi=1||13.37|
|Intel||DG965SS motherboard||00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)||options snd-hda-intel model=auto||14.0|
|Lenovo||X120e||00:01.1 Audio device: ATI Technologies Inc Device 1314||options snd-hda-intel index=1||13.37 (with 22.214.171.124 kernel from /testing)|
|Toshiba||Satellite L30-10X||00:14.2 Audio device: ATI Technologies Inc IXP SB4x0 High Definition Audio Controller (rev 01)||options snd-hda-intel model=hp, enable_msi=1||12.0.0, 12.1.0, 12.2.0 (audio input not tested)|