staging: ft1000: Use specific return error codes.
authorMarek Belisko <marek.belisko@gmail.com>
Fri, 15 Oct 2010 06:57:25 +0000 (08:57 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 15 Oct 2010 19:41:35 +0000 (12:41 -0700)
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/ft1000/ft1000-usb/ft1000_hw.c

index 1190f361d8dc19be68f0cf7b436f40e286656839..1f91f2242ce4a30565089466ada63bb2701bcfad 100644 (file)
@@ -952,7 +952,7 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)
     if (!netdev )
     {
         DEBUG("init_ft1000_netdev: can not allocate network device\n");
-        return STATUS_FAILURE;
+       return -ENOMEM;
     }
 
     //pInfo = (PFT1000_INFO)netdev->priv;
@@ -975,8 +975,7 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)
                ret_val = strict_strtoul(card_nr, 10, &gCardIndex);
                if (ret_val) {
                        printk(KERN_ERR "Can't parse netdev\n");
-                       free_netdev(netdev);
-                       return STATUS_FAILURE;
+                       goto err_net;
                }
 
             pInfo->CardNumber = gCardIndex;
@@ -984,8 +983,8 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)
         }
         else {
             printk(KERN_ERR "ft1000: Invalid device name\n");
-           free_netdev(netdev);
-            return STATUS_FAILURE;
+               ret_val = -ENXIO;
+               goto err_net;
         }
     }
     else
@@ -1056,21 +1055,24 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)
         for (i=0; i<NUM_OF_FREE_BUFFERS; i++) {
             // Get memory for DPRAM_DATA link list
             pdpram_blk = kmalloc ( sizeof(DPRAM_BLK), GFP_KERNEL );
-           if (pdpram_blk == NULL)
-               goto err_free;
+               if (pdpram_blk == NULL) {
+                       ret_val = -ENOMEM;
+                       goto err_free;
+               }
             // Get a block of memory to store command data
             pdpram_blk->pbuffer = kmalloc ( MAX_CMD_SQSIZE, GFP_KERNEL );
-           if (pdpram_blk->pbuffer == NULL) {
-               kfree(pdpram_blk);
-               goto err_free;
-           }
+               if (pdpram_blk->pbuffer == NULL) {
+                       ret_val = -ENOMEM;
+                       kfree(pdpram_blk);
+                       goto err_free;
+               }
             // link provisioning data
             list_add_tail (&pdpram_blk->list, &freercvpool);
         }
         numofmsgbuf = NUM_OF_FREE_BUFFERS;
 
 
-    return STATUS_SUCCESS;
+       return 0;
 
 
 err_free:
@@ -1080,7 +1082,9 @@ err_free:
                kfree(pdpram_blk->pbuffer);
                kfree(pdpram_blk);
        }
-       return STATUS_FAILURE;
+err_net:
+       free_netdev(netdev);
+       return ret_val;
 }