mac80211: support VHT association
authorJohannes Berg <johannes.berg@intel.com>
Thu, 22 Nov 2012 13:11:39 +0000 (14:11 +0100)
committerChristian Lamparter <chunkeey@googlemail.com>
Sat, 15 Dec 2012 21:42:30 +0000 (22:42 +0100)
Determine the VHT channel from the AP's VHT operation IE
(if present) and configure the hardware to that channel
if it is supported. If channel contexts cause a channel
to not be usable, try a smaller bandwidth.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
include/linux/ieee80211.h

index 4764254b88a7ed0595bea59a0978c82e91755b9b..fa85ff3f998a0964eb2b559ca7f0200965207e53 100644 (file)
@@ -1242,6 +1242,21 @@ struct ieee80211_vht_cap {
        struct ieee80211_vht_mcs_info supp_mcs;
 } __packed;
 
+/**
+ * enum ieee80211_vht_chanwidth - VHT channel width
+ * @IEEE80211_VHT_CHANWIDTH_USE_HT: use the HT operation IE to
+ *     determine the channel width (20 or 40 MHz)
+ * @IEEE80211_VHT_CHANWIDTH_80MHZ: 80 MHz bandwidth
+ * @IEEE80211_VHT_CHANWIDTH_160MHZ: 160 MHz bandwidth
+ * @IEEE80211_VHT_CHANWIDTH_80P80MHZ: 80+80 MHz bandwidth
+ */
+enum ieee80211_vht_chanwidth {
+       IEEE80211_VHT_CHANWIDTH_USE_HT          = 0,
+       IEEE80211_VHT_CHANWIDTH_80MHZ           = 1,
+       IEEE80211_VHT_CHANWIDTH_160MHZ          = 2,
+       IEEE80211_VHT_CHANWIDTH_80P80MHZ        = 3,
+};
+
 /**
  * struct ieee80211_vht_operation - VHT operation IE
  *