staging: comedi: amplc_dio200: add helpers to get board layout
authorIan Abbott <abbotti@mev.co.uk>
Wed, 24 Oct 2012 15:47:53 +0000 (16:47 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 Oct 2012 22:25:11 +0000 (15:25 -0700)
Add inline helper function `dio200_board_layout(board)` to get a pointer
to the board layout data for a board.  Add inline helper function
`dio200_dev_layout(dev)` to get a pointer to the board layout data for a
comedi device (this function is currently unused but will be used by a
later change).

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/amplc_dio200.c

index b03e7e32fb1f070f24bf4d5276e41414b3cdf2dd..bf4f6e3365c04c35cc78979e7d80aac865b2e7af 100644 (file)
@@ -442,6 +442,18 @@ struct dio200_subdev_intr {
        int continuous;
 };
 
+static inline const struct dio200_layout *
+dio200_board_layout(const struct dio200_board *board)
+{
+       return &dio200_layouts[board->layout];
+}
+
+static inline const struct dio200_layout *
+dio200_dev_layout(struct comedi_device *dev)
+{
+       return dio200_board_layout(comedi_board(dev));
+}
+
 static inline bool is_pci_board(const struct dio200_board *board)
 {
        return DO_PCI && board->bustype == pci_bustype;
@@ -1195,7 +1207,7 @@ static int dio200_common_attach(struct comedi_device *dev, unsigned long iobase,
 {
        const struct dio200_board *thisboard = comedi_board(dev);
        struct dio200_private *devpriv = dev->private;
-       const struct dio200_layout *layout = &dio200_layouts[thisboard->layout];
+       const struct dio200_layout *layout = dio200_board_layout(thisboard);
        struct comedi_subdevice *s;
        int sdx;
        unsigned int n;
@@ -1353,7 +1365,7 @@ static void dio200_detach(struct comedi_device *dev)
        if (dev->irq)
                free_irq(dev->irq, dev);
        if (dev->subdevices) {
-               layout = &dio200_layouts[thisboard->layout];
+               layout = dio200_board_layout(thisboard);
                for (n = 0; n < dev->n_subdevices; n++) {
                        struct comedi_subdevice *s = &dev->subdevices[n];
                        switch (layout->sdtype[n]) {