[PATCH 10/11] staging: comedi: amplc_pc263: Remove thisboard and devpriv macros

Ian Abbott abbotti at mev.co.uk
Wed May 30 18:04:44 UTC 2012


The 'thisboard' and 'devpriv' macros rely on a local variable having a
specific name and yield pointers derived from that local variable.
Replace the macros with local variables wherever they occur.

Signed-off-by: Ian Abbott <abbotti at mev.co.uk>
---
 drivers/staging/comedi/drivers/amplc_pc263.c |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/comedi/drivers/amplc_pc263.c b/drivers/staging/comedi/drivers/amplc_pc263.c
index 34338a3..d6a3d61 100644
--- a/drivers/staging/comedi/drivers/amplc_pc263.c
+++ b/drivers/staging/comedi/drivers/amplc_pc263.c
@@ -95,11 +95,6 @@ static const struct pc263_board pc263_boards[] = {
 #endif
 };
 
-/*
- * Useful for shorthand access to the particular board structure
- */
-#define thisboard ((const struct pc263_board *)dev->board_ptr)
-
 /* this structure is for data unique to this hardware driver.  If
    several hardware drivers keep similar information in this structure,
    feel free to suggest moving the variable to the struct comedi_device struct.
@@ -109,8 +104,6 @@ struct pc263_private {
 	struct pci_dev *pci_dev;
 };
 
-#define devpriv ((struct pc263_private *)dev->private)
-
 /*
  * This function looks for a PCI device matching the requested board name,
  * bus and slot.
@@ -118,6 +111,7 @@ struct pc263_private {
 static struct pci_dev *
 pc263_find_pci(struct comedi_device *dev, int bus, int slot)
 {
+	const struct pc263_board *thisboard = comedi_board(dev);
 	struct pci_dev *pci_dev = NULL;
 
 	/* Look for matching PCI device. */
@@ -141,6 +135,7 @@ pc263_find_pci(struct comedi_device *dev, int bus, int slot)
 				if (pci_dev->device == pc263_boards[i].devid) {
 					/* Change board_ptr to matched board. */
 					dev->board_ptr = &pc263_boards[i];
+					thisboard = comedi_board(dev);
 					break;
 				}
 			}
@@ -202,6 +197,8 @@ static int pc263_do_insn_bits(struct comedi_device *dev,
 
 static void pc263_report_attach(struct comedi_device *dev)
 {
+	const struct pc263_board *thisboard = comedi_board(dev);
+	struct pc263_private *devpriv = dev->private;
 	char tmpbuf[40];
 
 	if (IS_ENABLED(CONFIG_COMEDI_AMPLC_PC263_ISA) &&
@@ -224,6 +221,7 @@ static void pc263_report_attach(struct comedi_device *dev)
  */
 static int pc263_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 {
+	const struct pc263_board *thisboard = comedi_board(dev);
 	struct comedi_subdevice *s;
 	unsigned long iobase = 0;
 	int ret;
@@ -239,6 +237,7 @@ static int pc263_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 			return ret;
 	} else if (IS_ENABLED(CONFIG_COMEDI_AMPLC_PC263_PCI) &&
 		   thisboard->bustype == pci_bustype) {
+		struct pc263_private *devpriv;
 		struct pci_dev *pci_dev = NULL;
 		int bus, slot;
 
@@ -247,11 +246,13 @@ static int pc263_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 			dev_err(dev->class_dev, "error! out of memory!\n");
 			return ret;
 		}
+		devpriv = dev->private;
 		bus = it->options[0];
 		slot = it->options[1];
 		pci_dev = pc263_find_pci(dev, bus, slot);
 		if (pci_dev == NULL)
 			return -EIO;
+		thisboard = comedi_board(dev);	/* replaced wildcard board */
 		devpriv->pci_dev = pci_dev;
 		ret = comedi_pci_enable(pci_dev, PC263_DRIVER_NAME);
 		if (ret < 0) {
@@ -292,6 +293,8 @@ static int pc263_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 
 static void pc263_detach(struct comedi_device *dev)
 {
+	struct pc263_private *devpriv = dev->private;
+
 	if (IS_ENABLED(CONFIG_COMEDI_AMPLC_PC263_PCI) && devpriv &&
 	    devpriv->pci_dev) {
 		if (dev->iobase)
-- 
1.7.8.6




More information about the devel mailing list