aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/staging/comedi/drivers/8255_pci.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/staging/comedi/drivers/8255_pci.c b/drivers/staging/comedi/drivers/8255_pci.c
index 075f98bd257..314b21b5650 100644
--- a/drivers/staging/comedi/drivers/8255_pci.c
+++ b/drivers/staging/comedi/drivers/8255_pci.c
@@ -68,6 +68,7 @@ Configuration Options: not applicable, uses PCI auto config
struct pci_8255_boardinfo {
const char *name;
+ unsigned short vendor;
unsigned short device;
int dio_badr;
int n_8255;
@@ -76,36 +77,43 @@ struct pci_8255_boardinfo {
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,
@@ -120,7 +128,8 @@ static const void *pci_8255_find_boardinfo(struct comedi_device *dev,
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;