aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/main.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-02-21 11:40:19 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-03-06 10:35:48 -0500
commitdd5ecfeac8d1a96d0aba6bbcaec431756f8d8854 (patch)
tree0cb22d0f1cff85e89f280325cb250e8ac2211ceb /net/mac80211/main.c
parentee2aca343c9aa64d277a75a5df043299dc84cfd9 (diff)
mac80211: support VHT capability overrides
Support the cfg80211 API to override VHT capabilities on association. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r--net/mac80211/main.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c
index 1a8591b77a13..78554724f815 100644
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -501,6 +501,27 @@ static const struct ieee80211_ht_cap mac80211_ht_capa_mod_mask = {
501 }, 501 },
502}; 502};
503 503
504static const struct ieee80211_vht_cap mac80211_vht_capa_mod_mask = {
505 .vht_cap_info =
506 cpu_to_le32(IEEE80211_VHT_CAP_RXLDPC |
507 IEEE80211_VHT_CAP_SHORT_GI_80 |
508 IEEE80211_VHT_CAP_SHORT_GI_160 |
509 IEEE80211_VHT_CAP_RXSTBC_1 |
510 IEEE80211_VHT_CAP_RXSTBC_2 |
511 IEEE80211_VHT_CAP_RXSTBC_3 |
512 IEEE80211_VHT_CAP_RXSTBC_4 |
513 IEEE80211_VHT_CAP_TXSTBC |
514 IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE |
515 IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE |
516 IEEE80211_VHT_CAP_TX_ANTENNA_PATTERN |
517 IEEE80211_VHT_CAP_RX_ANTENNA_PATTERN |
518 IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK),
519 .supp_mcs = {
520 .rx_mcs_map = cpu_to_le16(~0),
521 .tx_mcs_map = cpu_to_le16(~0),
522 },
523};
524
504static const u8 extended_capabilities[] = { 525static const u8 extended_capabilities[] = {
505 0, 0, 0, 0, 0, 0, 0, 526 0, 0, 0, 0, 0, 0, 0,
506 WLAN_EXT_CAPA8_OPMODE_NOTIF, 527 WLAN_EXT_CAPA8_OPMODE_NOTIF,
@@ -609,6 +630,7 @@ struct ieee80211_hw *ieee80211_alloc_hw(size_t priv_data_len,
609 IEEE80211_RADIOTAP_VHT_KNOWN_BANDWIDTH; 630 IEEE80211_RADIOTAP_VHT_KNOWN_BANDWIDTH;
610 local->user_power_level = IEEE80211_UNSET_POWER_LEVEL; 631 local->user_power_level = IEEE80211_UNSET_POWER_LEVEL;
611 wiphy->ht_capa_mod_mask = &mac80211_ht_capa_mod_mask; 632 wiphy->ht_capa_mod_mask = &mac80211_ht_capa_mod_mask;
633 wiphy->vht_capa_mod_mask = &mac80211_vht_capa_mod_mask;
612 634
613 INIT_LIST_HEAD(&local->interfaces); 635 INIT_LIST_HEAD(&local->interfaces);
614 636