wireless: implement basic ethtool support for cfg80211 devices

Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
John W. Linville
2009-09-30 14:50:17 -04:00
parent f41bb897f2
commit 4890e3bedd
4 changed files with 36 additions and 1 deletions

24
net/wireless/ethtool.c Normal file
View File

@@ -0,0 +1,24 @@
#include <linux/utsname.h>
#include <net/cfg80211.h>
#include "ethtool.h"
static void cfg80211_get_drvinfo(struct net_device *dev,
struct ethtool_drvinfo *info)
{
struct wireless_dev *wdev = dev->ieee80211_ptr;
strlcpy(info->driver, wiphy_dev(wdev->wiphy)->driver->name,
sizeof(info->driver));
strlcpy(info->version, init_utsname()->release, sizeof(info->version));
strlcpy(info->fw_version, "N/A", sizeof(info->fw_version));
strlcpy(info->bus_info, dev_name(wiphy_dev(wdev->wiphy)),
sizeof(info->bus_info));
}
const struct ethtool_ops cfg80211_ethtool_ops = {
.get_drvinfo = cfg80211_get_drvinfo,
.get_link = ethtool_op_get_link,
};