|
@@ -4494,6 +4494,7 @@ enum {
|
|
|
ALC861_FIXUP_AMP_VREF_0F,
|
|
|
ALC861_FIXUP_NO_JACK_DETECT,
|
|
|
ALC861_FIXUP_ASUS_A6RP,
|
|
|
+ ALC660_FIXUP_ASUS_W7J,
|
|
|
};
|
|
|
|
|
|
/* On some laptops, VREF of pin 0x0f is abused for controlling the main amp */
|
|
@@ -4543,10 +4544,21 @@ static const struct hda_fixup alc861_fixups[] = {
|
|
|
.v.func = alc861_fixup_asus_amp_vref_0f,
|
|
|
.chained = true,
|
|
|
.chain_id = ALC861_FIXUP_NO_JACK_DETECT,
|
|
|
+ },
|
|
|
+ [ALC660_FIXUP_ASUS_W7J] = {
|
|
|
+ .type = HDA_FIXUP_VERBS,
|
|
|
+ .v.verbs = (const struct hda_verb[]) {
|
|
|
+ /* ASUS W7J needs a magic pin setup on unused NID 0x10
|
|
|
+ * for enabling outputs
|
|
|
+ */
|
|
|
+ {0x10, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24},
|
|
|
+ { }
|
|
|
+ },
|
|
|
}
|
|
|
};
|
|
|
|
|
|
static const struct snd_pci_quirk alc861_fixup_tbl[] = {
|
|
|
+ SND_PCI_QUIRK(0x1043, 0x1253, "ASUS W7J", ALC660_FIXUP_ASUS_W7J),
|
|
|
SND_PCI_QUIRK(0x1043, 0x1393, "ASUS A6Rp", ALC861_FIXUP_ASUS_A6RP),
|
|
|
SND_PCI_QUIRK_VENDOR(0x1043, "ASUS laptop", ALC861_FIXUP_AMP_VREF_0F),
|
|
|
SND_PCI_QUIRK(0x1462, 0x7254, "HP DX2200", ALC861_FIXUP_NO_JACK_DETECT),
|