ALSA: hda - Fix missing bass speaker on ASUS N550

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Fri Nov 22 17:59:11 EST 2013


Gitweb:     http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=a30c9aaa900a5fda21b90d5d6a3eaa3cbf16e330
Commit:     a30c9aaa900a5fda21b90d5d6a3eaa3cbf16e330
Parent:     0fc28fc030a85aa3d6d14e9e9fca0c8237c9ffb5
Author:     Takashi Iwai <tiwai at suse.de>
AuthorDate: Thu Nov 21 08:00:20 2013 +0100
Committer:  Takashi Iwai <tiwai at suse.de>
CommitDate: Thu Nov 21 08:02:11 2013 +0100

    ALSA: hda - Fix missing bass speaker on ASUS N550
    
    The laptop has a built-in speaker on NID 0x1a.  It's an LFE only on
    the right channel, so we need to provide an explicit chmap, too.
    
    There might be other surround speakers, but they can fixed in addition
    at later point, so let's fix the easier bass speaker at first.
    
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=65091
    Signed-off-by: Takashi Iwai <tiwai at suse.de>
---
 sound/pci/hda/patch_realtek.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index a90bfab..cc1dfdc 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4723,6 +4723,8 @@ enum {
 	ALC668_FIXUP_DELL_MIC_NO_PRESENCE,
 	ALC668_FIXUP_HEADSET_MODE,
 	ALC662_FIXUP_BASS_CHMAP,
+	ALC662_FIXUP_BASS_1A,
+	ALC662_FIXUP_BASS_1A_CHMAP,
 };
 
 static const struct hda_fixup alc662_fixups[] = {
@@ -4903,6 +4905,19 @@ static const struct hda_fixup alc662_fixups[] = {
 		.chained = true,
 		.chain_id = ALC662_FIXUP_ASUS_MODE4
 	},
+	[ALC662_FIXUP_BASS_1A] = {
+		.type = HDA_FIXUP_PINS,
+		.v.pins = (const struct hda_pintbl[]) {
+			{0x1a, 0x80106111}, /* bass speaker */
+			{}
+		},
+	},
+	[ALC662_FIXUP_BASS_1A_CHMAP] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = alc662_fixup_bass_chmap,
+		.chained = true,
+		.chain_id = ALC662_FIXUP_BASS_1A,
+	},
 };
 
 static const struct snd_pci_quirk alc662_fixup_tbl[] = {
@@ -4918,6 +4933,7 @@ static const struct snd_pci_quirk alc662_fixup_tbl[] = {
 	SND_PCI_QUIRK(0x1028, 0x0625, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
 	SND_PCI_QUIRK(0x1028, 0x0626, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
 	SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800),
+	SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_BASS_1A_CHMAP),
 	SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ", ALC662_FIXUP_BASS_CHMAP),
 	SND_PCI_QUIRK(0x1043, 0x1bf3, "ASUS N76VZ", ALC662_FIXUP_BASS_CHMAP),
 	SND_PCI_QUIRK(0x1043, 0x8469, "ASUS mobo", ALC662_FIXUP_NO_JACK_DETECT),



More information about the linux-mtd-cvs mailing list