From: Konrad Zapalowicz Date: Wed, 6 Aug 2014 13:40:11 +0000 (+0200) Subject: staging: dgnc: Siplify the dgnc_start function X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=92ded48cc3f09b8f6bdf56348b9318f9badd28fe;p=linux-beck.git staging: dgnc: Siplify the dgnc_start function 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 Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/dgnc/dgnc_driver.c b/drivers/staging/dgnc/dgnc_driver.c index 561571c318da..7bbe98080edf 100644 --- a/drivers/staging/dgnc/dgnc_driver.c +++ b/drivers/staging/dgnc/dgnc_driver.c @@ -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;