diff options
Diffstat (limited to 'package/mac80211/patches/530-cfg80211_get_freq.patch')
-rw-r--r-- | package/mac80211/patches/530-cfg80211_get_freq.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/package/mac80211/patches/530-cfg80211_get_freq.patch b/package/mac80211/patches/530-cfg80211_get_freq.patch new file mode 100644 index 000000000..a2fb29ee2 --- /dev/null +++ b/package/mac80211/patches/530-cfg80211_get_freq.patch @@ -0,0 +1,34 @@ +--- a/net/wireless/core.h ++++ b/net/wireless/core.h +@@ -76,6 +76,7 @@ struct cfg80211_registered_device { + + /* current channel */ + struct ieee80211_channel *channel; ++ enum nl80211_channel_type channel_type; + + /* must be last because of the way we do wiphy_priv(), + * and it should at least be aligned to NETDEV_ALIGN */ +--- a/net/wireless/chan.c ++++ b/net/wireless/chan.c +@@ -97,6 +97,7 @@ int rdev_set_freq(struct cfg80211_regist + return result; + + rdev->channel = chan; ++ rdev->channel_type = channel_type; + + return 0; + } +--- a/net/wireless/nl80211.c ++++ b/net/wireless/nl80211.c +@@ -881,6 +881,11 @@ static int nl80211_send_iface(struct sk_ + NLA_PUT_U32(msg, NL80211_ATTR_WIPHY, rdev->wiphy_idx); + NLA_PUT_STRING(msg, NL80211_ATTR_IFNAME, dev->name); + NLA_PUT_U32(msg, NL80211_ATTR_IFTYPE, dev->ieee80211_ptr->iftype); ++ if (rdev->channel) { ++ NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_FREQ, rdev->channel->center_freq); ++ NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE, rdev->channel_type); ++ } ++ + + NLA_PUT_U32(msg, NL80211_ATTR_GENERATION, + rdev->devlist_generation ^ |