| /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 | 243 /* WOL MAC ADDR: MACADDR2(highest), MACADDR1(middle), MACADDR0(lowest) */ 260 /* 1b0 Interrupt and WOL events is level triggered and active LOW *default* 261 * 1b1 Interrupt and WOL events is pulse triggered and active LOW 527 * @wol: a pointer to a &struct ethtool_wolinfo in ytphy_get_wol() 532 struct ethtool_wolinfo *wol) in ytphy_get_wol() 536 wol->supported = WAKE_MAGIC; in ytphy_get_wol() 537 wol->wolopts = 0; in ytphy_get_wol() 544 wol->wolopts |= WAKE_MAGIC; 550 * @wol: a pointer to a &struct ethtool_wolinfo in ytphy_set_wol() argument 558 static int ytphy_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *wol) in ytphy_set_wol() 524 ytphy_get_wol(struct phy_device * phydev,struct ethtool_wolinfo * wol) ytphy_get_wol() argument 623 yt8531_set_wol(struct phy_device * phydev,struct ethtool_wolinfo * wol) yt8531_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 | 1588 struct ethtool_wolinfo *wol) in e1000_wol_exclusion() 1603 /* these don't support WoL at all */ in e1000_wol_exclusion() 1604 wol->supported = 0; in e1000_wol_exclusion() 1610 wol->supported = 0; in e1000_wol_exclusion() 1617 /* quad port adapters only support WoL on port A */ in e1000_wol_exclusion() 1619 wol->supported = 0; in e1000_wol_exclusion() 1626 /* dual port cards only support WoL on port A from now on in e1000_wol_exclusion() 1628 * so exclude FUNC_1 ports from having WoL enabled in e1000_wol_exclusion() 1632 wol->supported = 0; in e1000_wol_exclusion() 1643 struct ethtool_wolinfo *wol) in e1000_get_wol() 1586 e1000_wol_exclusion(struct e1000_adapter * adapter,struct ethtool_wolinfo * wol) e1000_wol_exclusion() argument 1641 e1000_get_wol(struct net_device * netdev,struct ethtool_wolinfo * wol) e1000_get_wol() argument 1680 e1000_set_wol(struct net_device * netdev,struct ethtool_wolinfo * wol) e1000_set_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 | 1888 struct ethtool_wolinfo *wol) in e1000_get_wol() 1892 wol->supported = 0; in e1000_get_wol() 1893 wol->wolopts = 0; in e1000_get_wol() 1899 wol->supported = WAKE_UCAST | WAKE_MCAST | in e1000_get_wol() 1904 wol->supported &= ~WAKE_UCAST; in e1000_get_wol() 1906 if (adapter->wol & E1000_WUFC_EX) in e1000_get_wol() 1910 if (adapter->wol & E1000_WUFC_EX) in e1000_get_wol() 1911 wol->wolopts |= WAKE_UCAST; in e1000_get_wol() 1912 if (adapter->wol & E1000_WUFC_MC) in e1000_get_wol() 1913 wol in e1000_get_wol() 1883 e1000_get_wol(struct net_device * netdev,struct ethtool_wolinfo * wol) e1000_get_wol() argument 1917 e1000_set_wol(struct net_device * netdev,struct ethtool_wolinfo * wol) e1000_set_wol() argument [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 | 2356 struct ethtool_wolinfo *wol) in ixgbe_wol_exclusion() 2361 /* WOL not supported for all devices */ in ixgbe_wol_exclusion() 2365 wol->supported = 0; in ixgbe_wol_exclusion() 2372 struct ethtool_wolinfo *wol) in ixgbe_get_wol() 2376 wol->supported = WAKE_UCAST | WAKE_MCAST | in ixgbe_get_wol() 2378 wol->wolopts = 0; in ixgbe_get_wol() 2380 if (ixgbe_wol_exclusion(adapter, wol) || in ixgbe_get_wol() 2384 if (adapter->wol & IXGBE_WUFC_EX) in ixgbe_get_wol() 2385 wol->wolopts |= WAKE_UCAST; in ixgbe_get_wol() 2386 if (adapter->wol in ixgbe_get_wol() 2355 ixgbe_wol_exclusion(struct ixgbe_adapter * adapter,struct ethtool_wolinfo * wol) ixgbe_wol_exclusion() argument 2371 ixgbe_get_wol(struct net_device * netdev,struct ethtool_wolinfo * wol) ixgbe_get_wol() argument 2393 ixgbe_set_wol(struct net_device * netdev,struct ethtool_wolinfo * wol) ixgbe_set_wol() argument 2421 ixgbe_set_wol_acpi(struct net_device * netdev,struct ethtool_wolinfo * wol) ixgbe_set_wol_acpi() argument 2456 ixgbe_set_wol_e610(struct net_device * netdev,struct ethtool_wolinfo * wol) ixgbe_set_wol_e610() argument [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 | 469 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() 480 if (wol & WAKE_MAGIC) in aq_a2_fw_set_wol_params() 483 if (wol & (WAKE_PHY | AQ_FW_WAKE_ON_LINK_RTPM)) in aq_a2_fw_set_wol_params() 498 u32 wol = self->aq_nic_cfg->wol; in aq_a2_fw_set_power() 501 if (wol) in aq_a2_fw_set_power() 502 err = aq_a2_fw_set_wol_params(self, mac, wol); 465 aq_a2_fw_set_wol_params(struct aq_hw_s * self,const u8 * mac,u32 wol) aq_a2_fw_set_wol_params() argument 494 u32 wol = self->aq_nic_cfg->wol; aq_a2_fw_set_power() local
|
| /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 in pegasus_set_wol() 964 struct ethtool_wolinfo wol; pegasus_reset_wol() local [all...] |