Codec errors when creating ALSA /etc/modprobe.d/asound.conf for HDMI
Codec errors when creating ALSA /etc/modprobe.d/asound.conf for HDMI
On this subject I have a couple of questions. First some background information, then the
questions at the end (thank you).
ubuntu 14 / 64 bit.
In order to get HDMI sound output from my computer to my sound system, it was ne
necessary to create the file "/etc/modprobe.d/asound.conf", and insert the following directive:
options snd-hda-intel enable_msi=0 probe_mask=0xffff,0xfff2
-OR-
options snd-hda-intel probe_mask=0xffff,0xfff2 (Without the enable_msi=0 part).
What this does is reduce the number of HDMI subdevices from 4 to 1, as shown here:
################################################
root# aplay -l **** BEFORE asound.conf file creation *****
################################################
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
################################################## #############
################################################## #############
root# aplay -l **** AFTER asound.conf file creation *****
################################################## #############
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
################################################## ############
I'm guessing that with only one HDMI subdevice to select from, there is no confusion
within the system.
Now this works, however not without the following side-effects:
- (1) On system boot, the "Starting udev..." phase, now takes about 10 seconds longer.
- (2) The following errors now show up in /var/log/messages (and in dmesg):
Feb 10 23:40:37 p170hm kernel: [ 6.766792] hda_intel: codec_mask forced to 0xff
Feb 10 23:40:37 p170hm kernel: [ 10.774471] ALSA hda_intel.c:725: No response from codec, disabling MSI: last cmd=0x100f0000
Feb 10 23:40:37 p170hm kernel: [ 11.774328] ALSA hda_intel.c:1432: Codec #1 probe error; disabling it...
Feb 10 23:40:37 p170hm kernel: [ 12.782183] ALSA hda_intel.c:1432: Codec #2 probe error; disabling it...
Feb 10 23:40:37 p170hm kernel: [ 13.790026] ALSA hda_intel.c:1432: Codec #3 probe error; disabling it...
Feb 10 23:40:37 p170hm kernel: [ 13.814872] hda_codec: ALC892: SKU not ready 0x598301f0
Feb 10 23:40:37 p170hm kernel: [ 13.815036] hda_codec: ALC892: BIOS auto-probing.
Feb 10 23:40:37 p170hm kernel: [ 13.819893] hda_intel: codec_mask forced to 0xf2
Feb 10 23:40:37 p170hm kernel: [ 17.832402] ALSA hda_intel.c:1432: Codec #4 probe error; disabling it...
Feb 10 23:40:37 p170hm kernel: [ 18.841263] ALSA hda_intel.c:1432: Codec #5 probe error; disabling it...
Feb 10 23:40:37 p170hm kernel: [ 19.850113] ALSA hda_intel.c:1432: Codec #6 probe error; disabling it...
Feb 10 23:40:37 p170hm kernel: [ 20.858942] ALSA hda_intel.c:1432: Codec #7 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 6.756237] hda_intel: codec_mask forced to 0xff
Feb 11 00:01:36 p170hm kernel: [ 10.763418] ALSA hda_intel.c:1432: Codec #1 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 11.771144] ALSA hda_intel.c:1432: Codec #2 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 12.778865] ALSA hda_intel.c:1432: Codec #3 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 12.803478] hda_codec: ALC892: SKU not ready 0x598301f0
Feb 11 00:01:36 p170hm kernel: [ 12.803642] hda_codec: ALC892: BIOS auto-probing.
Feb 11 00:01:36 p170hm kernel: [ 12.808572] hda_intel: codec_mask forced to 0xf2
Feb 11 00:01:36 p170hm kernel: [ 16.819659] ALSA hda_intel.c:1432: Codec #4 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 17.828386] ALSA hda_intel.c:1432: Codec #5 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 18.837102] ALSA hda_intel.c:1432: Codec #6 probe error; disabling it...
Feb 11 00:01:36 p170hm kernel: [ 19.845827] ALSA hda_intel.c:1432: Codec #7 probe error; disabling it...
My questions are as follows (three separate ones).
(1) From a practical perspective, what do the above codec errors mean (both for the driver
and system wide)? In other words what, exactly, is being disabled? Is some functionality
missing elsewhere because of this? Performance ramifications?
(2) I suspect that this is why, on boot, "Starting Udev...." takes longer (codec probe timeouts).
Agree/Disagree?
(3) What does enable_msi=[0|1] do? What does that mean? When is it necessary?
Thank you in advance all. I just need to understand this better because it just feels
like editing asound.conf may be a quickie hack and there is a more proper way to do this, that
does not result in these errors or udev delays.
Regards,
|