]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/ixgbe/ixgbe.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6-omap-h63xx.git] / drivers / net / ixgbe / ixgbe.h
index d98113472a89ff1dcde99095a1b0e48450442b42..956914a5028d3f3d12d59b72f28d3115d7a82f10 100644 (file)
@@ -32,6 +32,7 @@
 #include <linux/types.h>
 #include <linux/pci.h>
 #include <linux/netdevice.h>
+#include <linux/inet_lro.h>
 
 #include "ixgbe_type.h"
 #include "ixgbe_common.h"
 #define IXGBE_TX_FLAGS_VLAN_MASK       0xffff0000
 #define IXGBE_TX_FLAGS_VLAN_SHIFT      16
 
+#define IXGBE_MAX_LRO_DESCRIPTORS       8
+#define IXGBE_MAX_LRO_AGGREGATE         32
+
 /* wrapper around a pointer to a socket buffer,
  * so a DMA handle can be stored along with the buffer */
 struct ixgbe_tx_buffer {
@@ -150,6 +154,8 @@ struct ixgbe_ring {
        /* cpu for tx queue */
        int cpu;
 #endif
+       struct net_lro_mgr lro_mgr;
+       bool lro_used;
        struct ixgbe_queue_stats stats;
        u8 v_idx; /* maps directly to the index for this ring in the hardware
                   * vector array, can also be used for finding the bit in EICR
@@ -287,6 +293,9 @@ struct ixgbe_adapter {
 
        unsigned long state;
        u64 tx_busy;
+       u64 lro_aggregated;
+       u64 lro_flushed;
+       u64 lro_no_desc;
 };
 
 enum ixbge_state_t {