aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/nl80211.h14
-rw-r--r--include/net/cfg80211.h27
2 files changed, 41 insertions, 0 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h
index 6396819a7e41..97bfebfcce90 100644
--- a/include/linux/nl80211.h
+++ b/include/linux/nl80211.h
@@ -1169,6 +1169,17 @@ enum nl80211_commands {
1169 * @NL80211_ATTR_PROBE_RESP: Probe Response template data. Contains the entire 1169 * @NL80211_ATTR_PROBE_RESP: Probe Response template data. Contains the entire
1170 * probe-response frame. The DA field in the 802.11 header is zero-ed out, 1170 * probe-response frame. The DA field in the 802.11 header is zero-ed out,
1171 * to be filled by the FW. 1171 * to be filled by the FW.
1172 * @NL80211_ATTR_DISABLE_HT: Force HT capable interfaces to disable
1173 * this feature. Currently, only supported in mac80211 drivers.
1174 * @NL80211_ATTR_HT_CAPABILITY_MASK: Specify which bits of the
1175 * ATTR_HT_CAPABILITY to which attention should be paid.
1176 * Currently, only mac80211 NICs support this feature.
1177 * The values that may be configured are:
1178 * MCS rates, MAX-AMSDU, HT-20-40 and HT_CAP_SGI_40
1179 * AMPDU density and AMPDU factor.
1180 * All values are treated as suggestions and may be ignored
1181 * by the driver as required. The actual values may be seen in
1182 * the station debugfs ht_caps file.
1172 * 1183 *
1173 * @NL80211_ATTR_DFS_REGION: region for regulatory rules which this country 1184 * @NL80211_ATTR_DFS_REGION: region for regulatory rules which this country
1174 * abides to when initiating radiation on DFS channels. A country maps 1185 * abides to when initiating radiation on DFS channels. A country maps
@@ -1414,6 +1425,9 @@ enum nl80211_attrs {
1414 1425
1415 NL80211_ATTR_DFS_REGION, 1426 NL80211_ATTR_DFS_REGION,
1416 1427
1428 NL80211_ATTR_DISABLE_HT,
1429 NL80211_ATTR_HT_CAPABILITY_MASK,
1430
1417 /* add attributes here, update the policy in nl80211.c */ 1431 /* add attributes here, update the policy in nl80211.c */
1418 1432
1419 __NL80211_ATTR_AFTER_LAST, 1433 __NL80211_ATTR_AFTER_LAST,
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 6a1d849c597a..d5e18913f293 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1044,6 +1044,15 @@ struct cfg80211_auth_request {
1044}; 1044};
1045 1045
1046/** 1046/**
1047 * enum cfg80211_assoc_req_flags - Over-ride default behaviour in association.
1048 *
1049 * @ASSOC_REQ_DISABLE_HT: Disable HT (802.11n)
1050 */
1051enum cfg80211_assoc_req_flags {
1052 ASSOC_REQ_DISABLE_HT = BIT(0),
1053};
1054
1055/**
1047 * struct cfg80211_assoc_request - (Re)Association request data 1056 * struct cfg80211_assoc_request - (Re)Association request data
1048 * 1057 *
1049 * This structure provides information needed to complete IEEE 802.11 1058 * This structure provides information needed to complete IEEE 802.11
@@ -1054,6 +1063,10 @@ struct cfg80211_auth_request {
1054 * @use_mfp: Use management frame protection (IEEE 802.11w) in this association 1063 * @use_mfp: Use management frame protection (IEEE 802.11w) in this association
1055 * @crypto: crypto settings 1064 * @crypto: crypto settings
1056 * @prev_bssid: previous BSSID, if not %NULL use reassociate frame 1065 * @prev_bssid: previous BSSID, if not %NULL use reassociate frame
1066 * @flags: See &enum cfg80211_assoc_req_flags
1067 * @ht_capa: HT Capabilities over-rides. Values set in ht_capa_mask
1068 * will be used in ht_capa. Un-supported values will be ignored.
1069 * @ht_capa_mask: The bits of ht_capa which are to be used.
1057 */ 1070 */
1058struct cfg80211_assoc_request { 1071struct cfg80211_assoc_request {
1059 struct cfg80211_bss *bss; 1072 struct cfg80211_bss *bss;
@@ -1061,6 +1074,9 @@ struct cfg80211_assoc_request {
1061 size_t ie_len; 1074 size_t ie_len;
1062 struct cfg80211_crypto_settings crypto; 1075 struct cfg80211_crypto_settings crypto;
1063 bool use_mfp; 1076 bool use_mfp;
1077 u32 flags;
1078 struct ieee80211_ht_cap ht_capa;
1079 struct ieee80211_ht_cap ht_capa_mask;
1064}; 1080};
1065 1081
1066/** 1082/**
@@ -1159,6 +1175,10 @@ struct cfg80211_ibss_params {
1159 * @key_len: length of WEP key for shared key authentication 1175 * @key_len: length of WEP key for shared key authentication
1160 * @key_idx: index of WEP key for shared key authentication 1176 * @key_idx: index of WEP key for shared key authentication
1161 * @key: WEP key for shared key authentication 1177 * @key: WEP key for shared key authentication
1178 * @flags: See &enum cfg80211_assoc_req_flags
1179 * @ht_capa: HT Capabilities over-rides. Values set in ht_capa_mask
1180 * will be used in ht_capa. Un-supported values will be ignored.
1181 * @ht_capa_mask: The bits of ht_capa which are to be used.
1162 */ 1182 */
1163struct cfg80211_connect_params { 1183struct cfg80211_connect_params {
1164 struct ieee80211_channel *channel; 1184 struct ieee80211_channel *channel;
@@ -1172,6 +1192,9 @@ struct cfg80211_connect_params {
1172 struct cfg80211_crypto_settings crypto; 1192 struct cfg80211_crypto_settings crypto;
1173 const u8 *key; 1193 const u8 *key;
1174 u8 key_len, key_idx; 1194 u8 key_len, key_idx;
1195 u32 flags;
1196 struct ieee80211_ht_cap ht_capa;
1197 struct ieee80211_ht_cap ht_capa_mask;
1175}; 1198};
1176 1199
1177/** 1200/**
@@ -1938,6 +1961,8 @@ struct wiphy_wowlan_support {
1938 * @wowlan: WoWLAN support information 1961 * @wowlan: WoWLAN support information
1939 * 1962 *
1940 * @ap_sme_capa: AP SME capabilities, flags from &enum nl80211_ap_sme_features. 1963 * @ap_sme_capa: AP SME capabilities, flags from &enum nl80211_ap_sme_features.
1964 * @ht_capa_mod_mask: Specify what ht_cap values can be over-ridden.
1965 * If null, then none can be over-ridden.
1941 */ 1966 */
1942struct wiphy { 1967struct wiphy {
1943 /* assign these fields before you register the wiphy */ 1968 /* assign these fields before you register the wiphy */
@@ -2027,6 +2052,8 @@ struct wiphy {
2027 /* dir in debugfs: ieee80211/<wiphyname> */ 2052 /* dir in debugfs: ieee80211/<wiphyname> */
2028 struct dentry *debugfsdir; 2053 struct dentry *debugfsdir;
2029 2054
2055 const struct ieee80211_ht_cap *ht_capa_mod_mask;
2056
2030#ifdef CONFIG_NET_NS 2057#ifdef CONFIG_NET_NS
2031 /* the network namespace this phy lives in currently */ 2058 /* the network namespace this phy lives in currently */
2032 struct net *_net; 2059 struct net *_net;