summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-08-05 15:45:45 +0200
committerJaroslav Kysela <perex@perex.cz>2008-08-06 15:40:28 +0200
commit8f4f4ef6fed55a3636db3146a3e50b7febcbd7de (patch)
treee02cff412e7169e8dd820fb39d9079a5b22f6a83
parentb9c196e1452e1d4cbf0a1499f1e9c1b3edf59320 (diff)
downloadop-kernel-dev-8f4f4ef6fed55a3636db3146a3e50b7febcbd7de.zip
op-kernel-dev-8f4f4ef6fed55a3636db3146a3e50b7febcbd7de.tar.gz
ALSA: ac97 - Enable mono-out on ALC203 codec as default
Use pin 37 for mono-out as default on ALC203. Reported-by: george pee <georgepee@gmail.com> Tested-by: george pee <georgepee@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r--sound/pci/ac97/ac97_codec.c2
-rw-r--r--sound/pci/ac97/ac97_patch.c8
2 files changed, 9 insertions, 1 deletions
diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
index f6a7d72..171559c 100644
--- a/sound/pci/ac97/ac97_codec.c
+++ b/sound/pci/ac97/ac97_codec.c
@@ -122,7 +122,7 @@ static const struct ac97_codec_id snd_ac97_codec_ids[] = {
{ 0x414c4740, 0xfffffff0, "ALC202", NULL, NULL },
{ 0x414c4750, 0xfffffff0, "ALC250", NULL, NULL },
{ 0x414c4760, 0xfffffff0, "ALC655", patch_alc655, NULL },
-{ 0x414c4770, 0xfffffff0, "ALC203", NULL, NULL },
+{ 0x414c4770, 0xfffffff0, "ALC203", patch_alc203, NULL },
{ 0x414c4781, 0xffffffff, "ALC658D", NULL, NULL }, /* already patched */
{ 0x414c4780, 0xfffffff0, "ALC658", patch_alc655, NULL },
{ 0x414c4790, 0xfffffff0, "ALC850", patch_alc850, NULL },
diff --git a/sound/pci/ac97/ac97_patch.c b/sound/pci/ac97/ac97_patch.c
index f4fbc79..bb028f8 100644
--- a/sound/pci/ac97/ac97_patch.c
+++ b/sound/pci/ac97/ac97_patch.c
@@ -2560,6 +2560,14 @@ static int patch_ad1986(struct snd_ac97 * ac97)
return 0;
}
+/*
+ * realtek ALC203: use mono-out for pin 37
+ */
+static int patch_alc203(struct snd_ac97 *ac97)
+{
+ snd_ac97_update_bits(ac97, 0x7a, 0x400, 0x400);
+ return 0;
+}
/*
* realtek ALC65x/850 codecs
OpenPOWER on IntegriCloud