[alsa-devel] Problems with the DP MST audio support patchset
Michael Forney
mforney at mforney.org
Fri May 26 06:09:37 CEST 2017
On Thu, May 25, 2017 at 1:21 AM, Michael Forney <mforney at mforney.org> wrote:
> Hi,
>
> I recently updated my kernel to 4.11, and am experiencing similar
> problems as Pascal. I have a Skylake processor and DP output hooked up
> with a DP to HDMI cable to an Onkyo SR-606 receiver.
>
> I can't get audio to work at all through my receiver anymore. I tried
> both DTS and PCM audio files. I bisected it to the above mentioned
> commit 9152085defb6426ce8f9989ca27e4450daefbd89 (ALSA: hda - add DP
> MST audio support).
>
>>> Do you know if the DP MST audio mode is used in your case?
>
> I don't know what DP MST is or how to tell if I'm using it. However, I
> noticed that when it does work, `aplay -L` gives me
>
> hdmi:CARD=PCH,DEV=0
> HDA Intel PCH, HDMI 0
> HDMI Audio Output
> hdmi:CARD=PCH,DEV=1
> HDA Intel PCH, HDMI 1
> HDMI Audio Output
>
> and when it doesn't, I get
>
> hdmi:CARD=PCH,DEV=0
> HDA Intel PCH, Generic Digital
> HDMI Audio Output
Well, I noticed in my dmesg log for 4.11:
<4>[ 1.201789] snd_hda_intel 0000:00:1f.3: Too many HDMI devices
<4>[ 1.201790] snd_hda_intel 0000:00:1f.3: Consider building the
kernel with CONFIG_SND_DYNAMIC_MINORS=y
<4>[ 1.201792] snd_hda_intel 0000:00:1f.3: Too many HDMI devices
<4>[ 1.201794] snd_hda_intel 0000:00:1f.3: Consider building the
kernel with CONFIG_SND_DYNAMIC_MINORS=y
<4>[ 1.201795] snd_hda_intel 0000:00:1f.3: Too many HDMI devices
<4>[ 1.201797] snd_hda_intel 0000:00:1f.3: Consider building the
kernel with CONFIG_SND_DYNAMIC_MINORS=y
<3>[ 1.202668] snd_hda_intel 0000:00:1f.3: control 3:0:0:ELD:0 is
already present
<4>[ 1.202737] snd_hda_codec_hdmi: probe of hdaudioC0D2 failed with error -16
<4>[ 1.204335] snd_hda_intel 0000:00:1f.3: Too many HDMI devices
<4>[ 1.204337] snd_hda_intel 0000:00:1f.3: Consider building the
kernel with CONFIG_SND_DYNAMIC_MINORS=y
<4>[ 1.204338] snd_hda_intel 0000:00:1f.3: Too many HDMI devices
<4>[ 1.204340] snd_hda_intel 0000:00:1f.3: Consider building the
kernel with CONFIG_SND_DYNAMIC_MINORS=y
<4>[ 1.204341] snd_hda_intel 0000:00:1f.3: Too many HDMI devices
<4>[ 1.204343] snd_hda_intel 0000:00:1f.3: Consider building the
kernel with CONFIG_SND_DYNAMIC_MINORS=y
<3>[ 1.205412] snd_hda_intel 0000:00:1f.3: control 3:0:0:ELD:0 is
already present
<4>[ 1.205464] snd_hda_codec_hdmi: probe of hdaudioC0D2 failed with error -16
<6>[ 1.205644] snd_hda_codec_generic hdaudioC0D2: ignore pin 0x7,
too many assigned pins
<6>[ 1.205648] snd_hda_codec_generic hdaudioC0D2: autoconfig for
Generic: line_outs=0 (0x0/0x0/0x0/0x0/0x0) type:line
<6>[ 1.205651] snd_hda_codec_generic hdaudioC0D2: speaker_outs=0
(0x0/0x0/0x0/0x0/0x0)
<6>[ 1.205653] snd_hda_codec_generic hdaudioC0D2: hp_outs=0
(0x0/0x0/0x0/0x0/0x0)
<6>[ 1.205655] snd_hda_codec_generic hdaudioC0D2: mono: mono_out=0x0
<6>[ 1.205656] snd_hda_codec_generic hdaudioC0D2: dig-out=0x5/0x6
<6>[ 1.205658] snd_hda_codec_generic hdaudioC0D2: inputs:
<6>[ 1.207882] input: HDA Intel PCH Mic as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input4
<6>[ 1.207979] input: HDA Intel PCH Front Headphone as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input5
<6>[ 1.208070] input: HDA Intel PCH HDMI/DP,pcm=3 as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input6
<6>[ 1.208158] input: HDA Intel PCH HDMI/DP,pcm=7 as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input7
<6>[ 1.208246] input: HDA Intel PCH HDMI/DP as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input8
<6>[ 1.208335] input: HDA Intel PCH HDMI/DP as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input9
<6>[ 1.208441] input: HDA Intel PCH HDMI as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input12
<6>[ 1.208582] input: HDA Intel PCH HDMI as
/devices/pci0000:00/0000:00:1f.3/sound/card0/input13
<4>[ 1.208700] ------------[ cut here ]------------
<4>[ 1.208708] WARNING: CPU: 0 PID: 43 at fs/proc/generic.c:346
proc_register+0xe9/0x110
<4>[ 1.208709] proc_dir_entry 'card0/eld#2.0' already registered
<4>[ 1.208710] Modules linked in:
<4>[ 1.208715] CPU: 0 PID: 43 Comm: kworker/0:1 Not tainted 4.11.3+ #41
<4>[ 1.208716] Hardware name: HP HP EliteDesk 800 G2 DM 35W/8055,
BIOS N21 Ver. 02.14 04/28/2016
<4>[ 1.208721] Workqueue: events azx_probe_work
<4>[ 1.208723] Call Trace:
<4>[ 1.208729] dump_stack+0x4d/0x66
<4>[ 1.208733] __warn+0xc6/0xe0
<4>[ 1.208737] warn_slowpath_fmt+0x46/0x50
<4>[ 1.208742] proc_register+0xe9/0x110
<4>[ 1.208746] proc_create_data+0x71/0xc0
<4>[ 1.208750] snd_info_register+0x66/0xd0
<4>[ 1.208753] snd_info_register_recursive+0x5b/0x70
<4>[ 1.208756] snd_info_register_recursive+0x46/0x70
<4>[ 1.208759] snd_info_card_register+0x25/0xa0
<4>[ 1.208764] snd_card_register+0x140/0x190
<4>[ 1.208769] ? device_attach+0xb/0x10
<4>[ 1.208773] ? snd_hda_codec_configure+0xb1/0x120
<4>[ 1.208776] azx_probe_work+0x47d/0x860
<4>[ 1.208778] ? azx_probe_work+0x47d/0x860
<4>[ 1.208783] process_one_work+0x1ec/0x480
<4>[ 1.208787] worker_thread+0x43/0x4d0
<4>[ 1.208790] kthread+0x104/0x140
<4>[ 1.208794] ? process_one_work+0x480/0x480
<4>[ 1.208797] ? kthread_create_on_node+0x40/0x40
<4>[ 1.208802] ret_from_fork+0x29/0x40
<4>[ 1.208805] ---[ end trace 538d7309f1b9646f ]---
So I added CONFIG_SND_DYNAMIC_MINORS=y as suggested (previously it was
disabled based on the help text). That seemed to do the trick.
However, the `proc_dir_entry 'card0/eld#2.0' already registered`
warning seems like it could be a bug despite this.
I guess the problem was this new MST feature means that now I have 5
HDMI outputs showing up, which is too many.
Sorry for the noise.
More information about the Alsa-devel
mailing list