aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/igb/igb.h
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@intel.com>2008-07-08 18:12:13 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-07-11 01:20:32 -0400
commitd3352520273426e4c16e91d189aa8aa7ee5e96c5 (patch)
tree963c396cdc698b853acfe100080efbe41719013e /drivers/net/igb/igb.h
parentbf36c1a0040cc6ccd63cdd1cec25d2085f2df964 (diff)
igb: add support for in kernel LRO
This patch adds support for the use of the inet_lro module to provide software LRO support. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/net/igb/igb.h')
-rw-r--r--drivers/net/igb/igb.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/igb/igb.h b/drivers/net/igb/igb.h
index f41b9996d2ed..c25ca17d3228 100644
--- a/drivers/net/igb/igb.h
+++ b/drivers/net/igb/igb.h
@@ -36,6 +36,12 @@
36 36
37struct igb_adapter; 37struct igb_adapter;
38 38
39#ifdef CONFIG_IGB_LRO
40#include <linux/inet_lro.h>
41#define MAX_LRO_AGGR 32
42#define MAX_LRO_DESCRIPTORS 8
43#endif
44
39/* Interrupt defines */ 45/* Interrupt defines */
40#define IGB_MAX_TX_CLEAN 72 46#define IGB_MAX_TX_CLEAN 72
41 47
@@ -167,6 +173,10 @@ struct igb_ring {
167 int no_itr_adjust; 173 int no_itr_adjust;
168 struct igb_queue_stats rx_stats; 174 struct igb_queue_stats rx_stats;
169 struct napi_struct napi; 175 struct napi_struct napi;
176#ifdef CONFIG_IGB_LRO
177 struct net_lro_mgr lro_mgr;
178 bool lro_used;
179#endif
170 }; 180 };
171 }; 181 };
172 182
@@ -278,6 +288,12 @@ struct igb_adapter {
278#ifdef CONFIG_NETDEVICES_MULTIQUEUE 288#ifdef CONFIG_NETDEVICES_MULTIQUEUE
279 struct igb_ring *multi_tx_table[IGB_MAX_TX_QUEUES]; 289 struct igb_ring *multi_tx_table[IGB_MAX_TX_QUEUES];
280#endif /* CONFIG_NETDEVICES_MULTIQUEUE */ 290#endif /* CONFIG_NETDEVICES_MULTIQUEUE */
291#ifdef CONFIG_IGB_LRO
292 unsigned int lro_max_aggr;
293 unsigned int lro_aggregated;
294 unsigned int lro_flushed;
295 unsigned int lro_no_desc;
296#endif
281}; 297};
282 298
283#define IGB_FLAG_HAS_MSI (1 << 0) 299#define IGB_FLAG_HAS_MSI (1 << 0)