Commit 3e0b01c6 authored by Thomas Preisner's avatar Thomas Preisner Committed by Kleber Sacilotto de Souza

net: 3com: typhoon: typhoon_init_one: make return values more specific

BugLink: http://bugs.launchpad.net/bugs/1744873

[ Upstream commit 6b6bbb59 ]

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: default avatarThomas Preisner <thomas.preisner+linux@fau.de>
Signed-off-by: default avatarMilan Stephan <milan.stephan+linux@fau.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarKhalid Elmously <khalid.elmously@canonical.com>
Signed-off-by: default avatarStefan Bader <stefan.bader@canonical.com>
parent 904dc199
......@@ -2366,9 +2366,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;
}
......@@ -2382,16 +2382,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;
}
......@@ -2424,9 +2424,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;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment