summaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorSeth Forshee <seth.forshee@canonical.com>2012-08-01 15:58:42 -0500
committerJohannes Berg <johannes.berg@intel.com>2012-08-02 15:30:49 +0200
commit03f6b0843ad6512f27bc2e48f04c21065311e03e (patch)
tree607cffb37a59419093cc3bfe6b08bc83365e822d /net/wireless
parentdd4c9260e7f23f2e951cbfb2726e468c6d30306c (diff)
downloadlinux-03f6b0843ad6512f27bc2e48f04c21065311e03e.tar.gz
linux-03f6b0843ad6512f27bc2e48f04c21065311e03e.tar.bz2
linux-03f6b0843ad6512f27bc2e48f04c21065311e03e.zip
cfg80211: add channel flag to prohibit OFDM operation
Currently the only way for wireless drivers to tell whether or not OFDM is allowed on the current channel is to check the regulatory information. However, this requires hodling cfg80211_mutex, which is not visible to the drivers. Other regulatory restrictions are provided as flags in the channel definition, so let's do similarly with OFDM. This patch adds a new flag, IEEE80211_CHAN_NO_OFDM, to tell drivers that OFDM on a channel is not allowed. This flag is set on any channels for which regulatory indicates that OFDM is prohibited. Signed-off-by: Seth Forshee <seth.forshee@canonical.com> Tested-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/reg.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index a9175fedeb59..cbf30de79c69 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -680,6 +680,8 @@ static u32 map_regdom_flags(u32 rd_flags)
channel_flags |= IEEE80211_CHAN_NO_IBSS;
if (rd_flags & NL80211_RRF_DFS)
channel_flags |= IEEE80211_CHAN_RADAR;
+ if (rd_flags & NL80211_RRF_NO_OFDM)
+ channel_flags |= IEEE80211_CHAN_NO_OFDM;
return channel_flags;
}