Loading net/wireless/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ obj-$(CONFIG_WEXT_SPY) += wext-spy.o obj-$(CONFIG_WEXT_PRIV) += wext-priv.o cfg80211-y += core.o sysfs.o radiotap.o util.o reg.o scan.o nl80211.o cfg80211-y += mlme.o ibss.o sme.o chan.o cfg80211-y += mlme.o ibss.o sme.o chan.o ethtool.o cfg80211-$(CONFIG_CFG80211_DEBUGFS) += debugfs.o cfg80211-$(CONFIG_CFG80211_WEXT) += wext-compat.o wext-sme.o Loading net/wireless/core.c +3 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ #include "sysfs.h" #include "debugfs.h" #include "wext-compat.h" #include "ethtool.h" /* name for sysfs, %d is appended */ #define PHY_NAME "phy" Loading Loading @@ -690,6 +691,8 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb, wdev->wext.ps = false; } #endif if (!dev->ethtool_ops) dev->ethtool_ops = &cfg80211_ethtool_ops; break; case NETDEV_GOING_DOWN: switch (wdev->iftype) { Loading net/wireless/ethtool.c 0 → 100644 +24 −0 Original line number Diff line number Diff line #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, }; net/wireless/ethtool.h 0 → 100644 +8 −0 Original line number Diff line number Diff line #ifndef __CFG80211_ETHTOOL__ #define __CFG80211_ETHTOOL__ #include <linux/ethtool.h> extern const struct ethtool_ops cfg80211_ethtool_ops; #endif /* __CFG80211_ETHTOOL__ */ Loading
net/wireless/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ obj-$(CONFIG_WEXT_SPY) += wext-spy.o obj-$(CONFIG_WEXT_PRIV) += wext-priv.o cfg80211-y += core.o sysfs.o radiotap.o util.o reg.o scan.o nl80211.o cfg80211-y += mlme.o ibss.o sme.o chan.o cfg80211-y += mlme.o ibss.o sme.o chan.o ethtool.o cfg80211-$(CONFIG_CFG80211_DEBUGFS) += debugfs.o cfg80211-$(CONFIG_CFG80211_WEXT) += wext-compat.o wext-sme.o Loading
net/wireless/core.c +3 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ #include "sysfs.h" #include "debugfs.h" #include "wext-compat.h" #include "ethtool.h" /* name for sysfs, %d is appended */ #define PHY_NAME "phy" Loading Loading @@ -690,6 +691,8 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb, wdev->wext.ps = false; } #endif if (!dev->ethtool_ops) dev->ethtool_ops = &cfg80211_ethtool_ops; break; case NETDEV_GOING_DOWN: switch (wdev->iftype) { Loading
net/wireless/ethtool.c 0 → 100644 +24 −0 Original line number Diff line number Diff line #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, };
net/wireless/ethtool.h 0 → 100644 +8 −0 Original line number Diff line number Diff line #ifndef __CFG80211_ETHTOOL__ #define __CFG80211_ETHTOOL__ #include <linux/ethtool.h> extern const struct ethtool_ops cfg80211_ethtool_ops; #endif /* __CFG80211_ETHTOOL__ */