Lines Matching full:wol

2352 			       struct ethtool_wolinfo *wol)  in ixgbe_wol_exclusion()  argument
2357 /* WOL not supported for all devices */ in ixgbe_wol_exclusion()
2361 wol->supported = 0; in ixgbe_wol_exclusion()
2368 struct ethtool_wolinfo *wol) in ixgbe_get_wol() argument
2372 wol->supported = WAKE_UCAST | WAKE_MCAST | in ixgbe_get_wol()
2374 wol->wolopts = 0; in ixgbe_get_wol()
2376 if (ixgbe_wol_exclusion(adapter, wol) || in ixgbe_get_wol()
2380 if (adapter->wol & IXGBE_WUFC_EX) in ixgbe_get_wol()
2381 wol->wolopts |= WAKE_UCAST; in ixgbe_get_wol()
2382 if (adapter->wol & IXGBE_WUFC_MC) in ixgbe_get_wol()
2383 wol->wolopts |= WAKE_MCAST; in ixgbe_get_wol()
2384 if (adapter->wol & IXGBE_WUFC_BC) in ixgbe_get_wol()
2385 wol->wolopts |= WAKE_BCAST; in ixgbe_get_wol()
2386 if (adapter->wol & IXGBE_WUFC_MAG) in ixgbe_get_wol()
2387 wol->wolopts |= WAKE_MAGIC; in ixgbe_get_wol()
2390 static int ixgbe_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) in ixgbe_set_wol() argument
2394 if (wol->wolopts & (WAKE_PHY | WAKE_ARP | WAKE_MAGICSECURE | in ixgbe_set_wol()
2398 if (ixgbe_wol_exclusion(adapter, wol)) in ixgbe_set_wol()
2399 return wol->wolopts ? -EOPNOTSUPP : 0; in ixgbe_set_wol()
2401 adapter->wol = 0; in ixgbe_set_wol()
2403 if (wol->wolopts & WAKE_UCAST) in ixgbe_set_wol()
2404 adapter->wol |= IXGBE_WUFC_EX; in ixgbe_set_wol()
2405 if (wol->wolopts & WAKE_MCAST) in ixgbe_set_wol()
2406 adapter->wol |= IXGBE_WUFC_MC; in ixgbe_set_wol()
2407 if (wol->wolopts & WAKE_BCAST) in ixgbe_set_wol()
2408 adapter->wol |= IXGBE_WUFC_BC; in ixgbe_set_wol()
2409 if (wol->wolopts & WAKE_MAGIC) in ixgbe_set_wol()
2410 adapter->wol |= IXGBE_WUFC_MAG; in ixgbe_set_wol()
2412 device_set_wakeup_enable(&adapter->pdev->dev, adapter->wol); in ixgbe_set_wol()
2418 struct ethtool_wolinfo *wol) in ixgbe_set_wol_acpi() argument
2424 if (ixgbe_wol_exclusion(adapter, wol)) in ixgbe_set_wol_acpi()
2425 return wol->wolopts ? -EOPNOTSUPP : 0; in ixgbe_set_wol_acpi()
2434 adapter->wol = 0; in ixgbe_set_wol_acpi()
2436 if (wol->wolopts & WAKE_UCAST) in ixgbe_set_wol_acpi()
2437 adapter->wol |= IXGBE_WUFC_EX; in ixgbe_set_wol_acpi()
2438 if (wol->wolopts & WAKE_MCAST) in ixgbe_set_wol_acpi()
2439 adapter->wol |= IXGBE_WUFC_MC; in ixgbe_set_wol_acpi()
2440 if (wol->wolopts & WAKE_BCAST) in ixgbe_set_wol_acpi()
2441 adapter->wol |= IXGBE_WUFC_BC; in ixgbe_set_wol_acpi()
2444 IXGBE_WRITE_REG(hw, IXGBE_WUFC, adapter->wol); in ixgbe_set_wol_acpi()
2446 hw->wol_enabled = adapter->wol; in ixgbe_set_wol_acpi()
2447 device_set_wakeup_enable(&adapter->pdev->dev, adapter->wol); in ixgbe_set_wol_acpi()
2453 struct ethtool_wolinfo *wol) in ixgbe_set_wol_e610() argument
2455 if (wol->wolopts & (WAKE_UCAST | WAKE_MCAST | WAKE_BCAST)) in ixgbe_set_wol_e610()
2456 return ixgbe_set_wol_acpi(netdev, wol); in ixgbe_set_wol_e610()
2458 return ixgbe_set_wol(netdev, wol); in ixgbe_set_wol_e610()