Alan Cox wrote:
A vendor ID of 1 is very very very broken. Do all boards have this or do
you have a faulty box (perhaps a misprogrammed EEPROM somewhere)

        { PCI_DEVICE(PCI_VENDOR_ID_REALTEK,     0x8136), 0, 0, RTL_CFG_2 },
        { PCI_DEVICE(PCI_VENDOR_ID_REALTEK,     0x8167), 0, 0, RTL_CFG_0 },
        { PCI_DEVICE(PCI_VENDOR_ID_REALTEK,     0x8168), 0, 0, RTL_CFG_1 },
+       { PCI_DEVICE(PCI_ANY_ID,                0x8168), 0, 0, RTL_CFG_2 },

That will match any device 0x8168 not just a realtek one. I'd use 0x0001,
0x8168 for the match. However I'd seriously consider checking another
board as I suspect you simply have a return candidate.

Amusingly, 8139too had to deal with the exact same problem. At the time, we chose to obtain the subsystem vendor/device ids, and list them that way:

        /* some crazy cards report invalid vendor ids like
         * 0x0001 here.  The other ids are valid and constant,
         * so we simply don't match on the main vendor id.
         */
        {PCI_ANY_ID, 0x8139, 0x10ec, 0x8139, 0, 0, RTL8139 },
        {PCI_ANY_ID, 0x8139, 0x1186, 0x1300, 0, 0, RTL8139 },
        {PCI_ANY_ID, 0x8139, 0x13d1, 0xab06, 0, 0, RTL8139 },

Given that the subsystem vendor ids in particular were sane and valid in each case, this seemed narrow enough to avoid false positives.


Regardless, I agree with your "you...have a return candidate" comment.

        Jeff


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to