aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/efx.h
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2009-11-23 11:07:30 -0500
committerDavid S. Miller <davem@davemloft.net>2009-11-24 13:58:59 -0500
commitf5e7adc3d4aa8edab63bb63f0ce5fe92c3dd7604 (patch)
tree9f40665c8f8f33f776b7b50d81dc8e06d3f63d6a /drivers/net/sfc/efx.h
parent497f5ba3236425dbcf20b55452a013f1d3695ebb (diff)
sfc: Combine high-level header files
All files that include ethtool.h, rx.h or tx.h are also including efx.h, and there is no good reason to separate out the few declarations they contain. Therefore fold them into efx.h. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/efx.h')
-rw-r--r--drivers/net/sfc/efx.h27
1 files changed, 25 insertions, 2 deletions
diff --git a/drivers/net/sfc/efx.h b/drivers/net/sfc/efx.h
index 9d83322e8517..3497b036f408 100644
--- a/drivers/net/sfc/efx.h
+++ b/drivers/net/sfc/efx.h
@@ -23,8 +23,15 @@
23#define EFX_MEM_BAR 2 23#define EFX_MEM_BAR 2
24 24
25/* TX */ 25/* TX */
26extern netdev_tx_t efx_enqueue_skb(struct efx_tx_queue *tx_queue, 26extern int efx_probe_tx_queue(struct efx_tx_queue *tx_queue);
27 struct sk_buff *skb); 27extern void efx_remove_tx_queue(struct efx_tx_queue *tx_queue);
28extern void efx_init_tx_queue(struct efx_tx_queue *tx_queue);
29extern void efx_fini_tx_queue(struct efx_tx_queue *tx_queue);
30extern void efx_release_tx_buffers(struct efx_tx_queue *tx_queue);
31extern netdev_tx_t
32efx_hard_start_xmit(struct sk_buff *skb, struct net_device *net_dev);
33extern netdev_tx_t
34efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb);
28extern void efx_xmit_done(struct efx_tx_queue *tx_queue, unsigned int index); 35extern void efx_xmit_done(struct efx_tx_queue *tx_queue, unsigned int index);
29extern void efx_stop_queue(struct efx_nic *efx); 36extern void efx_stop_queue(struct efx_nic *efx);
30extern void efx_wake_queue(struct efx_nic *efx); 37extern void efx_wake_queue(struct efx_nic *efx);
@@ -32,6 +39,15 @@ extern void efx_wake_queue(struct efx_nic *efx);
32#define EFX_TXQ_MASK (EFX_TXQ_SIZE - 1) 39#define EFX_TXQ_MASK (EFX_TXQ_SIZE - 1)
33 40
34/* RX */ 41/* RX */
42extern int efx_probe_rx_queue(struct efx_rx_queue *rx_queue);
43extern void efx_remove_rx_queue(struct efx_rx_queue *rx_queue);
44extern void efx_init_rx_queue(struct efx_rx_queue *rx_queue);
45extern void efx_fini_rx_queue(struct efx_rx_queue *rx_queue);
46extern void efx_rx_strategy(struct efx_channel *channel);
47extern void efx_fast_push_rx_descriptors(struct efx_rx_queue *rx_queue);
48extern void efx_rx_work(struct work_struct *data);
49extern void __efx_rx_packet(struct efx_channel *channel,
50 struct efx_rx_buffer *rx_buf, bool checksummed);
35extern void efx_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index, 51extern void efx_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index,
36 unsigned int len, bool checksummed, bool discard); 52 unsigned int len, bool checksummed, bool discard);
37extern void efx_schedule_slow_fill(struct efx_rx_queue *rx_queue, int delay); 53extern void efx_schedule_slow_fill(struct efx_rx_queue *rx_queue, int delay);
@@ -50,6 +66,13 @@ extern void efx_stats_enable(struct efx_nic *efx);
50extern void efx_reconfigure_port(struct efx_nic *efx); 66extern void efx_reconfigure_port(struct efx_nic *efx);
51extern void __efx_reconfigure_port(struct efx_nic *efx); 67extern void __efx_reconfigure_port(struct efx_nic *efx);
52 68
69/* Ethtool support */
70extern int efx_ethtool_get_settings(struct net_device *net_dev,
71 struct ethtool_cmd *ecmd);
72extern int efx_ethtool_set_settings(struct net_device *net_dev,
73 struct ethtool_cmd *ecmd);
74extern const struct ethtool_ops efx_ethtool_ops;
75
53/* Reset handling */ 76/* Reset handling */
54extern void efx_reset_down(struct efx_nic *efx, enum reset_type method, 77extern void efx_reset_down(struct efx_nic *efx, enum reset_type method,
55 struct ethtool_cmd *ecmd); 78 struct ethtool_cmd *ecmd);