summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/wil6210/netdev.c
diff options
context:
space:
mode:
authorKirshenbaum Erez <erezk@wilocity.com>2013-07-21 11:34:37 +0300
committerJohn W. Linville <linville@tuxdriver.com>2013-07-22 16:54:44 -0400
commit504937d4933fc8f5248b3af63b350ca52fc3b2f7 (patch)
tree3aedfad7c9b9bdb43ce79a7d46eca7992d0961b2 /drivers/net/wireless/ath/wil6210/netdev.c
parentc2a146f61014543fc4b52acaddcaa31b9f17453d (diff)
downloadlinux-504937d4933fc8f5248b3af63b350ca52fc3b2f7.tar.gz
linux-504937d4933fc8f5248b3af63b350ca52fc3b2f7.tar.bz2
linux-504937d4933fc8f5248b3af63b350ca52fc3b2f7.zip
wil6210: Enable TCP/UDP checksum HW offload
Add support for TCP and UDP HW checksum offloading. RX chain is allways configured for offload mode. In case of checksum error in RX path the DMA L4 error bit(5) will be set to 1 and driver will drop the packet. TX checksum offloading is configrable (ethtool -K). TX descriptors are configured for checksum offload according to the SKB protocol type (TCP/UDP, IPV4/6), Upon mismatch drop the TX packet (checksum required but not TCP/UDP IPV4/6 type). Signed-off-by: Kirshenbaum Erez <erezk@wilocity.com> Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/netdev.c')
-rw-r--r--drivers/net/wireless/ath/wil6210/netdev.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wil6210/netdev.c b/drivers/net/wireless/ath/wil6210/netdev.c
index 29dd1e58cb17..717178f09aa8 100644
--- a/drivers/net/wireless/ath/wil6210/netdev.c
+++ b/drivers/net/wireless/ath/wil6210/netdev.c
@@ -127,6 +127,8 @@ void *wil_if_alloc(struct device *dev, void __iomem *csr)
ndev->netdev_ops = &wil_netdev_ops;
ndev->ieee80211_ptr = wdev;
+ ndev->hw_features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM;
+ ndev->features |= NETIF_F_HW_CSUM | NETIF_F_RXCSUM;
SET_NETDEV_DEV(ndev, wiphy_dev(wdev->wiphy));
wdev->netdev = ndev;