Lines Matching full:wol
1580 struct ethtool_wolinfo *wol) in e1000_wol_exclusion() argument
1595 /* these don't support WoL at all */ in e1000_wol_exclusion()
1596 wol->supported = 0; in e1000_wol_exclusion()
1602 wol->supported = 0; in e1000_wol_exclusion()
1609 /* quad port adapters only support WoL on port A */ in e1000_wol_exclusion()
1611 wol->supported = 0; in e1000_wol_exclusion()
1618 /* dual port cards only support WoL on port A from now on in e1000_wol_exclusion()
1620 * so exclude FUNC_1 ports from having WoL enabled in e1000_wol_exclusion()
1624 wol->supported = 0; in e1000_wol_exclusion()
1635 struct ethtool_wolinfo *wol) in e1000_get_wol() argument
1640 wol->supported = WAKE_UCAST | WAKE_MCAST | WAKE_BCAST | WAKE_MAGIC; in e1000_get_wol()
1641 wol->wolopts = 0; in e1000_get_wol()
1643 /* this function will set ->supported = 0 and return 1 if wol is not in e1000_get_wol()
1646 if (e1000_wol_exclusion(adapter, wol) || in e1000_get_wol()
1654 wol->supported &= ~WAKE_UCAST; in e1000_get_wol()
1656 if (adapter->wol & E1000_WUFC_EX) in e1000_get_wol()
1664 if (adapter->wol & E1000_WUFC_EX) in e1000_get_wol()
1665 wol->wolopts |= WAKE_UCAST; in e1000_get_wol()
1666 if (adapter->wol & E1000_WUFC_MC) in e1000_get_wol()
1667 wol->wolopts |= WAKE_MCAST; in e1000_get_wol()
1668 if (adapter->wol & E1000_WUFC_BC) in e1000_get_wol()
1669 wol->wolopts |= WAKE_BCAST; in e1000_get_wol()
1670 if (adapter->wol & E1000_WUFC_MAG) in e1000_get_wol()
1671 wol->wolopts |= WAKE_MAGIC; in e1000_get_wol()
1674 static int e1000_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) in e1000_set_wol() argument
1679 if (wol->wolopts & (WAKE_PHY | WAKE_ARP | WAKE_MAGICSECURE)) in e1000_set_wol()
1682 if (e1000_wol_exclusion(adapter, wol) || in e1000_set_wol()
1684 return wol->wolopts ? -EOPNOTSUPP : 0; in e1000_set_wol()
1688 if (wol->wolopts & WAKE_UCAST) { in e1000_set_wol()
1699 adapter->wol = 0; in e1000_set_wol()
1701 if (wol->wolopts & WAKE_UCAST) in e1000_set_wol()
1702 adapter->wol |= E1000_WUFC_EX; in e1000_set_wol()
1703 if (wol->wolopts & WAKE_MCAST) in e1000_set_wol()
1704 adapter->wol |= E1000_WUFC_MC; in e1000_set_wol()
1705 if (wol->wolopts & WAKE_BCAST) in e1000_set_wol()
1706 adapter->wol |= E1000_WUFC_BC; in e1000_set_wol()
1707 if (wol->wolopts & WAKE_MAGIC) in e1000_set_wol()
1708 adapter->wol |= E1000_WUFC_MAG; in e1000_set_wol()
1710 device_set_wakeup_enable(&adapter->pdev->dev, adapter->wol); in e1000_set_wol()