diff options
author | Johannes Berg <johannes.berg@intel.com> | 2013-02-21 11:40:19 -0500 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-03-06 10:35:48 -0500 |
commit | dd5ecfeac8d1a96d0aba6bbcaec431756f8d8854 (patch) | |
tree | 0cb22d0f1cff85e89f280325cb250e8ac2211ceb /net/mac80211/main.c | |
parent | ee2aca343c9aa64d277a75a5df043299dc84cfd9 (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.c | 22 |
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 | ||
504 | static 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 | |||
504 | static const u8 extended_capabilities[] = { | 525 | static 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 | ||