|
@@ -37,6 +37,7 @@
|
|
|
#include <linux/types.h>
|
|
#include <linux/types.h>
|
|
|
#include <linux/mdio.h>
|
|
#include <linux/mdio.h>
|
|
|
#include <linux/pci.h>
|
|
#include <linux/pci.h>
|
|
|
|
|
+#include <linux/if_vlan.h>
|
|
|
#include "reg.h"
|
|
#include "reg.h"
|
|
|
|
|
|
|
|
/* Transmit Packet Descriptor, contains 4 32-bit words.
|
|
/* Transmit Packet Descriptor, contains 4 32-bit words.
|
|
@@ -343,12 +344,14 @@ struct alx_rrd {
|
|
|
ALX_RSS_HASH_TYPE_IPV4_TCP | \
|
|
ALX_RSS_HASH_TYPE_IPV4_TCP | \
|
|
|
ALX_RSS_HASH_TYPE_IPV6 | \
|
|
ALX_RSS_HASH_TYPE_IPV6 | \
|
|
|
ALX_RSS_HASH_TYPE_IPV6_TCP)
|
|
ALX_RSS_HASH_TYPE_IPV6_TCP)
|
|
|
-#define ALX_DEF_RXBUF_SIZE 1536
|
|
|
|
|
|
|
+#define ALX_FRAME_PAD 16
|
|
|
|
|
+#define ALX_RAW_MTU(_mtu) (_mtu + ETH_HLEN + ETH_FCS_LEN + VLAN_HLEN)
|
|
|
|
|
+#define ALX_MAX_FRAME_LEN(_mtu) (ALIGN((ALX_RAW_MTU(_mtu) + ALX_FRAME_PAD), 8))
|
|
|
|
|
+#define ALX_DEF_RXBUF_SIZE ALX_MAX_FRAME_LEN(1500)
|
|
|
#define ALX_MAX_JUMBO_PKT_SIZE (9*1024)
|
|
#define ALX_MAX_JUMBO_PKT_SIZE (9*1024)
|
|
|
#define ALX_MAX_TSO_PKT_SIZE (7*1024)
|
|
#define ALX_MAX_TSO_PKT_SIZE (7*1024)
|
|
|
#define ALX_MAX_FRAME_SIZE ALX_MAX_JUMBO_PKT_SIZE
|
|
#define ALX_MAX_FRAME_SIZE ALX_MAX_JUMBO_PKT_SIZE
|
|
|
-#define ALX_MIN_FRAME_SIZE 68
|
|
|
|
|
-#define ALX_RAW_MTU(_mtu) (_mtu + ETH_HLEN + ETH_FCS_LEN + VLAN_HLEN)
|
|
|
|
|
|
|
+#define ALX_MIN_FRAME_SIZE (ETH_ZLEN + ETH_FCS_LEN + VLAN_HLEN)
|
|
|
|
|
|
|
|
#define ALX_MAX_RX_QUEUES 8
|
|
#define ALX_MAX_RX_QUEUES 8
|
|
|
#define ALX_MAX_TX_QUEUES 4
|
|
#define ALX_MAX_TX_QUEUES 4
|