staging: dgnc: Siplify the dgnc_start function
authorKonrad Zapalowicz <bergo.torino@gmail.com>
Wed, 6 Aug 2014 13:40:11 +0000 (15:40 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 16 Aug 2014 19:23:13 +0000 (12:23 -0700)
This commit slightly simplifies the sgnc_start() function by
rearranging it. As a result the indentation level is reduced.
This is not the functional change.

Signed-off-by: Konrad Zapalowicz <bergo.torino@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/dgnc/dgnc_driver.c

index 561571c318dabbde2516f0ca039f3339e666b0a2..7bbe98080edf56fdbb42fdf044806275dfcf158e 100644 (file)
@@ -278,64 +278,60 @@ static int dgnc_start(void)
        int rc = 0;
        unsigned long flags;
 
-       if (dgnc_driver_start == FALSE) {
-
-               dgnc_driver_start = TRUE;
-
-               /* make sure that the globals are init'd before we do anything else */
-               dgnc_init_globals();
+       if (dgnc_driver_start == TRUE)
+               return rc;
+       dgnc_driver_start = TRUE;
 
-               dgnc_NumBoards = 0;
+       /* make sure that the globals are init'd before we do anything else */
+       dgnc_init_globals();
 
-               APR(("For the tools package or updated drivers please visit http://www.digi.com\n"));
+       APR(("For the tools package or updated drivers please visit http://www.digi.com\n"));
 
+       /*
+        * Register our base character device into the kernel.
+        * This allows the download daemon to connect to the downld device
+        * before any of the boards are init'ed.
+        */
+       if (!dgnc_Major_Control_Registered) {
                /*
-                * Register our base character device into the kernel.
-                * This allows the download daemon to connect to the downld device
-                * before any of the boards are init'ed.
+                * Register management/dpa devices
                 */
-               if (!dgnc_Major_Control_Registered) {
-                       /*
-                        * Register management/dpa devices
-                        */
-                       rc = register_chrdev(0, "dgnc", &dgnc_BoardFops);
-                       if (rc <= 0) {
-                               APR(("Can't register dgnc driver device (%d)\n", rc));
-                               rc = -ENXIO;
-                               return rc;
-                       }
-                       dgnc_Major = rc;
-
-                       dgnc_class = class_create(THIS_MODULE, "dgnc_mgmt");
-                       device_create(dgnc_class, NULL,
-                               MKDEV(dgnc_Major, 0),
-                               NULL, "dgnc_mgmt");
-                       dgnc_Major_Control_Registered = TRUE;
+               rc = register_chrdev(0, "dgnc", &dgnc_BoardFops);
+               if (rc <= 0) {
+                       APR(("Can't register dgnc driver device (%d)\n", rc));
+                       return -ENXIO;
                }
+               dgnc_Major = rc;
 
-               /*
-                * Init any global tty stuff.
-                */
-               rc = dgnc_tty_preinit();
+               dgnc_class = class_create(THIS_MODULE, "dgnc_mgmt");
+               device_create(dgnc_class, NULL,
+                       MKDEV(dgnc_Major, 0),
+                       NULL, "dgnc_mgmt");
+               dgnc_Major_Control_Registered = TRUE;
+       }
 
-               if (rc < 0) {
-                       APR(("tty preinit - not enough memory (%d)\n", rc));
-                       return rc;
-               }
+       /*
+        * Init any global tty stuff.
+        */
+       rc = dgnc_tty_preinit();
 
-               /* Start the poller */
-               DGNC_LOCK(dgnc_poll_lock, flags);
-               init_timer(&dgnc_poll_timer);
-               dgnc_poll_timer.function = dgnc_poll_handler;
-               dgnc_poll_timer.data = 0;
-               dgnc_poll_time = jiffies + dgnc_jiffies_from_ms(dgnc_poll_tick);
-               dgnc_poll_timer.expires = dgnc_poll_time;
-               DGNC_UNLOCK(dgnc_poll_lock, flags);
+       if (rc < 0) {
+               APR(("tty preinit - not enough memory (%d)\n", rc));
+               return rc;
+       }
 
-               add_timer(&dgnc_poll_timer);
+       /* Start the poller */
+       DGNC_LOCK(dgnc_poll_lock, flags);
+       init_timer(&dgnc_poll_timer);
+       dgnc_poll_timer.function = dgnc_poll_handler;
+       dgnc_poll_timer.data = 0;
+       dgnc_poll_time = jiffies + dgnc_jiffies_from_ms(dgnc_poll_tick);
+       dgnc_poll_timer.expires = dgnc_poll_time;
+       DGNC_UNLOCK(dgnc_poll_lock, flags);
 
-               dgnc_driver_state = DRIVER_READY;
-       }
+       add_timer(&dgnc_poll_timer);
+
+       dgnc_driver_state = DRIVER_READY;
 
        return rc;
 }
@@ -814,6 +810,7 @@ static void dgnc_init_globals(void)
        dgnc_rawreadok          = rawreadok;
        dgnc_trcbuf_size        = trcbuf_size;
        dgnc_debug              = debug;
+       dgnc_NumBoards          = 0;
 
        for (i = 0; i < MAXBOARDS; i++)
                dgnc_Board[i] = NULL;