ALSA: hda - hdmi: Make jacks phantom, if they're not detectable
authorDavid Henningsson <david.henningsson@canonical.com>
Fri, 22 Feb 2013 09:16:28 +0000 (10:16 +0100)
committerTakashi Iwai <tiwai@suse.de>
Fri, 22 Feb 2013 09:23:32 +0000 (10:23 +0100)
Just as for analog codecs, a jack that isn't suitable for detection
(in this case, NO_PRESENCE was set) should be a phantom Jack
instead of a normal one.

Thanks to Raymond Yau for spotting.

Cc: stable@vger.kernel.org
BugLink: https://bugs.launchpad.net/bugs/961286
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=903869
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c

index 21425fb51fe0b86c6f3d9822d5618fde80db45e5..78e1827d0a956cd2ce9eaeb7fcc92d1f7ab3f6b2 100644 (file)
@@ -1640,6 +1640,9 @@ static int generic_hdmi_build_jack(struct hda_codec *codec, int pin_idx)
 
        if (pcmdev > 0)
                sprintf(hdmi_str + strlen(hdmi_str), ",pcm=%d", pcmdev);
+       if (!is_jack_detectable(codec, per_pin->pin_nid))
+               strncat(hdmi_str, " Phantom",
+                       sizeof(hdmi_str) - strlen(hdmi_str) - 1);
 
        return snd_hda_jack_add_kctl(codec, per_pin->pin_nid, hdmi_str, 0);
 }