The module_comedi_driver() macro provides the module_{init.exit}
code for this driver. Move the macro call and the comedi_driver
declaration to the end of the file. This also removes the need
for the das800_attach() forward declaration.

Signed-off-by: H Hartley Sweeten <[email protected]>
Cc: Ian Abbott <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
---
 drivers/staging/comedi/drivers/das800.c | 25 +++++++++++--------------
 1 file changed, 11 insertions(+), 14 deletions(-)

diff --git a/drivers/staging/comedi/drivers/das800.c 
b/drivers/staging/comedi/drivers/das800.c
index 6e37033..3a4041d 100644
--- a/drivers/staging/comedi/drivers/das800.c
+++ b/drivers/staging/comedi/drivers/das800.c
@@ -228,20 +228,8 @@ struct das800_private {
        volatile int do_bits;   /* digital output bits */
 };
 
-static int das800_attach(struct comedi_device *dev,
-                        struct comedi_devconfig *it);
 static int das800_cancel(struct comedi_device *dev, struct comedi_subdevice 
*s);
 
-static struct comedi_driver driver_das800 = {
-       .driver_name = "das800",
-       .module = THIS_MODULE,
-       .attach = das800_attach,
-       .detach = comedi_legacy_detach,
-       .num_names = ARRAY_SIZE(das800_boards),
-       .board_name = &das800_boards[0].name,
-       .offset = sizeof(struct das800_board),
-};
-
 static irqreturn_t das800_interrupt(int irq, void *d);
 static void enable_das800(struct comedi_device *dev);
 static void disable_das800(struct comedi_device *dev);
@@ -329,8 +317,6 @@ static int das800_probe(struct comedi_device *dev)
        return -1;
 }
 
-module_comedi_driver(driver_das800);
-
 /* interrupt service routine */
 static irqreturn_t das800_interrupt(int irq, void *d)
 {
@@ -848,6 +834,17 @@ static int das800_set_frequency(struct comedi_device *dev)
        return 0;
 }
 
+static struct comedi_driver driver_das800 = {
+       .driver_name    = "das800",
+       .module         = THIS_MODULE,
+       .attach         = das800_attach,
+       .detach         = comedi_legacy_detach,
+       .num_names      = ARRAY_SIZE(das800_boards),
+       .board_name     = &das800_boards[0].name,
+       .offset         = sizeof(struct das800_board),
+};
+module_comedi_driver(driver_das800);
+
 MODULE_AUTHOR("Comedi http://www.comedi.org";);
 MODULE_DESCRIPTION("Comedi low-level driver");
 MODULE_LICENSE("GPL");
-- 
1.8.1.4

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to