| /linux/drivers/net/wireless/marvell/mwifiex/ |
| H A D | ethtool.c | 11 struct ethtool_wolinfo *wol) in mwifiex_ethtool_get_wol() argument 16 wol->supported = WAKE_UCAST|WAKE_MCAST|WAKE_BCAST|WAKE_PHY; in mwifiex_ethtool_get_wol() 22 wol->wolopts |= WAKE_UCAST; in mwifiex_ethtool_get_wol() 24 wol->wolopts |= WAKE_MCAST; in mwifiex_ethtool_get_wol() 26 wol->wolopts |= WAKE_BCAST; in mwifiex_ethtool_get_wol() 28 wol->wolopts |= WAKE_PHY; in mwifiex_ethtool_get_wol() 32 struct ethtool_wolinfo *wol) in mwifiex_ethtool_set_wol() argument 37 if (wol->wolopts & ~(WAKE_UCAST|WAKE_MCAST|WAKE_BCAST|WAKE_PHY)) in mwifiex_ethtool_set_wol() 40 if (wol->wolopts & WAKE_UCAST) in mwifiex_ethtool_set_wol() 42 if (wol->wolopts & WAKE_MCAST) in mwifiex_ethtool_set_wol() [all …]
|
| /linux/drivers/net/ethernet/broadcom/genet/ |
| H A D | bcmgenet_wol.c | 37 /* ethtool function - get WOL (Wake on LAN) settings, Only Magic Packet 40 void bcmgenet_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol) in bcmgenet_get_wol() argument 47 phy_ethtool_get_wol(dev->phydev, wol); in bcmgenet_get_wol() 48 phy_wolopts = wol->wolopts; in bcmgenet_get_wol() 56 wol->supported |= WAKE_MAGIC | WAKE_MAGICSECURE | WAKE_FILTER; in bcmgenet_get_wol() 57 wol->wolopts |= priv->wolopts; in bcmgenet_get_wol() 64 memset(wol->sopass, 0, sizeof(wol->sopass)); in bcmgenet_get_wol() 65 if (wol->wolopts & WAKE_MAGICSECURE) in bcmgenet_get_wol() 66 memcpy(wol->sopass, priv->sopass, sizeof(priv->sopass)); in bcmgenet_get_wol() 69 /* ethtool function - set WOL (Wake on LAN) settings. [all …]
|
| /linux/drivers/net/phy/ |
| H A D | dp83tc811.c | 57 /* WoL Registers */ 64 /* WoL bits */ 98 struct ethtool_wolinfo *wol) in dp83811_set_wol() argument 104 if (wol->wolopts & (WAKE_MAGIC | WAKE_MAGICSECURE)) { in dp83811_set_wol() 122 if (wol->wolopts & WAKE_MAGIC) in dp83811_set_wol() 127 if (wol->wolopts & WAKE_MAGICSECURE) { in dp83811_set_wol() 130 (wol->sopass[1] << 8) | wol->sopass[0]); in dp83811_set_wol() 133 (wol->sopass[3] << 8) | wol->sopass[2]); in dp83811_set_wol() 136 (wol->sopass[5] << 8) | wol->sopass[4]); in dp83811_set_wol() 142 /* Clear any pending WoL interrupt */ in dp83811_set_wol() [all …]
|
| H A D | dp83869.c | 260 struct ethtool_wolinfo *wol) in dp83869_set_wol() argument 275 if (wol->wolopts & (WAKE_MAGIC | WAKE_MAGICSECURE | WAKE_UCAST | in dp83869_set_wol() 280 if (wol->wolopts & WAKE_MAGIC || in dp83869_set_wol() 281 wol->wolopts & WAKE_MAGICSECURE) { in dp83869_set_wol() 310 if (wol->wolopts & WAKE_MAGICSECURE) { in dp83869_set_wol() 313 (wol->sopass[1] << 8) | wol->sopass[0]); in dp83869_set_wol() 319 (wol->sopass[3] << 8) | wol->sopass[2]); in dp83869_set_wol() 324 (wol->sopass[5] << 8) | wol->sopass[4]); in dp83869_set_wol() 333 if (wol->wolopts & WAKE_UCAST) in dp83869_set_wol() 338 if (wol->wolopts & WAKE_BCAST) in dp83869_set_wol() [all …]
|
| H A D | smsc.c | 323 * be cleared to de-assert PME signal after a WoL event happens, but in lan874x_phy_config_init() 342 struct ethtool_wolinfo *wol) in lan874x_get_wol() argument 347 wol->supported = (WAKE_UCAST | WAKE_BCAST | WAKE_MAGIC | in lan874x_get_wol() 349 wol->wolopts = 0; in lan874x_get_wol() 356 wol->wolopts |= WAKE_UCAST; in lan874x_get_wol() 359 wol->wolopts |= WAKE_BCAST; in lan874x_get_wol() 362 wol->wolopts |= WAKE_MAGIC; in lan874x_get_wol() 366 wol->wolopts |= WAKE_ARP; in lan874x_get_wol() 368 wol->wolopts |= WAKE_MCAST; in lan874x_get_wol() 454 struct ethtool_wolinfo *wol) in lan874x_set_wol() argument [all …]
|
| H A D | bcm-phy-lib.c | 883 int bcm_phy_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *wol) in bcm_phy_set_wol() argument 894 if (wol->wolopts & ~BCM54XX_WOL_SUPPORTED_MASK) in bcm_phy_set_wol() 900 BUILD_BUG_ON(sizeof(wol->sopass) != ETH_ALEN); in bcm_phy_set_wol() 913 if (!wol->wolopts) { in bcm_phy_set_wol() 950 if (wol->wolopts & WAKE_MCAST) { in bcm_phy_set_wol() 956 if (wol->wolopts & WAKE_UCAST) { in bcm_phy_set_wol() 958 } else if (wol->wolopts & WAKE_BCAST) { in bcm_phy_set_wol() 960 } else if (wol->wolopts & WAKE_MAGICSECURE) { in bcm_phy_set_wol() 961 ether_addr_copy(da, wol->sopass); in bcm_phy_set_wol() 962 } else if (wol->wolopts & WAKE_MAGIC) { in bcm_phy_set_wol() [all …]
|
| H A D | mxl-86110.c | 336 * @wol: a pointer to a &struct ethtool_wolinfo 339 struct ethtool_wolinfo *wol) in mxl86110_get_wol() argument 343 wol->supported = WAKE_MAGIC; in mxl86110_get_wol() 344 wol->wolopts = 0; in mxl86110_get_wol() 347 wol->wolopts |= WAKE_MAGIC; in mxl86110_get_wol() 353 * @wol: a pointer to a &struct ethtool_wolinfo 355 * Configures the WOL Magic Packet MAC 360 struct ethtool_wolinfo *wol) in mxl86110_set_wol() argument 368 if (wol->wolopts & WAKE_MAGIC) { in mxl86110_set_wol() 375 /* Configure the MAC address of the WOL magic packet */ in mxl86110_set_wol()
|
| H A D | motorcomm.c | 235 /* WOL MAC ADDR: MACADDR2(highest), MACADDR1(middle), MACADDR0(lowest) */ 252 /* 1b0 Interrupt and WOL events is level triggered and active LOW *default* 253 * 1b1 Interrupt and WOL events is pulse triggered and active LOW 519 * @wol: a pointer to a &struct ethtool_wolinfo 524 struct ethtool_wolinfo *wol) in ytphy_get_wol() argument 528 wol->supported = WAKE_MAGIC; in ytphy_get_wol() 529 wol->wolopts = 0; in ytphy_get_wol() 536 wol->wolopts |= WAKE_MAGIC; in ytphy_get_wol() 542 * @wol: a pointer to a &struct ethtool_wolinfo 550 static int ytphy_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *wol) in ytphy_set_wol() argument [all …]
|
| /linux/drivers/net/ethernet/atheros/atl1c/ |
| H A D | atl1c_ethtool.c | 229 struct ethtool_wolinfo *wol) in atl1c_get_wol() argument 233 wol->supported = WAKE_MAGIC | WAKE_PHY; in atl1c_get_wol() 234 wol->wolopts = 0; in atl1c_get_wol() 236 if (adapter->wol & AT_WUFC_EX) in atl1c_get_wol() 237 wol->wolopts |= WAKE_UCAST; in atl1c_get_wol() 238 if (adapter->wol & AT_WUFC_MC) in atl1c_get_wol() 239 wol->wolopts |= WAKE_MCAST; in atl1c_get_wol() 240 if (adapter->wol & AT_WUFC_BC) in atl1c_get_wol() 241 wol->wolopts |= WAKE_BCAST; in atl1c_get_wol() 242 if (adapter->wol & AT_WUFC_MAG) in atl1c_get_wol() [all …]
|
| /linux/drivers/net/wireless/marvell/libertas/ |
| H A D | ethtool.c | 62 struct ethtool_wolinfo *wol) in lbs_ethtool_get_wol() argument 66 wol->supported = WAKE_UCAST|WAKE_MCAST|WAKE_BCAST|WAKE_PHY; in lbs_ethtool_get_wol() 72 wol->wolopts |= WAKE_UCAST; in lbs_ethtool_get_wol() 74 wol->wolopts |= WAKE_MCAST; in lbs_ethtool_get_wol() 76 wol->wolopts |= WAKE_BCAST; in lbs_ethtool_get_wol() 78 wol->wolopts |= WAKE_PHY; in lbs_ethtool_get_wol() 82 struct ethtool_wolinfo *wol) in lbs_ethtool_set_wol() argument 86 if (wol->wolopts & ~(WAKE_UCAST|WAKE_MCAST|WAKE_BCAST|WAKE_PHY)) in lbs_ethtool_set_wol() 90 if (wol->wolopts & WAKE_UCAST) in lbs_ethtool_set_wol() 92 if (wol->wolopts & WAKE_MCAST) in lbs_ethtool_set_wol() [all …]
|
| /linux/drivers/net/ethernet/atheros/atl1e/ |
| H A D | atl1e_ethtool.c | 316 struct ethtool_wolinfo *wol) in atl1e_get_wol() argument 320 wol->supported = WAKE_MAGIC | WAKE_PHY; in atl1e_get_wol() 321 wol->wolopts = 0; in atl1e_get_wol() 323 if (adapter->wol & AT_WUFC_EX) in atl1e_get_wol() 324 wol->wolopts |= WAKE_UCAST; in atl1e_get_wol() 325 if (adapter->wol & AT_WUFC_MC) in atl1e_get_wol() 326 wol->wolopts |= WAKE_MCAST; in atl1e_get_wol() 327 if (adapter->wol & AT_WUFC_BC) in atl1e_get_wol() 328 wol->wolopts |= WAKE_BCAST; in atl1e_get_wol() 329 if (adapter->wol & AT_WUFC_MAG) in atl1e_get_wol() [all …]
|
| /linux/drivers/net/ethernet/oki-semi/pch_gbe/ |
| H A D | pch_gbe_ethtool.c | 206 * @wol: Wake-on-Lan information 209 struct ethtool_wolinfo *wol) in pch_gbe_get_wol() argument 213 wol->supported = WAKE_UCAST | WAKE_MCAST | WAKE_BCAST | WAKE_MAGIC; in pch_gbe_get_wol() 214 wol->wolopts = 0; in pch_gbe_get_wol() 217 wol->wolopts |= WAKE_UCAST; in pch_gbe_get_wol() 219 wol->wolopts |= WAKE_MCAST; in pch_gbe_get_wol() 221 wol->wolopts |= WAKE_BCAST; in pch_gbe_get_wol() 223 wol->wolopts |= WAKE_MAGIC; in pch_gbe_get_wol() 229 * @wol: Pointer of wake-on-Lan information straucture 235 struct ethtool_wolinfo *wol) in pch_gbe_set_wol() argument [all …]
|
| /linux/drivers/net/phy/qcom/ |
| H A D | qcom-phy-lib.c | 60 struct ethtool_wolinfo *wol) in at803x_set_wol() argument 64 if (wol->wolopts & WAKE_MAGIC) { in at803x_set_wol() 86 /* Enable WOL interrupt */ in at803x_set_wol() 91 /* Disable WOL interrupt */ in at803x_set_wol() 97 /* Clear WOL status */ in at803x_set_wol() 102 /* Check if there are other interrupts except for WOL triggered when PHY is in at803x_set_wol() 119 struct ethtool_wolinfo *wol) in at8031_set_wol() argument 123 /* First setup MAC address and enable WOL interrupt */ in at8031_set_wol() 124 ret = at803x_set_wol(phydev, wol); in at8031_set_wol() 128 if (wol->wolopts & WAKE_MAGIC) in at8031_set_wol() [all …]
|
| /linux/drivers/net/ethernet/intel/e1000/ |
| H A D | e1000_ethtool.c | 1586 struct ethtool_wolinfo *wol) in e1000_wol_exclusion() argument 1601 /* these don't support WoL at all */ in e1000_wol_exclusion() 1602 wol->supported = 0; in e1000_wol_exclusion() 1608 wol->supported = 0; in e1000_wol_exclusion() 1615 /* quad port adapters only support WoL on port A */ in e1000_wol_exclusion() 1617 wol->supported = 0; in e1000_wol_exclusion() 1624 /* dual port cards only support WoL on port A from now on in e1000_wol_exclusion() 1626 * so exclude FUNC_1 ports from having WoL enabled in e1000_wol_exclusion() 1630 wol->supported = 0; in e1000_wol_exclusion() 1641 struct ethtool_wolinfo *wol) in e1000_get_wol() argument [all …]
|
| /linux/Documentation/networking/device_drivers/ethernet/intel/ |
| H A D | e100.rst | 141 Enabling Wake on LAN (WoL) 143 WoL is provided through the ethtool utility. For instructions on 144 enabling WoL with ethtool, refer to the ethtool man page. WoL will be 146 driver version, in order to enable WoL, the e100 driver must be loaded
|
| H A D | igb.rst | 132 Enabling Wake on LAN (WoL) 134 WoL is configured through the ethtool utility. 136 WoL will be enabled on the system during the next shut down or reboot. For 137 this driver version, in order to enable WoL, the igb driver must be loaded
|
| /linux/drivers/power/reset/ |
| H A D | linkstation-poweroff.c | 68 /* If WOL was enabled and a magic packet was received before powering in linkstation_mvphy_reg_intn() 70 * Clear WOL status. in linkstation_mvphy_reg_intn() 99 /* If WOL was enabled and a magic packet was received before powering in readynas_mvphy_set_reg() 101 * Clear WOL status. in readynas_mvphy_set_reg()
|
| /linux/drivers/net/ethernet/intel/e1000e/ |
| H A D | ethtool.c | 1883 struct ethtool_wolinfo *wol) in e1000_get_wol() argument 1887 wol->supported = 0; in e1000_get_wol() 1888 wol->wolopts = 0; in e1000_get_wol() 1894 wol->supported = WAKE_UCAST | WAKE_MCAST | in e1000_get_wol() 1899 wol->supported &= ~WAKE_UCAST; in e1000_get_wol() 1901 if (adapter->wol & E1000_WUFC_EX) in e1000_get_wol() 1905 if (adapter->wol & E1000_WUFC_EX) in e1000_get_wol() 1906 wol->wolopts |= WAKE_UCAST; in e1000_get_wol() 1907 if (adapter->wol & E1000_WUFC_MC) in e1000_get_wol() 1908 wol->wolopts |= WAKE_MCAST; in e1000_get_wol() [all …]
|
| /linux/drivers/net/ethernet/intel/igc/ |
| H A D | igc_ethtool.c | 353 struct ethtool_wolinfo *wol) in igc_ethtool_get_wol() argument 357 wol->wolopts = 0; in igc_ethtool_get_wol() 362 wol->supported = WAKE_UCAST | WAKE_MCAST | in igc_ethtool_get_wol() 372 if (adapter->wol & IGC_WUFC_EX) in igc_ethtool_get_wol() 373 wol->wolopts |= WAKE_UCAST; in igc_ethtool_get_wol() 374 if (adapter->wol & IGC_WUFC_MC) in igc_ethtool_get_wol() 375 wol->wolopts |= WAKE_MCAST; in igc_ethtool_get_wol() 376 if (adapter->wol & IGC_WUFC_BC) in igc_ethtool_get_wol() 377 wol->wolopts |= WAKE_BCAST; in igc_ethtool_get_wol() 378 if (adapter->wol & IGC_WUFC_MAG) in igc_ethtool_get_wol() [all …]
|
| /linux/drivers/net/ethernet/socionext/ |
| H A D | sni_ave.c | 419 struct ethtool_wolinfo *wol) in ave_ethtool_get_wol() argument 421 wol->supported = 0; in ave_ethtool_get_wol() 422 wol->wolopts = 0; in ave_ethtool_get_wol() 425 phy_ethtool_get_wol(ndev->phydev, wol); in ave_ethtool_get_wol() 429 struct ethtool_wolinfo *wol) in __ave_ethtool_set_wol() argument 432 (wol->wolopts & (WAKE_ARP | WAKE_MAGICSECURE))) in __ave_ethtool_set_wol() 435 return phy_ethtool_set_wol(ndev->phydev, wol); in __ave_ethtool_set_wol() 439 struct ethtool_wolinfo *wol) in ave_ethtool_set_wol() argument 443 ret = __ave_ethtool_set_wol(ndev, wol); in ave_ethtool_set_wol() 445 device_set_wakeup_enable(&ndev->dev, !!wol->wolopts); in ave_ethtool_set_wol() [all …]
|
| /linux/drivers/net/ethernet/intel/ixgbe/ |
| H A D | ixgbe_ethtool.c | 2355 struct ethtool_wolinfo *wol) in ixgbe_wol_exclusion() argument 2360 /* WOL not supported for all devices */ in ixgbe_wol_exclusion() 2364 wol->supported = 0; in ixgbe_wol_exclusion() 2371 struct ethtool_wolinfo *wol) in ixgbe_get_wol() argument 2375 wol->supported = WAKE_UCAST | WAKE_MCAST | in ixgbe_get_wol() 2377 wol->wolopts = 0; in ixgbe_get_wol() 2379 if (ixgbe_wol_exclusion(adapter, wol) || in ixgbe_get_wol() 2383 if (adapter->wol & IXGBE_WUFC_EX) in ixgbe_get_wol() 2384 wol->wolopts |= WAKE_UCAST; in ixgbe_get_wol() 2385 if (adapter->wol & IXGBE_WUFC_MC) in ixgbe_get_wol() [all …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | mediatek-dwmac.yaml | 134 mediatek,mac-wol: 137 If present, indicates that MAC supports WOL(Wake-On-LAN), and MAC WOL will be enabled. 138 Otherwise, PHY WOL is preferred.
|
| /linux/drivers/net/ethernet/aquantia/atlantic/hw_atl2/ |
| H A D | hw_atl2_utils_fw.c | 465 static int aq_a2_fw_set_wol_params(struct aq_hw_s *self, const u8 *mac, u32 wol) in aq_a2_fw_set_wol_params() argument 476 if (wol & WAKE_MAGIC) in aq_a2_fw_set_wol_params() 479 if (wol & (WAKE_PHY | AQ_FW_WAKE_ON_LINK_RTPM)) in aq_a2_fw_set_wol_params() 494 u32 wol = self->aq_nic_cfg->wol; in aq_a2_fw_set_power() local 497 if (wol) in aq_a2_fw_set_power() 498 err = aq_a2_fw_set_wol_params(self, mac, wol); in aq_a2_fw_set_power()
|
| /linux/drivers/net/ethernet/realtek/ |
| H A D | 8139cp.c | 1327 const struct ethtool_wolinfo *wol) in netdev_set_wol() argument 1332 /* If WOL is being disabled, no need for complexity */ in netdev_set_wol() 1333 if (wol->wolopts) { in netdev_set_wol() 1334 if (wol->wolopts & WAKE_PHY) options |= LinkUp; in netdev_set_wol() 1335 if (wol->wolopts & WAKE_MAGIC) options |= MagicPacket; in netdev_set_wol() 1344 /* If WOL is being disabled, no need for complexity */ in netdev_set_wol() 1345 if (wol->wolopts) { in netdev_set_wol() 1346 if (wol->wolopts & WAKE_UCAST) options |= UWF; in netdev_set_wol() 1347 if (wol->wolopts & WAKE_BCAST) options |= BWF; in netdev_set_wol() 1348 if (wol->wolopts & WAKE_MCAST) options |= MWF; in netdev_set_wol() [all …]
|
| /linux/drivers/net/usb/ |
| H A D | pegasus.c | 926 pegasus_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol) in pegasus_get_wol() argument 930 wol->supported = WAKE_MAGIC | WAKE_PHY; in pegasus_get_wol() 931 wol->wolopts = pegasus->wolopts; in pegasus_get_wol() 935 pegasus_set_wol(struct net_device *dev, struct ethtool_wolinfo *wol) in pegasus_set_wol() argument 941 if (wol->wolopts & ~WOL_SUPPORTED) in pegasus_set_wol() 944 if (wol->wolopts & WAKE_MAGIC) in pegasus_set_wol() 946 if (wol->wolopts & WAKE_PHY) in pegasus_set_wol() 949 if (wol->wolopts) in pegasus_set_wol() 953 pegasus->wolopts = wol->wolopts; in pegasus_set_wol() 958 wol->wolopts); in pegasus_set_wol() [all …]
|