linux/sound/pci
Nikhil Mahale 9c32fea836 ALSA: hda - Add DP-MST support for non-acomp codecs
This patch make it possible for non-acomp codecs to set
dyn_pcm_assign/dp_mst and get DP-MST audio support.

Document change notification HDA040-A for the Intel High Definition
Audio 1.0a specification introduces a Device Select verb for Digital
Display Pin Widgets that are multi-stream capable. This verb selects
a Device Entry that is used by subsequent Pin Widget verbs.
Once the Device Entry is selected, all subsequent Pin Widget verbs
controlling the sink device will be directed to the selected Device
Entry until the Device Select verb is updated with a new value.

These Pin Widget verbs include:

  * Connection Select
  * Get Connection List Entry
  * Amplifier Gain/Mute
  * Power State
  * Pin Widget Control
  * ELD Data
  * DIP-Size
  * DIP-Index
  * DIP-Data
  * DIP-XmitCtrl
  * Content Protection Control
  * ASP Channel Mapping

This patch adds calls to snd_hda_set_dev_select() to direct each of
these Pin Widget control verbs to the correct Device Entry.

snd_hda_get_connections() does not return per-device connection
list, therefore make use snd_hda_get_raw_connections() instead of
snd_hda_get_connections().

Signed-off-by: Nikhil Mahale <nmahale@nvidia.com>
Reviewed-by: Aaron Plattner <aplattner@nvidia.com>
Link: https://lore.kernel.org/r/20191119084710.29267-4-nmahale@nvidia.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2019-11-19 11:51:10 +01:00
..
ac97 ALSA: ac97: remove unused variable 'snd_ac97_controls_master_mono' 2019-08-09 11:28:43 +02:00
ali5451 ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
asihpi ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
au88x0 ALSA: au88x0: Fix incorrect device pointer for preallocation 2019-11-12 15:33:52 +01:00
aw2 ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
ca0106 ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
cs46xx ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
cs5535audio ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
ctxfi ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
echoaudio ALSA: echoaudio: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
emu10k1 ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
hda ALSA: hda - Add DP-MST support for non-acomp codecs 2019-11-19 11:51:10 +01:00
ice1712 ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
korg1212 ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
lola ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
lx6464es ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
mixart ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
nm256 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
oxygen ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
pcxhr ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
riptide ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
rme9652 ALSA: rme: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
trident ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
vx222 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
ymfpci ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
ad1889.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
ad1889.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ak4531_codec.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
als300.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
als4000.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
atiixp_modem.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
atiixp.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
azt3328.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
azt3328.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bt87x.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
cmipci.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
cs4281.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
cs5530.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 2019-05-24 17:39:02 +02:00
ens1370.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
ens1371.c
es1938.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
es1968.c ALSA: es1968: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
fm801.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
intel8x0.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
intel8x0m.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
Kconfig sound: Fix Kconfig indentation 2019-10-07 03:53:03 +02:00
maestro3.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
rme32.c ALSA: rme32: Remove superfluous snd_dma_continuous_data() 2019-11-06 15:47:41 +01:00
rme96.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
sis7019.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
sis7019.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 274 2019-06-05 17:30:30 +02:00
sonicvibes.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
via82xx_modem.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00
via82xx.c ALSA: pci: Avoid non-standard macro usage 2019-11-06 15:47:43 +01:00