diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/nl80211.h | 14 | ||||
| -rw-r--r-- | include/net/cfg80211.h | 27 |
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 | */ | ||
| 1051 | enum 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 | */ |
| 1058 | struct cfg80211_assoc_request { | 1071 | struct 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 | */ |
| 1163 | struct cfg80211_connect_params { | 1183 | struct 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 | */ |
| 1942 | struct wiphy { | 1967 | struct 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; |
