tangled
alpha
login
or
join now
tjh.dev
/
kernel
Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1
fork
atom
overview
issues
pulls
pipelines
Merge branch 'fix/hda' into for-linus
Takashi Iwai
15 years ago
3b23cd28
b614e38e
+17
-6
2 changed files
expand all
collapse all
unified
split
sound
pci
hda
patch_analog.c
patch_realtek.c
+1
sound/pci/hda/patch_analog.c
···
3641
3641
/* Lenovo Thinkpad T61/X61 */
3642
3642
SND_PCI_QUIRK_VENDOR(0x17aa, "Lenovo Thinkpad", AD1984_THINKPAD),
3643
3643
SND_PCI_QUIRK(0x1028, 0x0214, "Dell T3400", AD1984_DELL_DESKTOP),
3644
3644
+
SND_PCI_QUIRK(0x1028, 0x0233, "Dell Latitude E6400", AD1984_DELL_DESKTOP),
3644
3645
{}
3645
3646
};
3646
3647
+16
-6
sound/pci/hda/patch_realtek.c
···
1594
1594
}
1595
1595
1596
1596
if (spec->autocfg.dig_in_pin) {
1597
1597
-
hda_nid_t dig_nid;
1598
1598
-
err = snd_hda_get_connections(codec,
1599
1599
-
spec->autocfg.dig_in_pin,
1600
1600
-
&dig_nid, 1);
1601
1601
-
if (err > 0)
1602
1602
-
spec->dig_in_nid = dig_nid;
1597
1597
+
dig_nid = codec->start_nid;
1598
1598
+
for (i = 0; i < codec->num_nodes; i++, dig_nid++) {
1599
1599
+
unsigned int wcaps = get_wcaps(codec, dig_nid);
1600
1600
+
if (get_wcaps_type(wcaps) != AC_WID_AUD_IN)
1601
1601
+
continue;
1602
1602
+
if (!(wcaps & AC_WCAP_DIGITAL))
1603
1603
+
continue;
1604
1604
+
if (!(wcaps & AC_WCAP_CONN_LIST))
1605
1605
+
continue;
1606
1606
+
err = get_connection_index(codec, dig_nid,
1607
1607
+
spec->autocfg.dig_in_pin);
1608
1608
+
if (err >= 0) {
1609
1609
+
spec->dig_in_nid = dig_nid;
1610
1610
+
break;
1611
1611
+
}
1612
1612
+
}
1603
1613
}
1604
1614
}
1605
1615