libertas: Fix ethtool reporting no WOL options supported if WOL is not already active
This patch fixes the libertas driver incorrectly reporting that Wake-on-LAN is not supported if Wake-on-LAN is currently disabled. Signed-off-by: Sascha Silbe <sascha-pgp@silbe.org> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Родитель
a5fdbcad0a
Коммит
84efa0e7aa
|
@ -69,14 +69,11 @@ static void lbs_ethtool_get_wol(struct net_device *dev,
|
||||||
{
|
{
|
||||||
struct lbs_private *priv = dev->ml_priv;
|
struct lbs_private *priv = dev->ml_priv;
|
||||||
|
|
||||||
if (priv->wol_criteria == 0xffffffff) {
|
|
||||||
/* Interface driver didn't configure wake */
|
|
||||||
wol->supported = wol->wolopts = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
wol->supported = WAKE_UCAST|WAKE_MCAST|WAKE_BCAST|WAKE_PHY;
|
wol->supported = WAKE_UCAST|WAKE_MCAST|WAKE_BCAST|WAKE_PHY;
|
||||||
|
|
||||||
|
if (priv->wol_criteria == EHS_REMOVE_WAKEUP)
|
||||||
|
return;
|
||||||
|
|
||||||
if (priv->wol_criteria & EHS_WAKE_ON_UNICAST_DATA)
|
if (priv->wol_criteria & EHS_WAKE_ON_UNICAST_DATA)
|
||||||
wol->wolopts |= WAKE_UCAST;
|
wol->wolopts |= WAKE_UCAST;
|
||||||
if (priv->wol_criteria & EHS_WAKE_ON_MULTICAST_DATA)
|
if (priv->wol_criteria & EHS_WAKE_ON_MULTICAST_DATA)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче