alsa-mixer: increase the max number of HDMI/DP output device to 11

Intel TGL HDMI/DP codec provides 9 pins (Linux kernel, 9a11ba7388f16:
ALSA: hda: hdmi - add Tigerlake support), and with the DP MST enabled,
the linux kernel will build 11 output devices (3, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16), and the alsa-lib will map 11 PCM devices from HDMI:0
to HDMI:10, but current pulseaudio only supports 8 HDMI/DP devices,
if users plug the HDMI/DP monitor to the last 3 ports, the users will
not see the output device from pulseaudio or gnome.

We have experienced this issue on a dell TGL machine with a dock, we
plugged 2 HDMP/DP monitors on the dock, but we could only see 1
HDMI/DP output device from pulseaudio or gnome, through investigation,
we found one monitor is plugged in the 2nd port from last.

Here we add 3 HDMI/DP output devices.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/495>
This commit is contained in:
Hui Wang 2021-02-02 10:07:36 +08:00 committed by PulseAudio Marge Bot
parent 45d896f8eb
commit f0f07c7db5
5 changed files with 135 additions and 0 deletions

View file

@ -1413,6 +1413,9 @@ dist_alsapaths_DATA = \
modules/alsa/mixer/paths/hdmi-output-5.conf \
modules/alsa/mixer/paths/hdmi-output-6.conf \
modules/alsa/mixer/paths/hdmi-output-7.conf \
modules/alsa/mixer/paths/hdmi-output-8.conf \
modules/alsa/mixer/paths/hdmi-output-9.conf \
modules/alsa/mixer/paths/hdmi-output-10.conf \
modules/alsa/mixer/paths/steelseries-arctis-output-chat-common.conf \
modules/alsa/mixer/paths/steelseries-arctis-output-game-common.conf \
modules/alsa/mixer/paths/usb-gaming-headset-input.conf \

View file

@ -0,0 +1,12 @@
[General]
description = HDMI / DisplayPort 11
type = hdmi
priority = 49
eld-device = auto
[Properties]
device.icon_name = video-display
[Jack HDMI/DP]
append-pcm-to-name = yes
required = ignore

View file

@ -0,0 +1,12 @@
[General]
description = HDMI / DisplayPort 9
type = hdmi
priority = 51
eld-device = auto
[Properties]
device.icon_name = video-display
[Jack HDMI/DP]
append-pcm-to-name = yes
required = ignore

View file

@ -0,0 +1,12 @@
[General]
description = HDMI / DisplayPort 10
type = hdmi
priority = 50
eld-device = auto
[Properties]
device.icon_name = video-display
[Jack HDMI/DP]
append-pcm-to-name = yes
required = ignore

View file

@ -461,6 +461,102 @@ channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping hdmi-stereo-extra8]
description = Digital Stereo (HDMI 9)
device-strings = hdmi:%f,8
paths-output = hdmi-output-8
channel-map = left,right
priority = 7
direction = output
[Mapping hdmi-surround-extra8]
description = Digital Surround 5.1 (HDMI 9)
device-strings = hdmi:%f,8
paths-output = hdmi-output-8
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping hdmi-surround71-extra8]
description = Digital Surround 7.1 (HDMI 9)
device-strings = hdmi:%f,8
paths-output = hdmi-output-8
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
priority = 6
direction = output
[Mapping hdmi-dts-surround-extra8]
description = Digital Surround 5.1 (HDMI 9/DTS)
device-strings = dcahdmi:%f,8
paths-output = hdmi-output-8
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping hdmi-stereo-extra9]
description = Digital Stereo (HDMI 10)
device-strings = hdmi:%f,9
paths-output = hdmi-output-9
channel-map = left,right
priority = 7
direction = output
[Mapping hdmi-surround-extra9]
description = Digital Surround 5.1 (HDMI 10)
device-strings = hdmi:%f,9
paths-output = hdmi-output-9
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping hdmi-surround71-extra9]
description = Digital Surround 7.1 (HDMI 10)
device-strings = hdmi:%f,9
paths-output = hdmi-output-9
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
priority = 6
direction = output
[Mapping hdmi-dts-surround-extra9]
description = Digital Surround 5.1 (HDMI 10/DTS)
device-strings = dcahdmi:%f,9
paths-output = hdmi-output-9
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping hdmi-stereo-extra10]
description = Digital Stereo (HDMI 11)
device-strings = hdmi:%f,10
paths-output = hdmi-output-10
channel-map = left,right
priority = 7
direction = output
[Mapping hdmi-surround-extra10]
description = Digital Surround 5.1 (HDMI 11)
device-strings = hdmi:%f,10
paths-output = hdmi-output-10
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping hdmi-surround71-extra10]
description = Digital Surround 7.1 (HDMI 11)
device-strings = hdmi:%f,10
paths-output = hdmi-output-10
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
priority = 6
direction = output
[Mapping hdmi-dts-surround-extra10]
description = Digital Surround 5.1 (HDMI 11/DTS)
device-strings = dcahdmi:%f,10
paths-output = hdmi-output-10
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 6
direction = output
[Mapping multichannel-output]
device-strings = hw:%f
channel-map = left,right,rear-left,rear-right