From 51cdefb97ba04e2d2efda286c1cc1e90d58074ad Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Tue, 6 Oct 2009 13:21:54 +0200 Subject: [PATCH] --- yaml --- r: 167066 b: refs/heads/master c: 01d4825df62d1d405035b90294bf38616d3f380b h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/sound/pci/hda/patch_realtek.c | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 47267c436d7b..eb4fc466774d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f8f25ba3563dab14b1c3ea4d829642b8a61ca5d7 +refs/heads/master: 01d4825df62d1d405035b90294bf38616d3f380b diff --git a/trunk/sound/pci/hda/patch_realtek.c b/trunk/sound/pci/hda/patch_realtek.c index 901c2999ed64..a61fbbb41b29 100644 --- a/trunk/sound/pci/hda/patch_realtek.c +++ b/trunk/sound/pci/hda/patch_realtek.c @@ -1332,15 +1332,20 @@ static int alc_subsystem_id(struct hda_codec *codec, * when the external headphone out jack is plugged" */ if (!spec->autocfg.hp_pins[0]) { + hda_nid_t nid; tmp = (ass >> 11) & 0x3; /* HP to chassis */ if (tmp == 0) - spec->autocfg.hp_pins[0] = porta; + nid = porta; else if (tmp == 1) - spec->autocfg.hp_pins[0] = porte; + nid = porte; else if (tmp == 2) - spec->autocfg.hp_pins[0] = portd; + nid = portd; else return 1; + for (i = 0; i < spec->autocfg.line_outs; i++) + if (spec->autocfg.line_out_pins[i] == nid) + return 1; + spec->autocfg.hp_pins[0] = nid; } alc_init_auto_hp(codec);