move the cleanup function before the remove call as the next patch of
the series is going to use that.

Signed-off-by: Sudip Mukherjee <su...@vectorindia.org>
---
 drivers/staging/dgap/dgap.c | 61 ++++++++++++++++++++++-----------------------
 1 file changed, 30 insertions(+), 31 deletions(-)

diff --git a/drivers/staging/dgap/dgap.c b/drivers/staging/dgap/dgap.c
index 6766d5a..63d7059 100644
--- a/drivers/staging/dgap/dgap.c
+++ b/drivers/staging/dgap/dgap.c
@@ -6987,6 +6987,36 @@ cleanup_brd:
        return rc;
 }
 
+/*
+ * dgap_cleanup_board()
+ *
+ * Free all the memory associated with a board
+ */
+static void dgap_cleanup_board(struct board_t *brd)
+{
+       unsigned int i;
+
+       if (!brd || brd->magic != DGAP_BOARD_MAGIC)
+               return;
+
+       dgap_free_irq(brd);
+
+       tasklet_kill(&brd->helper_tasklet);
+
+       dgap_unmap(brd);
+
+       /* Free all allocated channels structs */
+       for (i = 0; i < MAXPORTS ; i++)
+               kfree(brd->channels[i]);
+
+       kfree(brd->flipbuf);
+       kfree(brd->flipflagbuf);
+
+       dgap_board[brd->boardnum] = NULL;
+
+       kfree(brd);
+}
+
 static void dgap_remove_one(struct pci_dev *dev)
 {
        /* Do Nothing */
@@ -7071,37 +7101,6 @@ static void dgap_stop(void)
        unregister_chrdev(DIGI_DGAP_MAJOR, "dgap");
 }
 
-/*
- * dgap_cleanup_board()
- *
- * Free all the memory associated with a board
- */
-static void dgap_cleanup_board(struct board_t *brd)
-{
-       unsigned int i;
-
-       if (!brd || brd->magic != DGAP_BOARD_MAGIC)
-               return;
-
-       dgap_free_irq(brd);
-
-       tasklet_kill(&brd->helper_tasklet);
-
-       dgap_unmap(brd);
-
-       /* Free all allocated channels structs */
-       for (i = 0; i < MAXPORTS ; i++)
-               kfree(brd->channels[i]);
-
-       kfree(brd->flipbuf);
-       kfree(brd->flipflagbuf);
-
-       dgap_board[brd->boardnum] = NULL;
-
-       kfree(brd);
-}
-
-
 /************************************************************************
  *
  * Driver load/unload functions
-- 
1.8.1.2

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to