diff options
author | Jon Mason <jdmason@us.ibm.com> | 2005-05-29 20:27:24 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-05-29 20:27:24 -0700 |
commit | 69f6a0fafcdf0bfe85af182695d6d38f80f9d549 (patch) | |
tree | ce69917e3f348de780c117bfe8a4fa9545a9c888 /net/core/ethtool.c | |
parent | 37e20a66db02eff9adbeee043af990cca85d0034 (diff) | |
download | kernel_samsung_smdk4412-69f6a0fafcdf0bfe85af182695d6d38f80f9d549.zip kernel_samsung_smdk4412-69f6a0fafcdf0bfe85af182695d6d38f80f9d549.tar.gz kernel_samsung_smdk4412-69f6a0fafcdf0bfe85af182695d6d38f80f9d549.tar.bz2 |
[NET]: Add ethtool support for NETIF_F_HW_CSUM.
Signed-off-by: Jon Mason <jdmason@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/ethtool.c')
-rw-r--r-- | net/core/ethtool.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/net/core/ethtool.c b/net/core/ethtool.c index 2a56a52..8ec4848 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c @@ -29,7 +29,7 @@ u32 ethtool_op_get_link(struct net_device *dev) u32 ethtool_op_get_tx_csum(struct net_device *dev) { - return (dev->features & NETIF_F_IP_CSUM) != 0; + return (dev->features & (NETIF_F_IP_CSUM | NETIF_F_HW_CSUM)) != 0; } int ethtool_op_set_tx_csum(struct net_device *dev, u32 data) @@ -42,6 +42,15 @@ int ethtool_op_set_tx_csum(struct net_device *dev, u32 data) return 0; } +int ethtool_op_set_tx_hw_csum(struct net_device *dev, u32 data) +{ + if (data) + dev->features |= NETIF_F_HW_CSUM; + else + dev->features &= ~NETIF_F_HW_CSUM; + + return 0; +} u32 ethtool_op_get_sg(struct net_device *dev) { return (dev->features & NETIF_F_SG) != 0; @@ -823,3 +832,4 @@ EXPORT_SYMBOL(ethtool_op_get_tx_csum); EXPORT_SYMBOL(ethtool_op_set_sg); EXPORT_SYMBOL(ethtool_op_set_tso); EXPORT_SYMBOL(ethtool_op_set_tx_csum); +EXPORT_SYMBOL(ethtool_op_set_tx_hw_csum); |