forked from Minki/linux
net: stmmac: Move device_can_wakeup() check earlier in set_wol
If !device_can_wakeup(), there's no need to futher check. And return -EOPNOTSUPP rather than -EINVAL if !device_can_wakeup(). Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1057d685c6
commit
2f45f7a13e
@ -615,15 +615,15 @@ static int stmmac_set_wol(struct net_device *dev, struct ethtool_wolinfo *wol)
|
|||||||
struct stmmac_priv *priv = netdev_priv(dev);
|
struct stmmac_priv *priv = netdev_priv(dev);
|
||||||
u32 support = WAKE_MAGIC | WAKE_UCAST;
|
u32 support = WAKE_MAGIC | WAKE_UCAST;
|
||||||
|
|
||||||
|
if (!device_can_wakeup(priv->device))
|
||||||
|
return -EOPNOTSUPP;
|
||||||
|
|
||||||
/* By default almost all GMAC devices support the WoL via
|
/* By default almost all GMAC devices support the WoL via
|
||||||
* magic frame but we can disable it if the HW capability
|
* magic frame but we can disable it if the HW capability
|
||||||
* register shows no support for pmt_magic_frame. */
|
* register shows no support for pmt_magic_frame. */
|
||||||
if ((priv->hw_cap_support) && (!priv->dma_cap.pmt_magic_frame))
|
if ((priv->hw_cap_support) && (!priv->dma_cap.pmt_magic_frame))
|
||||||
wol->wolopts &= ~WAKE_MAGIC;
|
wol->wolopts &= ~WAKE_MAGIC;
|
||||||
|
|
||||||
if (!device_can_wakeup(priv->device))
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
if (wol->wolopts & ~support)
|
if (wol->wolopts & ~support)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user