提交 a6205110 编写于 作者: H Heiner Kallweit 提交者: David S. Miller

net: phy: smsc: add flag edpd_mode_set_by_user

Add flag edpd_mode_set_by_user in preparation of adding edpd phy tunable
support. This flag will allow users to override the default behavior
of edpd being disabled if interrupt mode is used.
Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: NSimon Horman <simon.horman@corigine.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 d56417ad
...@@ -45,6 +45,7 @@ static struct smsc_hw_stat smsc_hw_stats[] = { ...@@ -45,6 +45,7 @@ static struct smsc_hw_stat smsc_hw_stats[] = {
struct smsc_phy_priv { struct smsc_phy_priv {
unsigned int edpd_enable:1; unsigned int edpd_enable:1;
unsigned int edpd_mode_set_by_user:1;
}; };
static int smsc_phy_ack_interrupt(struct phy_device *phydev) static int smsc_phy_ack_interrupt(struct phy_device *phydev)
...@@ -117,7 +118,8 @@ int smsc_phy_config_init(struct phy_device *phydev) ...@@ -117,7 +118,8 @@ int smsc_phy_config_init(struct phy_device *phydev)
if (!priv) if (!priv)
return 0; return 0;
if (phydev->irq != PHY_POLL) /* don't use EDPD in irq mode except overridden by user */
if (!priv->edpd_mode_set_by_user && phydev->irq != PHY_POLL)
priv->edpd_enable = false; priv->edpd_enable = false;
return smsc_phy_config_edpd(phydev); return smsc_phy_config_edpd(phydev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册