• Stephen Warren's avatar
    ALSA: hda/hdmi - allow PIN_OUT to be dynamically enabled · 75fae117
    Stephen Warren authored
    Commit 384a48d7 "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
    6169b673 "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: default avatarUosis <uosisl@gmail.com>
    Cc: <stable@vger.kernel.org> # v3.13
    Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    75fae117
patch_hdmi.c 93.6 KB