summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorIan Abbott <abbotti@mev.co.uk>2014-07-25 09:04:56 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-07-27 18:28:38 (GMT)
commitb4eafd11351d90a652657cc2a12728c51000d5e3 (patch)
tree88483dc7448ca0ebb7be355e251bf40b1c524b15 /drivers
parentffe2d9fd49af6461972201eeaa8012e71fe40c97 (diff)
downloadlinux-b4eafd11351d90a652657cc2a12728c51000d5e3.tar.xz
staging: comedi: amplc_pc236: Simplify PCI board look-up
Since only a single PCI board is supported by the driver, there is no need to call `pc236_find_pci_board()` to find the a board entry with matching PCI device ID in `pc236_pci_boards[]`. Just point to the entry directly and remove the look-up function. In fact, there is no reason for `pc236_pci_boards[]` to be an array, so change it to a non-array variable and rename it to `pc236_pci_board`. Also, the `devid` member of `struct pc236_board` is no longer needed as it was only used by the look-up function, so remove it. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/comedi/drivers/amplc_pc236.c29
1 files changed, 4 insertions, 25 deletions
diff --git a/drivers/staging/comedi/drivers/amplc_pc236.c b/drivers/staging/comedi/drivers/amplc_pc236.c
index 51c22f9..1aae066 100644
--- a/drivers/staging/comedi/drivers/amplc_pc236.c
+++ b/drivers/staging/comedi/drivers/amplc_pc236.c
@@ -85,7 +85,6 @@ enum pc236_bustype { isa_bustype, pci_bustype };
struct pc236_board {
const char *name;
- unsigned short devid;
enum pc236_bustype bustype;
};
@@ -96,12 +95,9 @@ static const struct pc236_board pc236_isa_boards[] = {
},
};
-static const struct pc236_board pc236_pci_boards[] = {
- {
- .name = "pci236",
- .devid = PCI_DEVICE_ID_AMPLICON_PCI236,
- .bustype = pci_bustype,
- },
+static const struct pc236_board pc236_pci_board = {
+ .name = "pci236",
+ .bustype = pci_bustype,
};
struct pc236_private {
@@ -122,19 +118,6 @@ static inline bool is_pci_board(const struct pc236_board *board)
}
/*
- * This function looks for a board matching the supplied PCI device.
- */
-static const struct pc236_board *pc236_find_pci_board(struct pci_dev *pci_dev)
-{
- unsigned int i;
-
- for (i = 0; i < ARRAY_SIZE(pc236_pci_boards); i++)
- if (pci_dev->device == pc236_pci_boards[i].devid)
- return &pc236_pci_boards[i];
- return NULL;
-}
-
-/*
* This function is called to mark the interrupt as disabled (no command
* configured on subdevice 1) and to physically disable the interrupt
* (not possible on the PC36AT, except by removing the IRQ jumper!).
@@ -382,11 +365,7 @@ static int pc236_auto_attach(struct comedi_device *dev,
if (!devpriv)
return -ENOMEM;
- dev->board_ptr = pc236_find_pci_board(pci_dev);
- if (dev->board_ptr == NULL) {
- dev_err(dev->class_dev, "BUG! cannot determine board type!\n");
- return -EINVAL;
- }
+ dev->board_ptr = &pc236_pci_board;
ret = comedi_pci_enable(dev);
if (ret)
return ret;