aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorZachary Amsden <zach@vmware.com>2006-06-04 05:51:38 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-05 15:29:16 -0400
commit0674d594ad8e0856243536c0bcc22e4583554bfb (patch)
tree7afc405ad72ccf9567d99250f6d86cc3887a3481 /drivers/net
parent78b86e579f11e7d7bd45acd90b6a87cd4b7c5a54 (diff)
[PATCH] Implement get / set tso for forcedeth driver
From: Zachary Amsden <zach@vmware.com> Signed-off-by: Zachary Amsden <zach@vmware.com> Cc: Ayaz Abdulla <aabdulla@nvidia.com> Cc: Manfred Spraul <manfred@colorfullife.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/forcedeth.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/forcedeth.c b/drivers/net/forcedeth.c
index 705e1229d89d..feb5b223cd60 100644
--- a/drivers/net/forcedeth.c
+++ b/drivers/net/forcedeth.c
@@ -2615,6 +2615,18 @@ static int nv_nway_reset(struct net_device *dev)
2615 return ret; 2615 return ret;
2616} 2616}
2617 2617
2618#ifdef NETIF_F_TSO
2619static int nv_set_tso(struct net_device *dev, u32 value)
2620{
2621 struct fe_priv *np = netdev_priv(dev);
2622
2623 if ((np->driver_data & DEV_HAS_CHECKSUM))
2624 return ethtool_op_set_tso(dev, value);
2625 else
2626 return value ? -EOPNOTSUPP : 0;
2627}
2628#endif
2629
2618static struct ethtool_ops ops = { 2630static struct ethtool_ops ops = {
2619 .get_drvinfo = nv_get_drvinfo, 2631 .get_drvinfo = nv_get_drvinfo,
2620 .get_link = ethtool_op_get_link, 2632 .get_link = ethtool_op_get_link,
@@ -2626,6 +2638,10 @@ static struct ethtool_ops ops = {
2626 .get_regs = nv_get_regs, 2638 .get_regs = nv_get_regs,
2627 .nway_reset = nv_nway_reset, 2639 .nway_reset = nv_nway_reset,
2628 .get_perm_addr = ethtool_op_get_perm_addr, 2640 .get_perm_addr = ethtool_op_get_perm_addr,
2641#ifdef NETIF_F_TSO
2642 .get_tso = ethtool_op_get_tso,
2643 .set_tso = nv_set_tso
2644#endif
2629}; 2645};
2630 2646
2631static void nv_vlan_rx_register(struct net_device *dev, struct vlan_group *grp) 2647static void nv_vlan_rx_register(struct net_device *dev, struct vlan_group *grp)