Commit 72076fc9 authored by Paolo Abeni's avatar Paolo Abeni

Revert "tg3: Remove residual error handling in tg3_suspend"

This reverts commit 9ab4ad29.

I went out of coffee and applied it to the wrong tree. Blame on me.
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent 9ab4ad29
......@@ -4019,7 +4019,7 @@ static int tg3_power_up(struct tg3 *tp)
static int tg3_setup_phy(struct tg3 *, bool);
static void tg3_power_down_prepare(struct tg3 *tp)
static int tg3_power_down_prepare(struct tg3 *tp)
{
u32 misc_host_ctrl;
bool device_should_wake, do_low_power;
......@@ -4263,7 +4263,7 @@ static void tg3_power_down_prepare(struct tg3 *tp)
tg3_ape_driver_state_change(tp, RESET_KIND_SHUTDOWN);
return;
return 0;
}
static void tg3_power_down(struct tg3 *tp)
......@@ -18084,6 +18084,7 @@ static int tg3_suspend(struct device *device)
{
struct net_device *dev = dev_get_drvdata(device);
struct tg3 *tp = netdev_priv(dev);
int err = 0;
rtnl_lock();
......@@ -18107,11 +18108,32 @@ static int tg3_suspend(struct device *device)
tg3_flag_clear(tp, INIT_COMPLETE);
tg3_full_unlock(tp);
tg3_power_down_prepare(tp);
err = tg3_power_down_prepare(tp);
if (err) {
int err2;
tg3_full_lock(tp, 0);
tg3_flag_set(tp, INIT_COMPLETE);
err2 = tg3_restart_hw(tp, true);
if (err2)
goto out;
tg3_timer_start(tp);
netif_device_attach(dev);
tg3_netif_start(tp);
out:
tg3_full_unlock(tp);
if (!err2)
tg3_phy_start(tp);
}
unlock:
rtnl_unlock();
return 0;
return err;
}
static int tg3_resume(struct device *device)
......
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