diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2010-08-17 05:31:15 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-08-17 05:31:15 -0400 |
commit | 01414802054c382072b6cb9a1bdc6e243c74b2d5 (patch) | |
tree | f09b05eb9fff16a69d83ec28653992d1bae8d74c /drivers/ieee1394/eth1394.c | |
parent | bb8a10bbd10a45db0eb45bac520489bdbc0917ef (diff) |
ethtool: Provide a default implementation of ethtool_ops::get_drvinfo
The driver name and bus address for a net_device can normally be found
through the driver model now. Instead of requiring drivers to provide
this information redundantly through the ethtool_ops::get_drvinfo
operation, use the driver model to do so if the driver does not define
the operation. Since ETHTOOL_GDRVINFO no longer requires the driver
to implement any operations, do not require net_device::ethtool_ops to
be set either.
Remove implementations of get_drvinfo and ethtool_ops that provide
only this information.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/ieee1394/eth1394.c')
-rw-r--r-- | drivers/ieee1394/eth1394.c | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/drivers/ieee1394/eth1394.c b/drivers/ieee1394/eth1394.c index bc289e367e30..63403822330e 100644 --- a/drivers/ieee1394/eth1394.c +++ b/drivers/ieee1394/eth1394.c | |||
@@ -58,7 +58,6 @@ | |||
58 | #include <linux/tcp.h> | 58 | #include <linux/tcp.h> |
59 | #include <linux/skbuff.h> | 59 | #include <linux/skbuff.h> |
60 | #include <linux/bitops.h> | 60 | #include <linux/bitops.h> |
61 | #include <linux/ethtool.h> | ||
62 | #include <asm/uaccess.h> | 61 | #include <asm/uaccess.h> |
63 | #include <asm/delay.h> | 62 | #include <asm/delay.h> |
64 | #include <asm/unaligned.h> | 63 | #include <asm/unaligned.h> |
@@ -173,8 +172,6 @@ static netdev_tx_t ether1394_tx(struct sk_buff *skb, | |||
173 | struct net_device *dev); | 172 | struct net_device *dev); |
174 | static void ether1394_iso(struct hpsb_iso *iso); | 173 | static void ether1394_iso(struct hpsb_iso *iso); |
175 | 174 | ||
176 | static const struct ethtool_ops ethtool_ops; | ||
177 | |||
178 | static int ether1394_write(struct hpsb_host *host, int srcid, int destid, | 175 | static int ether1394_write(struct hpsb_host *host, int srcid, int destid, |
179 | quadlet_t *data, u64 addr, size_t len, u16 flags); | 176 | quadlet_t *data, u64 addr, size_t len, u16 flags); |
180 | static void ether1394_add_host(struct hpsb_host *host); | 177 | static void ether1394_add_host(struct hpsb_host *host); |
@@ -525,8 +522,6 @@ static void ether1394_init_dev(struct net_device *dev) | |||
525 | dev->header_ops = ðer1394_header_ops; | 522 | dev->header_ops = ðer1394_header_ops; |
526 | dev->netdev_ops = ðer1394_netdev_ops; | 523 | dev->netdev_ops = ðer1394_netdev_ops; |
527 | 524 | ||
528 | SET_ETHTOOL_OPS(dev, ðtool_ops); | ||
529 | |||
530 | dev->watchdog_timeo = ETHER1394_TIMEOUT; | 525 | dev->watchdog_timeo = ETHER1394_TIMEOUT; |
531 | dev->flags = IFF_BROADCAST | IFF_MULTICAST; | 526 | dev->flags = IFF_BROADCAST | IFF_MULTICAST; |
532 | dev->features = NETIF_F_HIGHDMA; | 527 | dev->features = NETIF_F_HIGHDMA; |
@@ -1695,17 +1690,6 @@ fail: | |||
1695 | return NETDEV_TX_OK; | 1690 | return NETDEV_TX_OK; |
1696 | } | 1691 | } |
1697 | 1692 | ||
1698 | static void ether1394_get_drvinfo(struct net_device *dev, | ||
1699 | struct ethtool_drvinfo *info) | ||
1700 | { | ||
1701 | strcpy(info->driver, driver_name); | ||
1702 | strcpy(info->bus_info, "ieee1394"); /* FIXME provide more detail? */ | ||
1703 | } | ||
1704 | |||
1705 | static const struct ethtool_ops ethtool_ops = { | ||
1706 | .get_drvinfo = ether1394_get_drvinfo | ||
1707 | }; | ||
1708 | |||
1709 | static int __init ether1394_init_module(void) | 1693 | static int __init ether1394_init_module(void) |
1710 | { | 1694 | { |
1711 | int err; | 1695 | int err; |