diff options
author | Flavio Leitner <fbl@redhat.com> | 2012-12-29 11:37:33 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-12-30 05:32:09 -0500 |
commit | 7f51c58731dfb0ef88ff283851a4710cc3335788 (patch) | |
tree | 29e808107474cdd80dc91e0e44fb7bd1f6f811a9 /drivers/net/team | |
parent | 8093315a91340bca52549044975d8c7f673b28a1 (diff) |
team: add ethtool support
This patch adds few ethtool operations to team driver.
Signed-off-by: Flavio Leitner <fbl@redhat.com>
Acked-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/team')
-rw-r--r-- | drivers/net/team/team.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index 27a6edeb376f..918a901754b6 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <net/genetlink.h> | 28 | #include <net/genetlink.h> |
29 | #include <net/netlink.h> | 29 | #include <net/netlink.h> |
30 | #include <net/sch_generic.h> | 30 | #include <net/sch_generic.h> |
31 | #include <generated/utsrelease.h> | ||
31 | #include <linux/if_team.h> | 32 | #include <linux/if_team.h> |
32 | 33 | ||
33 | #define DRV_NAME "team" | 34 | #define DRV_NAME "team" |
@@ -1741,6 +1742,21 @@ static const struct net_device_ops team_netdev_ops = { | |||
1741 | .ndo_change_carrier = team_change_carrier, | 1742 | .ndo_change_carrier = team_change_carrier, |
1742 | }; | 1743 | }; |
1743 | 1744 | ||
1745 | /*********************** | ||
1746 | * ethtool interface | ||
1747 | ***********************/ | ||
1748 | |||
1749 | static void team_ethtool_get_drvinfo(struct net_device *dev, | ||
1750 | struct ethtool_drvinfo *drvinfo) | ||
1751 | { | ||
1752 | strncpy(drvinfo->driver, DRV_NAME, 32); | ||
1753 | strncpy(drvinfo->version, UTS_RELEASE, 32); | ||
1754 | } | ||
1755 | |||
1756 | static const struct ethtool_ops team_ethtool_ops = { | ||
1757 | .get_drvinfo = team_ethtool_get_drvinfo, | ||
1758 | .get_link = ethtool_op_get_link, | ||
1759 | }; | ||
1744 | 1760 | ||
1745 | /*********************** | 1761 | /*********************** |
1746 | * rt netlink interface | 1762 | * rt netlink interface |
@@ -1790,6 +1806,7 @@ static void team_setup(struct net_device *dev) | |||
1790 | ether_setup(dev); | 1806 | ether_setup(dev); |
1791 | 1807 | ||
1792 | dev->netdev_ops = &team_netdev_ops; | 1808 | dev->netdev_ops = &team_netdev_ops; |
1809 | dev->ethtool_ops = &team_ethtool_ops; | ||
1793 | dev->destructor = team_destructor; | 1810 | dev->destructor = team_destructor; |
1794 | dev->tx_queue_len = 0; | 1811 | dev->tx_queue_len = 0; |
1795 | dev->flags |= IFF_MULTICAST; | 1812 | dev->flags |= IFF_MULTICAST; |