summaryrefslogtreecommitdiffstats
path: root/drivers/net/usb/aqc111.h
diff options
context:
space:
mode:
authorDmitry Bezrukov2018-11-26 10:33:21 +0100
committerDavid S. Miller2018-11-28 00:46:07 +0100
commit0203146646be831de832e7fd2dc4ef1f32958f51 (patch)
treea911fe6bd6fa9b4017de209fac7269e12189be8a /drivers/net/usb/aqc111.h
parentnet: usb: aqc111: Implement RX data path (diff)
downloadkernel-qcow2-linux-0203146646be831de832e7fd2dc4ef1f32958f51.tar.gz
kernel-qcow2-linux-0203146646be831de832e7fd2dc4ef1f32958f51.tar.xz
kernel-qcow2-linux-0203146646be831de832e7fd2dc4ef1f32958f51.zip
net: usb: aqc111: Add checksum offload support
Signed-off-by: Dmitry Bezrukov <dmitry.bezrukov@aquantia.com> Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/usb/aqc111.h')
-rw-r--r--drivers/net/usb/aqc111.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/net/usb/aqc111.h b/drivers/net/usb/aqc111.h
index c5785f890022..ff43443bfd72 100644
--- a/drivers/net/usb/aqc111.h
+++ b/drivers/net/usb/aqc111.h
@@ -21,8 +21,11 @@
#define AQ_USB_SET_TIMEOUT 4000
/* Feature. ********************************************/
-#define AQ_SUPPORT_FEATURE (NETIF_F_SG)
-#define AQ_SUPPORT_HW_FEATURE (NETIF_F_SG)
+#define AQ_SUPPORT_FEATURE (NETIF_F_SG | NETIF_F_IP_CSUM |\
+ NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM)
+
+#define AQ_SUPPORT_HW_FEATURE (NETIF_F_SG | NETIF_F_IP_CSUM |\
+ NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM)
/* SFR Reg. ********************************************/
@@ -162,6 +165,15 @@ struct aqc111_data {
#define AQ_RX_HW_PAD 0x02
/* RX Packet Descriptor */
+#define AQ_RX_PD_L4_ERR BIT(0)
+#define AQ_RX_PD_L3_ERR BIT(1)
+#define AQ_RX_PD_L4_TYPE_MASK 0x1C
+#define AQ_RX_PD_L4_UDP 0x04
+#define AQ_RX_PD_L4_TCP 0x10
+#define AQ_RX_PD_L3_TYPE_MASK 0x60
+#define AQ_RX_PD_L3_IP 0x20
+#define AQ_RX_PD_L3_IP6 0x40
+
#define AQ_RX_PD_RX_OK BIT(11)
#define AQ_RX_PD_DROP BIT(31)
#define AQ_RX_PD_LEN_MASK 0x7FFF0000