summary refs log tree commit diff
path: root/net/wireless/core.c
diff options
context:
space:
mode:
authorVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>2012-07-02 09:32:32 +0300
committerJohannes Berg <johannes.berg@intel.com>2012-07-02 15:11:10 +0200
commit3a0c52a6d82cc41da965284412608c74aece34e4 (patch)
tree4238ce4e3ed8ca7fde647491f48de7d3633a53e3 /net/wireless/core.c
parentd9b3b28b93812715dcee8e4eed8cb8d0707a45f8 (diff)
downloadlinux-3a0c52a6d82cc41da965284412608c74aece34e4.tar.gz
cfg80211: add 802.11ad (60gHz band) support
Add enumerations for both cfg80211 and nl80211.
This expands wiphy.bands etc. arrays.

Extend channel <-> frequency translation to cover 60g band
and modify the rate check logic since there are no legacy
mandatory rates (only MCS is used.)

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless/core.c')
-rw-r--r--net/wireless/core.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/net/wireless/core.c b/net/wireless/core.c
index ca2b95f24846..e13365f1fa63 100644
--- a/net/wireless/core.c
+++ b/net/wireless/core.c
@@ -468,8 +468,14 @@ int wiphy_register(struct wiphy *wiphy)
 			continue;
 
 		sband->band = band;
-
-		if (WARN_ON(!sband->n_channels || !sband->n_bitrates))
+		if (WARN_ON(!sband->n_channels))
+			return -EINVAL;
+		/*
+		 * on 60gHz band, there are no legacy rates, so
+		 * n_bitrates is 0
+		 */
+		if (WARN_ON(band != IEEE80211_BAND_60GHZ &&
+			    !sband->n_bitrates))
 			return -EINVAL;
 
 		/*