Commit b4eafd11 authored by Ian Abbott's avatar Ian Abbott Committed by Greg Kroah-Hartman
Browse files

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: default avatarIan Abbott <abbotti@mev.co.uk>
Reviewed-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent ffe2d9fd
Loading
Loading
Loading
Loading
+4 −25
Original line number Diff line number Diff line
@@ -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[] = {
	{
static const struct pc236_board pc236_pci_board = {
	.name = "pci236",
		.devid = PCI_DEVICE_ID_AMPLICON_PCI236,
	.bustype = pci_bustype,
	},
};

struct pc236_private {
@@ -121,19 +117,6 @@ static inline bool is_pci_board(const struct pc236_board *board)
	return DO_PCI && board->bustype == pci_bustype;
}

/*
 * 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
@@ -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;