[alsa-devel] [PATCH 1/3] ALSA: HDA: Create mixers on ALC887

Takashi Iwai tiwai at suse.de
Mon Nov 22 11:05:22 CET 2010


At Mon, 22 Nov 2010 07:52:23 +0100,
Takashi Iwai wrote:
> 
> At Fri, 19 Nov 2010 10:28:35 +0100,
> David Henningsson wrote:
> > 
> > BugLink: http://launchpad.net/bugs/669092
> > 
> > ALC887 does not have any volume control ability on the mixer NIDs,
> > so put the volume controls on the dac NIDs instead. Without this
> > patch, ALC887 users cannot use alsamixer at all.
> > 
> > Cc: stable at kernel.org
> > Signed-off-by: David Henningsson <david.henningsson at canonical.com>
> 
> OK, this one seems necessary independently from other patches,
> so I applied this one now for 2.6.37.

Now I got a feedback from Realtek that it's actually a typo, calling
patch_alc882() wrongly for ALC887* variants.

The right fix patch is below.  So I reverted your patch.


thanks,

Takashi

===
From 01e0f1378c47947b825eac05c98697ab1be1c86f Mon Sep 17 00:00:00 2001
From: Kailang Yang <kailang at realtek.com>
Date: Mon, 22 Nov 2010 10:59:36 +0100
Subject: [PATCH] ALSA: hda - Fixed ALC887-VD initial error

ALC887-VD is like ALC888-VD. It can not be initialized as ALC882.

Signed-off-by: Kailang Yang <kailang at realtek.com>
Cc: <stable at kernel.org>
Signed-off-by: Takashi Iwai <tiwai at suse.de>
---
 sound/pci/hda/patch_realtek.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 1a7703a..564e6c1 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -19420,7 +19420,10 @@ static int patch_alc888(struct hda_codec *codec)
 {
 	if ((alc_read_coef_idx(codec, 0) & 0x00f0)==0x0030){
 		kfree(codec->chip_name);
-		codec->chip_name = kstrdup("ALC888-VD", GFP_KERNEL);
+		if (codec->vendor_id == 0x10ec0887)
+			codec->chip_name = kstrdup("ALC887-VD", GFP_KERNEL);
+		else
+			codec->chip_name = kstrdup("ALC888-VD", GFP_KERNEL);
 		if (!codec->chip_name) {
 			alc_free(codec);
 			return -ENOMEM;
@@ -19910,7 +19913,7 @@ static struct hda_codec_preset snd_hda_preset_realtek[] = {
 	{ .id = 0x10ec0885, .rev = 0x100103, .name = "ALC889A",
 	  .patch = patch_alc882 },
 	{ .id = 0x10ec0885, .name = "ALC885", .patch = patch_alc882 },
-	{ .id = 0x10ec0887, .name = "ALC887", .patch = patch_alc882 },
+	{ .id = 0x10ec0887, .name = "ALC887", .patch = patch_alc888 },
 	{ .id = 0x10ec0888, .rev = 0x100101, .name = "ALC1200",
 	  .patch = patch_alc882 },
 	{ .id = 0x10ec0888, .name = "ALC888", .patch = patch_alc888 },
-- 
1.7.3.1



More information about the Alsa-devel mailing list