提交 c2aeacd4 编写于 作者: J Jon Mason 提交者: Linus Torvalds

[PATCH] Prevent trident driver from grabbing pcnet32 hardware

Some pcnet32 hardware erroneously has the Vendor ID for Trident.  The
pcnet32 driver looks for the PCI ethernet class before grabbing the
hardware, but the current trident driver does not check against the PCI
audio class.  This allows the trident driver to claim the pcnet32 hardware.
 This patch prevents that.

This revised version of the OSS Trident patch includes PCI_DEVICE Macro
usage.
Signed-off-by: NJon Mason <jdmason@us.ibm.com>
Signed-off-by: NMuli Ben-Yehuda <mulix@mulix.org>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 35fbd397
...@@ -278,16 +278,14 @@ static char *card_names[] = { ...@@ -278,16 +278,14 @@ static char *card_names[] = {
}; };
static struct pci_device_id trident_pci_tbl[] = { static struct pci_device_id trident_pci_tbl[] = {
{PCI_VENDOR_ID_TRIDENT, PCI_DEVICE_ID_TRIDENT_4DWAVE_DX, {PCI_DEVICE(PCI_VENDOR_ID_TRIDENT, PCI_DEVICE_ID_TRIDENT_4DWAVE_DX),
PCI_ANY_ID, PCI_ANY_ID, 0, 0, TRIDENT_4D_DX}, PCI_CLASS_MULTIMEDIA_AUDIO << 8, 0xffff00, TRIDENT_4D_DX},
{PCI_VENDOR_ID_TRIDENT, PCI_DEVICE_ID_TRIDENT_4DWAVE_NX, {PCI_DEVICE(PCI_VENDOR_ID_TRIDENT, PCI_DEVICE_ID_TRIDENT_4DWAVE_NX),
PCI_ANY_ID, PCI_ANY_ID, 0, 0, TRIDENT_4D_NX}, 0, 0, TRIDENT_4D_NX},
{PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_7018, {PCI_DEVICE(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_7018), 0, 0, SIS_7018},
PCI_ANY_ID, PCI_ANY_ID, 0, 0, SIS_7018}, {PCI_DEVICE(PCI_VENDOR_ID_ALI, PCI_DEVICE_ID_ALI_5451), 0, 0, ALI_5451},
{PCI_VENDOR_ID_ALI, PCI_DEVICE_ID_ALI_5451, {PCI_DEVICE(PCI_VENDOR_ID_INTERG, PCI_DEVICE_ID_INTERG_5050),
PCI_ANY_ID, PCI_ANY_ID, 0, 0, ALI_5451}, 0, 0, CYBER5050},
{PCI_VENDOR_ID_INTERG, PCI_DEVICE_ID_INTERG_5050,
PCI_ANY_ID, PCI_ANY_ID, 0, 0, CYBER5050},
{0,} {0,}
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册