aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_atihdmi.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-02-04 12:32:20 +0100
committerTakashi Iwai <tiwai@suse.de>2008-04-24 12:00:06 +0200
commit12a733e56c0f1c78bd34bf36e9765463fd51c88e (patch)
tree618ff3ae5d170a9417ab9d5cf22e75568da6429c /sound/pci/hda/patch_atihdmi.c
parent09f99701393c7b66bde01df6c292fe5d9f843033 (diff)
downloadkernel_samsung_crespo-12a733e56c0f1c78bd34bf36e9765463fd51c88e.zip
kernel_samsung_crespo-12a733e56c0f1c78bd34bf36e9765463fd51c88e.tar.gz
kernel_samsung_crespo-12a733e56c0f1c78bd34bf36e9765463fd51c88e.tar.bz2
[ALSA] hda-codec - Add SI HDMI codec support
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>
Diffstat (limited to 'sound/pci/hda/patch_atihdmi.c')
-rw-r--r--sound/pci/hda/patch_atihdmi.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_atihdmi.c b/sound/pci/hda/patch_atihdmi.c
index 9a8bb4c..27d2e00 100644
--- a/sound/pci/hda/patch_atihdmi.c
+++ b/sound/pci/hda/patch_atihdmi.c
@@ -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 */
};