aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/net_driver.h
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2009-11-28 22:43:07 -0500
committerDavid S. Miller <davem@davemloft.net>2009-11-29 19:46:29 -0500
commit89c758fa47b54d8ce10d2b39ed09de6da0ba4324 (patch)
tree3ad41c34f54f071ea986597295623775fbd19dc9 /drivers/net/sfc/net_driver.h
parent78c1f0a06551f6ff61bfd7c1a9302115a8135a62 (diff)
sfc: Add power-management and wake-on-LAN support
Wake-on-LAN is a stub for Falcon, but will be implemented fully for new NICs. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/net_driver.h')
-rw-r--r--drivers/net/sfc/net_driver.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/sfc/net_driver.h b/drivers/net/sfc/net_driver.h
index f63a05c4e38b..a9fde82aeeae 100644
--- a/drivers/net/sfc/net_driver.h
+++ b/drivers/net/sfc/net_driver.h
@@ -861,6 +861,9 @@ static inline const char *efx_dev_name(struct efx_nic *efx)
861 * @push_irq_moderation: Apply interrupt moderation value 861 * @push_irq_moderation: Apply interrupt moderation value
862 * @push_multicast_hash: Apply multicast hash table 862 * @push_multicast_hash: Apply multicast hash table
863 * @reconfigure_port: Push loopback/power/txdis changes to the MAC and PHY 863 * @reconfigure_port: Push loopback/power/txdis changes to the MAC and PHY
864 * @get_wol: Get WoL configuration from driver state
865 * @set_wol: Push WoL configuration to the NIC
866 * @resume_wol: Synchronise WoL state between driver and MC (e.g. after resume)
864 * @default_mac_ops: efx_mac_operations to set at startup 867 * @default_mac_ops: efx_mac_operations to set at startup
865 * @revision: Hardware architecture revision 868 * @revision: Hardware architecture revision
866 * @mem_map_size: Memory BAR mapped size 869 * @mem_map_size: Memory BAR mapped size
@@ -894,6 +897,9 @@ struct efx_nic_type {
894 void (*push_irq_moderation)(struct efx_channel *channel); 897 void (*push_irq_moderation)(struct efx_channel *channel);
895 void (*push_multicast_hash)(struct efx_nic *efx); 898 void (*push_multicast_hash)(struct efx_nic *efx);
896 int (*reconfigure_port)(struct efx_nic *efx); 899 int (*reconfigure_port)(struct efx_nic *efx);
900 void (*get_wol)(struct efx_nic *efx, struct ethtool_wolinfo *wol);
901 int (*set_wol)(struct efx_nic *efx, u32 type);
902 void (*resume_wol)(struct efx_nic *efx);
897 struct efx_mac_operations *default_mac_ops; 903 struct efx_mac_operations *default_mac_ops;
898 904
899 int revision; 905 int revision;