]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: hda/hdmi - allow PIN_OUT to be dynamically enabled
authorStephen Warren <swarren@nvidia.com>
Thu, 30 Jan 2014 18:52:16 +0000 (11:52 -0700)
committerTakashi Iwai <tiwai@suse.de>
Fri, 31 Jan 2014 16:57:02 +0000 (17:57 +0100)
commit9c93b1bb1dff39dad96b8a74c6ed9767f75abb8e
treeea4167a1d71eaf6e3a5a742b4204bb90b3757967
parentdd9d18860083cf00d828ea473a93aabaf9e247bc
ALSA: hda/hdmi - allow PIN_OUT to be dynamically enabled

Commit e3750c90f4b8 "ALSA: hda: HDMI: Support codecs with fewer cvts
than pins" dynamically enabled each pin widget's PIN_OUT only when the
pin was actively in use. This was required on certain NVIDIA CODECs for
correct operation. Specifically, if multiple pin widgets each had their
mux input select the same audio converter widget and each pin widget had
PIN_OUT enabled, then only one of the pin widgets would actually receive
the audio, and often not the one the user wanted!

However, this apparently broke some Intel systems, and commit
0885bfea1076 "ALSA: hda - Always turn on pins for HDMI/DP" reverted the
dynamic setting of PIN_OUT. This in turn broke the afore-mentioned NVIDIA
CODECs.

This change supports either dynamic or static handling of PIN_OUT,
selected by a flag set up during CODEC initialization. This flag is
enabled for all recent NVIDIA GPUs.

Reported-by: Uosis <uosisl@gmail.com>
Cc: <stable@vger.kernel.org> # v3.13
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c