Commit 181ad5ed authored by Ian Abbott's avatar Ian Abbott Committed by Greg Kroah-Hartman

staging: comedi: amplc_dio200: Change return type of dio200_find_pci()

dio200_find_pci() finds a supported PCI device, returning 0 on success
or -EIO on failure and returning the pointer to the PCI device via a
struct pci_dev ** parameter.  Change it to return the struct pci_dev *
on success or NULL on failure.
Signed-off-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 485455d0
...@@ -463,14 +463,11 @@ struct dio200_subdev_intr { ...@@ -463,14 +463,11 @@ struct dio200_subdev_intr {
* This function looks for a PCI device matching the requested board name, * This function looks for a PCI device matching the requested board name,
* bus and slot. * bus and slot.
*/ */
static int static struct pci_dev *
dio200_find_pci(struct comedi_device *dev, int bus, int slot, dio200_find_pci(struct comedi_device *dev, int bus, int slot)
struct pci_dev **pci_dev_p)
{ {
struct pci_dev *pci_dev = NULL; struct pci_dev *pci_dev = NULL;
*pci_dev_p = NULL;
/* Look for matching PCI device. */ /* Look for matching PCI device. */
for (pci_dev = pci_get_device(PCI_VENDOR_ID_AMPLICON, PCI_ANY_ID, NULL); for (pci_dev = pci_get_device(PCI_VENDOR_ID_AMPLICON, PCI_ANY_ID, NULL);
pci_dev != NULL; pci_dev != NULL;
...@@ -504,8 +501,7 @@ dio200_find_pci(struct comedi_device *dev, int bus, int slot, ...@@ -504,8 +501,7 @@ dio200_find_pci(struct comedi_device *dev, int bus, int slot,
} }
/* Found a match. */ /* Found a match. */
*pci_dev_p = pci_dev; return pci_dev;
return 0;
} }
/* No match found. */ /* No match found. */
if (bus || slot) { if (bus || slot) {
...@@ -516,7 +512,7 @@ dio200_find_pci(struct comedi_device *dev, int bus, int slot, ...@@ -516,7 +512,7 @@ dio200_find_pci(struct comedi_device *dev, int bus, int slot,
dev_err(dev->class_dev, "error! no %s found!\n", dev_err(dev->class_dev, "error! no %s found!\n",
thisboard->name); thisboard->name);
} }
return -EIO; return NULL;
} }
/* /*
...@@ -1293,15 +1289,15 @@ static int dio200_attach(struct comedi_device *dev, struct comedi_devconfig *it) ...@@ -1293,15 +1289,15 @@ static int dio200_attach(struct comedi_device *dev, struct comedi_devconfig *it)
return ret; return ret;
} else if (IS_ENABLED(CONFIG_COMEDI_AMPLC_DIO200_PCI) && } else if (IS_ENABLED(CONFIG_COMEDI_AMPLC_DIO200_PCI) &&
thisboard->bustype == pci_bustype) { thisboard->bustype == pci_bustype) {
struct pci_dev *pci_dev = NULL; struct pci_dev *pci_dev;
int bus, slot; int bus, slot;
bus = it->options[0]; bus = it->options[0];
slot = it->options[1]; slot = it->options[1];
share_irq = 1; share_irq = 1;
ret = dio200_find_pci(dev, bus, slot, &pci_dev); pci_dev = dio200_find_pci(dev, bus, slot);
if (ret < 0) if (pci_dev == NULL)
return ret; return -EIO;
devpriv->pci_dev = pci_dev; devpriv->pci_dev = pci_dev;
ret = comedi_pci_enable(pci_dev, DIO200_DRIVER_NAME); ret = comedi_pci_enable(pci_dev, DIO200_DRIVER_NAME);
if (ret < 0) { if (ret < 0) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment