Skip to content

Commit

Permalink
r8169: make rtl8169_down central chip quiesce function
Browse files Browse the repository at this point in the history
Functionality for quiescing the chip is spread across different
functions currently. Move it to rtl8169_down().

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Heiner Kallweit authored and David S. Miller committed May 31, 2020
1 parent bac75d8 commit 8ac8e8c
Showing 1 changed file with 11 additions and 22 deletions.
33 changes: 11 additions & 22 deletions drivers/net/ethernet/realtek/r8169_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -4627,20 +4627,21 @@ static int r8169_phy_connect(struct rtl8169_private *tp)
return 0;
}

static void rtl8169_down(struct net_device *dev)
static void rtl8169_down(struct rtl8169_private *tp)
{
struct rtl8169_private *tp = netdev_priv(dev);
rtl_lock_work(tp);

phy_stop(tp->phydev);
/* Clear all task flags */
bitmap_zero(tp->wk.flags, RTL_FLAG_MAX);

phy_stop(tp->phydev);
napi_disable(&tp->napi);
netif_stop_queue(dev);

rtl8169_hw_reset(tp);

rtl8169_rx_clear(tp);

rtl_pll_power_down(tp);

rtl_unlock_work(tp);
}

static int rtl8169_close(struct net_device *dev)
Expand All @@ -4653,12 +4654,9 @@ static int rtl8169_close(struct net_device *dev)
/* Update counters before going down */
rtl8169_update_counters(tp);

rtl_lock_work(tp);
/* Clear all task flags */
bitmap_zero(tp->wk.flags, RTL_FLAG_MAX);

rtl8169_down(dev);
rtl_unlock_work(tp);
netif_stop_queue(dev);
rtl8169_down(tp);
rtl8169_rx_clear(tp);

cancel_work_sync(&tp->wk.work);

Expand Down Expand Up @@ -4817,17 +4815,8 @@ static void rtl8169_net_suspend(struct rtl8169_private *tp)
if (!netif_running(tp->dev))
return;

phy_stop(tp->phydev);
netif_device_detach(tp->dev);

rtl_lock_work(tp);
napi_disable(&tp->napi);
/* Clear all task flags */
bitmap_zero(tp->wk.flags, RTL_FLAG_MAX);

rtl_unlock_work(tp);

rtl_pll_power_down(tp);
rtl8169_down(tp);
}

#ifdef CONFIG_PM
Expand Down

0 comments on commit 8ac8e8c

Please sign in to comment.