staging: comedi: refactor pcl818 driver to remove forward declarations
PATCH 1/1 staging: comedi: refactor pcl818 driver to remove forward declarations
Move the module_init/module_exit routines and the associated struct comedi_driver and other variables to the end of the source. This is more typical of how other drivers are written and removes the need for the forward declarations.
Signed-off-by H Hartley Sweeten <[email protected]>
Cc Ian Abbott <[email protected]>
Cc Mori Hess <[email protected]>
Cc Greg Kroah-Hartman <[email protected]>
---
There are still some forward declarations in this file but fixing them in this patch makes in to messy for review.
drivers/staging/comedi/drivers/pcl818.c +47 -62
@@ -247,10 +247,6 @@ static const struct comedi_lrange range718_bipolar0_5 =static const struct comedi_lrange range718_unipolar2 = {1 , {UNI_RANGE (2 ),} };static const struct comedi_lrange range718_unipolar1 = {1 , {BIP_RANGE (1 ),} }; -static int pcl818_attach (struct comedi_device *dev, -struct comedi_devconfig *it); -static int pcl818_detach (struct comedi_device *dev); -#ifdef unusedstatic int RTC_lock;/* RTC lock */ static int RTC_timer_lock;/* RTC int lock */
@@ -277,54 +273,6 @@ struct pcl818_board {int is_818; }; -static const struct pcl818_board boardtypes[] = { - {"pcl818l" ,4 ,16 ,8 ,25000 ,1 ,16 ,16 , &range_pcl818l_l_ai, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,0 ,1 }, - {"pcl818h" ,9 ,16 ,8 ,10000 ,1 ,16 ,16 , &range_pcl818h_ai, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,0 ,1 }, - {"pcl818hd" ,9 ,16 ,8 ,10000 ,1 ,16 ,16 , &range_pcl818h_ai, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,1 ,1 }, - {"pcl818hg" ,12 ,16 ,8 ,10000 ,1 ,16 ,16 , &range_pcl818hg_ai, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,1 ,1 }, - {"pcl818" ,9 ,16 ,8 ,10000 ,2 ,16 ,16 , &range_pcl818h_ai, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,0 ,1 }, - {"pcl718" ,1 ,16 ,8 ,16000 ,2 ,16 ,16 , &range_unipolar5, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,0 ,0 }, -/* pcm3718 */ - {"pcm3718" ,9 ,16 ,8 ,10000 ,0 ,16 ,16 , &range_pcl818h_ai, - &range_unipolar5, PCLx1x_RANGE,0x00fc , -0x0a ,0xfff ,0xfff ,0 ,1 /* XXX ? */ }, -}; - -static struct comedi_driver driver_pcl818 = { - .driver_name ="pcl818" , - .module =THIS_MODULE , - .attach = pcl818_attach, - .detach = pcl818_detach, - .board_name = &boardtypes[0 ].name, - .num_names =ARRAY_SIZE (boardtypes), - .offset =sizeof (struct pcl818_board ), -}; - -static int __init driver_pcl818_init_module (void ) -{ -return comedi_driver_register (&driver_pcl818); -} - -static void __exit driver_pcl818_cleanup_module(void) -{ -comedi_driver_unregister (&driver_pcl818); -} - -module_init (driver_pcl818_init_module); -module_exit (driver_pcl818_cleanup_module); -struct pcl818_private {unsigned int dma;/* used DMA, 0=don't use DMA */
@@ -1722,12 +1670,6 @@ static void free_resources(struct comedi_device *dev)/* printk("free_resource() end\n"); */ } -/* -============================================================================== - -Initialization - -*/ static int pcl818_attach (struct comedi_device *dev,struct comedi_devconfig *it) {int ret;
@@ -2018,10 +1960,6 @@ no_dma:return 0 ; } -/* -============================================================================== -Removes device -*/ static int pcl818_detach (struct comedi_device *dev) {/* printk("comedi%d: pcl818: remove\n", dev->minor); */
@@ -2029,6 +1967,53 @@ static int pcl818_detach(struct comedi_device *dev)return 0 ; } +static const struct pcl818_board boardtypes[] = { + {"pcl818l" ,4 ,16 ,8 ,25000 ,1 ,16 ,16 , &range_pcl818l_l_ai, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,0 ,1 }, + {"pcl818h" ,9 ,16 ,8 ,10000 ,1 ,16 ,16 , &range_pcl818h_ai, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,0 ,1 }, + {"pcl818hd" ,9 ,16 ,8 ,10000 ,1 ,16 ,16 , &range_pcl818h_ai, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,1 ,1 }, + {"pcl818hg" ,12 ,16 ,8 ,10000 ,1 ,16 ,16 , &range_pcl818hg_ai, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,1 ,1 }, + {"pcl818" ,9 ,16 ,8 ,10000 ,2 ,16 ,16 , &range_pcl818h_ai, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,0 ,1 }, + {"pcl718" ,1 ,16 ,8 ,16000 ,2 ,16 ,16 , &range_unipolar5, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,0 ,0 }, +/* pcm3718 */ + {"pcm3718" ,9 ,16 ,8 ,10000 ,0 ,16 ,16 , &range_pcl818h_ai, + &range_unipolar5, PCLx1x_RANGE,0x00fc , +0x0a ,0xfff ,0xfff ,0 ,1 /* XXX ? */ }, +}; + +static struct comedi_driver driver_pcl818 = { + .driver_name ="pcl818" , + .module =THIS_MODULE , + .attach = pcl818_attach, + .detach = pcl818_detach, + .board_name = &boardtypes[0 ].name, + .num_names =ARRAY_SIZE (boardtypes), + .offset =sizeof (struct pcl818_board ), +}; + +static int __init driver_pcl818_init_module (void ) +{ +return comedi_driver_register (&driver_pcl818); +} +module_init (driver_pcl818_init_module); + +static void __exit driver_pcl818_cleanup_module(void) +{ +comedi_driver_unregister (&driver_pcl818); +} +module_exit (driver_pcl818_cleanup_module); +MODULE_AUTHOR ("Comedi http://www.comedi.org" );MODULE_DESCRIPTION ("Comedi low-level driver" );MODULE_LICENSE ("GPL" );