[ALSA] hda-codec - Add SI HDMI codec support
authorTakashi Iwai <tiwai@suse.de>
Mon, 4 Feb 2008 11:32:20 +0000 (12:32 +0100)
committerTakashi Iwai <tiwai@suse.de>
Thu, 24 Apr 2008 10:00:06 +0000 (12:00 +0200)
Added the support of SI HDMI codec, found in ASUS machines.
ALSA bug#3654
        https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3654

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_atihdmi.c

index 9a8bb4c..27d2e00 100644 (file)
@@ -58,6 +58,10 @@ static int atihdmi_build_controls(struct hda_codec *codec)
 static int atihdmi_init(struct hda_codec *codec)
 {
        snd_hda_sequence_write(codec, atihdmi_basic_init);
+       /* SI codec requires to unmute the pin */
+       if (get_wcaps(codec, 0x03) & AC_WCAP_OUT_AMP)
+               snd_hda_codec_write(codec, 0x03, 0, AC_VERB_SET_AMP_GAIN_MUTE,
+                                   AMP_OUT_UNMUTE);
        return 0;
 }
 
@@ -158,5 +162,6 @@ struct hda_codec_preset snd_hda_preset_atihdmi[] = {
        { .id = 0x10027919, .name = "ATI RS600 HDMI", .patch = patch_atihdmi },
        { .id = 0x1002791a, .name = "ATI RS690/780 HDMI", .patch = patch_atihdmi },
        { .id = 0x1002aa01, .name = "ATI R6xx HDMI", .patch = patch_atihdmi },
+       { .id = 0x10951392, .name = "SI HDMI", .patch = patch_atihdmi },
        {} /* terminator */
 };