summary refs log tree commit diff
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
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;
 }