FS#21892 - [kernel26] 2.6.36.1-3 - needs patching for ALC892 Realtek Audio - solution given

Attached to Project: Arch Linux
Opened by Clouseau2 (Clouseau2) - Sunday, 28 November 2010, 11:53 GMT
Last edited by Tobias Powalowski (tpowa) - Saturday, 11 December 2010, 11:23 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Tobias Powalowski (tpowa)
Thomas Bächler (brain0)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

New kernel26 in arch - 2.6.36.1-3 - needs patching. The problem is that Front Panel stoped working (no mic or headphone sounds) on ALC892 Realtek Audio Chipset (uses alsa hda_intel driver).

Additional info:
* package version(s)
* config and/or log files etc.

Kernel26-2.6.36.1-3

Steps to reproduce:

https://patchwork.kernel.org/patch/358662/

Apply tthe following patch to fix this problem:

*Patch*

===
From cc1c452e509aefc28f7ad2deed75bc69d4f915f7 Mon Sep 17 00:00:00 2001
From: David Henningsson <david.henningsson@canonical.com>
Date: Wed, 24 Nov 2010 14:17:47 +0100
Subject: [PATCH] ALSA: HDA: Add an extra DAC for Realtek ALC887-VD

The patch enables ALC887-VD to use the DAC at nid 0x26,
which makes it possible to use this DAC for e g Headphone
volume.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
sound/pci/hda/patch_realtek.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 8f7530f..b0e6b8b 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -18997,6 +18997,8 @@ static inline hda_nid_t alc662_mix_to_dac(hda_nid_t nid)
return 0x02;
else if (nid >= 0x0c && nid <= 0x0e)
return nid - 0x0c + 0x02;
+ else if (nid == 0x26) /* ALC887-VD has this DAC too */
+ return 0x25;
else
return 0;
}
@@ -19005,7 +19007,7 @@ static inline hda_nid_t alc662_mix_to_dac(hda_nid_t nid)
static hda_nid_t alc662_dac_to_mix(struct hda_codec *codec, hda_nid_t pin,
hda_nid_t dac)
{
- hda_nid_t mix[4];
+ hda_nid_t mix[5];
int i, num;

num = snd_hda_get_connections(codec, pin, mix, ARRAY_SIZE(mix));


This task depends upon

Closed by  Tobias Powalowski (tpowa)
Saturday, 11 December 2010, 11:23 GMT
Reason for closing:  Fixed
Comment by Clouseau2 (Clouseau2) - Saturday, 11 December 2010, 10:37 GMT
Thank you, its solved now, in 2.6.36.2.1 :)

Loading...