[PATCH] PCI: nVidia's MCP61 ethernet card needs quirk for wrongclass

From: Jiri Kosina
Date: Mon Oct 01 2007 - 10:21:10 EST


From: Jiri Kosina <jkosina@xxxxxxx>

PCI: nVidia's MCP61 ethernet card needs quirk for wrong class

The MCP61 ethernet controller from nVidia (NVENET_19) contains wrong
PCI class:

00:07.0 Bridge [0680]: nVidia Corporation MCP61 Ethernet [10de:03ef] (rev a2)

i.e. it identifies itself as a bridge. Fix this.

Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 50f2dd9..fbf6a89 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -1511,6 +1511,13 @@ static void __devinit fixup_rev1_53c810(struct pci_dev* dev)
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);

+/* nVidia's MCP61 ethernet card has wrong PCI class (0x0680) */
+static void __devinit fixup_nvenet_19(struct pci_dev *dev)
+{
+ dev->class = PCI_CLASS_NETWORK_ETHERNET << 8;
+}
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_19, fixup_nvenet_19);
+
static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end)
{
while (f < end) {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/