|
@@ -774,6 +774,9 @@ static int smsc95xx_ethtool_set_wol(struct net_device *net,
|
|
struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev->data[0]);
|
|
struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev->data[0]);
|
|
int ret;
|
|
int ret;
|
|
|
|
|
|
|
|
+ if (wolinfo->wolopts & ~SUPPORTED_WAKE)
|
|
|
|
+ return -EINVAL;
|
|
|
|
+
|
|
pdata->wolopts = wolinfo->wolopts & SUPPORTED_WAKE;
|
|
pdata->wolopts = wolinfo->wolopts & SUPPORTED_WAKE;
|
|
|
|
|
|
ret = device_set_wakeup_enable(&dev->udev->dev, pdata->wolopts);
|
|
ret = device_set_wakeup_enable(&dev->udev->dev, pdata->wolopts);
|