mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
net: stmmac: split hardware LPI timer control
Provide stmmac_disable_hw_lpi_timer() and stmmac_enable_hw_lpi_timer() to control the hardware transmit LPI timer. Reviewed-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Choong Yong Liang <yong.liang.choong@linux.intel.com> Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Link: https://patch.msgid.link/E1tVZEl-0002LK-LA@rmk-PC.armlinux.org.uk Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
27af081642
commit
17f47da103
|
|
@ -390,14 +390,24 @@ static inline u32 stmmac_rx_dirty(struct stmmac_priv *priv, u32 queue)
|
|||
return dirty;
|
||||
}
|
||||
|
||||
static void stmmac_disable_hw_lpi_timer(struct stmmac_priv *priv)
|
||||
{
|
||||
stmmac_set_eee_lpi_timer(priv, priv->hw, 0);
|
||||
}
|
||||
|
||||
static void stmmac_enable_hw_lpi_timer(struct stmmac_priv *priv)
|
||||
{
|
||||
stmmac_set_eee_lpi_timer(priv, priv->hw, priv->tx_lpi_timer);
|
||||
}
|
||||
|
||||
static void stmmac_lpi_entry_timer_config(struct stmmac_priv *priv, bool en)
|
||||
{
|
||||
u32 tx_lpi_timer;
|
||||
|
||||
/* Clear/set the SW EEE timer flag based on LPI ET enablement */
|
||||
priv->eee_sw_timer_en = en ? 0 : 1;
|
||||
tx_lpi_timer = en ? priv->tx_lpi_timer : 0;
|
||||
stmmac_set_eee_lpi_timer(priv, priv->hw, tx_lpi_timer);
|
||||
if (en)
|
||||
stmmac_enable_hw_lpi_timer(priv);
|
||||
else
|
||||
stmmac_disable_hw_lpi_timer(priv);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user