struct pci_8255_boardinfo {
        const char *name;
+       unsigned short vendor;
        unsigned short device;
        int dio_badr;
        int n_8255;
 static const struct pci_8255_boardinfo pci_8255_boards[] = {
        {
                .name           = "adl_pci-7224",
+               .vendor         = PCI_VENDOR_ID_ADLINK,
                .device         = PCI_DEVICE_ID_ADLINK_PCI7224,
                .dio_badr       = 2,
                .n_8255         = 1,
        }, {
                .name           = "adl_pci-7248",
+               .vendor         = PCI_VENDOR_ID_ADLINK,
                .device         = PCI_DEVICE_ID_ADLINK_PCI7248,
                .dio_badr       = 2,
                .n_8255         = 2,
        }, {
                .name           = "adl_pci-7296",
+               .vendor         = PCI_VENDOR_ID_ADLINK,
                .device         = PCI_DEVICE_ID_ADLINK_PCI7296,
                .dio_badr       = 2,
                .n_8255         = 4,
        }, {
                .name           = "cb_pci-dio24",
+               .vendor         = PCI_VENDOR_ID_CB,
                .device         = PCI_DEVICE_ID_CB_PCIDIO24,
                .dio_badr       = 2,
                .n_8255         = 1,
        }, {
                .name           = "cb_pci-dio24h",
+               .vendor         = PCI_VENDOR_ID_CB,
                .device         = PCI_DEVICE_ID_CB_PCIDIO24H,
                .dio_badr       = 2,
                .n_8255         = 1,
        }, {
                .name           = "cb_pci-dio48h",
+               .vendor         = PCI_VENDOR_ID_CB,
                .device         = PCI_DEVICE_ID_CB_PCIDIO48H,
                .dio_badr       = 1,
                .n_8255         = 2,
        }, {
                .name           = "cb_pci-dio96h",
+               .vendor         = PCI_VENDOR_ID_CB,
                .device         = PCI_DEVICE_ID_CB_PCIDIO96H,
                .dio_badr       = 2,
                .n_8255         = 4,
 
        for (i = 0; i < ARRAY_SIZE(pci_8255_boards); i++) {
                board = &pci_8255_boards[i];
-               if (pcidev->device == board->device)
+               if (pcidev->vendor == board->vendor &&
+                   pcidev->device == board->device)
                        return board;
        }
        return NULL;