net: 3com: typhoon: typhoon_init_one: make return values more specific
authorThomas Preisner <thomas.preisner+linux@fau.de>
Fri, 30 Dec 2016 02:37:54 +0000 (03:37 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 30 Dec 2016 20:26:22 +0000 (15:26 -0500)
In some cases the return value of a failing function is not being used
and the function typhoon_init_one() returns another negative error code
instead.

Signed-off-by: Thomas Preisner <thomas.preisner+linux@fau.de>
Signed-off-by: Milan Stephan <milan.stephan+linux@fau.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/3com/typhoon.c

index 25f2e92a67c4c01168fe14a254b3aea6cfab8992..1986ad17950ae686cb1b592619d7d606a216a943 100644 (file)
@@ -2370,9 +2370,9 @@ typhoon_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
         * 4) Get the hardware address.
         * 5) Put the card to sleep.
         */
-       if (typhoon_reset(ioaddr, WaitSleep) < 0) {
+       err = typhoon_reset(ioaddr, WaitSleep);
+       if (err < 0) {
                err_msg = "could not reset 3XP";
-               err = -EIO;
                goto error_out_dma;
        }
 
@@ -2386,16 +2386,16 @@ typhoon_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
        typhoon_init_interface(tp);
        typhoon_init_rings(tp);
 
-       if(typhoon_boot_3XP(tp, TYPHOON_STATUS_WAITING_FOR_HOST) < 0) {
+       err = typhoon_boot_3XP(tp, TYPHOON_STATUS_WAITING_FOR_HOST);
+       if (err < 0) {
                err_msg = "cannot boot 3XP sleep image";
-               err = -EIO;
                goto error_out_reset;
        }
 
        INIT_COMMAND_WITH_RESPONSE(&xp_cmd, TYPHOON_CMD_READ_MAC_ADDRESS);
-       if(typhoon_issue_command(tp, 1, &xp_cmd, 1, xp_resp) < 0) {
+       err = typhoon_issue_command(tp, 1, &xp_cmd, 1, xp_resp);
+       if (err < 0) {
                err_msg = "cannot read MAC address";
-               err = -EIO;
                goto error_out_reset;
        }
 
@@ -2430,9 +2430,9 @@ typhoon_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
        if(xp_resp[0].numDesc != 0)
                tp->capabilities |= TYPHOON_WAKEUP_NEEDS_RESET;
 
-       if(typhoon_sleep(tp, PCI_D3hot, 0) < 0) {
+       err = typhoon_sleep(tp, PCI_D3hot, 0);
+       if (err < 0) {
                err_msg = "cannot put adapter to sleep";
-               err = -EIO;
                goto error_out_reset;
        }