aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/qlcnic
diff options
context:
space:
mode:
authorSucheta Chakraborty <sucheta.chakraborty@qlogic.com>2010-03-07 19:14:45 -0500
committerDavid S. Miller <davem@davemloft.net>2010-03-08 13:45:28 -0500
commit8bae5698616ac336938684ce7a7370299bd55d01 (patch)
treed46c8270bb82722129fec0eb8fb0b2537b85912e /drivers/net/qlcnic
parent7e8a9298adf7531c58d73ba9c499353e3807cf19 (diff)
qlcnic: fix tx csum status
Kernel default tx csum function (ethtool_op_get_tx_csum) doesn't show correct csum status. It takes various FLAGS (NETIF_F_ALL_CSUM) in account to show tx csum status, which driver doesn't set while disabling tx csum. Signed-off-by: Sucheta Chakraborty <sucheta.chakraborty@qlogic.com> Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/qlcnic')
-rw-r--r--drivers/net/qlcnic/qlcnic_ethtool.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/qlcnic/qlcnic_ethtool.c b/drivers/net/qlcnic/qlcnic_ethtool.c
index 8da6ec8c13b9..ef12792a88be 100644
--- a/drivers/net/qlcnic/qlcnic_ethtool.c
+++ b/drivers/net/qlcnic/qlcnic_ethtool.c
@@ -785,6 +785,11 @@ qlcnic_get_ethtool_stats(struct net_device *dev,
785 } 785 }
786} 786}
787 787
788static u32 qlcnic_get_tx_csum(struct net_device *dev)
789{
790 return dev->features & NETIF_F_IP_CSUM;
791}
792
788static u32 qlcnic_get_rx_csum(struct net_device *dev) 793static u32 qlcnic_get_rx_csum(struct net_device *dev)
789{ 794{
790 struct qlcnic_adapter *adapter = netdev_priv(dev); 795 struct qlcnic_adapter *adapter = netdev_priv(dev);
@@ -995,6 +1000,7 @@ const struct ethtool_ops qlcnic_ethtool_ops = {
995 .set_ringparam = qlcnic_set_ringparam, 1000 .set_ringparam = qlcnic_set_ringparam,
996 .get_pauseparam = qlcnic_get_pauseparam, 1001 .get_pauseparam = qlcnic_get_pauseparam,
997 .set_pauseparam = qlcnic_set_pauseparam, 1002 .set_pauseparam = qlcnic_set_pauseparam,
1003 .get_tx_csum = qlcnic_get_tx_csum,
998 .set_tx_csum = ethtool_op_set_tx_csum, 1004 .set_tx_csum = ethtool_op_set_tx_csum,
999 .set_sg = ethtool_op_set_sg, 1005 .set_sg = ethtool_op_set_sg,
1000 .get_tso = qlcnic_get_tso, 1006 .get_tso = qlcnic_get_tso,