Lines Matching refs:vht_cap

18 				   struct ieee80211_sta_vht_cap *vht_cap,
25 vht_cap->cap &= ~flag;
29 struct ieee80211_sta_vht_cap *vht_cap)
34 if (!vht_cap->vht_supported)
40 __check_vhtcap_disable(sdata, vht_cap,
42 __check_vhtcap_disable(sdata, vht_cap,
44 __check_vhtcap_disable(sdata, vht_cap,
46 __check_vhtcap_disable(sdata, vht_cap,
48 __check_vhtcap_disable(sdata, vht_cap,
50 __check_vhtcap_disable(sdata, vht_cap,
52 __check_vhtcap_disable(sdata, vht_cap,
54 __check_vhtcap_disable(sdata, vht_cap,
65 cap = vht_cap->cap & IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK;
69 vht_cap->cap &=
71 vht_cap->cap |=
81 rxmcs_cap = le16_to_cpu(vht_cap->vht_mcs.rx_mcs_map);
87 txmcs_cap = le16_to_cpu(vht_cap->vht_mcs.tx_mcs_map);
111 vht_cap->vht_mcs.rx_mcs_map = cpu_to_le16(rxmcs_cap);
112 vht_cap->vht_mcs.tx_mcs_map = cpu_to_le16(txmcs_cap);
121 struct ieee80211_sta_vht_cap *vht_cap = &sta->sta.vht_cap;
126 memset(vht_cap, 0, sizeof(*vht_cap));
131 if (!vht_cap_ie || !sband->vht_cap.vht_supported)
155 vht_cap->vht_supported = true;
157 own_cap = sband->vht_cap;
170 vht_cap->cap = cap_info;
171 vht_cap->cap &= IEEE80211_VHT_CAP_RXLDPC |
180 vht_cap->cap |= min_t(u32, cap_info & IEEE80211_VHT_CAP_MAX_MPDU_MASK,
186 vht_cap->cap |= cap_info &
190 vht_cap->cap |= cap_info &
199 vht_cap->cap |= cap_info & own_cap.cap &
205 vht_cap->cap |= cap_info &
210 vht_cap->cap |= cap_info &
215 vht_cap->cap |= cap_info &
219 vht_cap->cap |= cap_info &
223 vht_cap->cap |= cap_info & IEEE80211_VHT_CAP_RXSTBC_MASK;
226 vht_cap->cap |= cap_info & IEEE80211_VHT_CAP_TXSTBC;
229 memcpy(&vht_cap->vht_mcs, &vht_cap_ie->supp_mcs,
234 vht_cap->cap |= (cap_info & IEEE80211_VHT_CAP_EXT_NSS_BW_MASK);
236 vht_cap->vht_mcs.tx_highest &=
249 peer_rx = le16_to_cpu(vht_cap->vht_mcs.rx_mcs_map);
252 peer_tx = le16_to_cpu(vht_cap->vht_mcs.tx_mcs_map);
269 vht_cap->vht_mcs.rx_mcs_map &=
271 vht_cap->vht_mcs.rx_mcs_map |= cpu_to_le16(peer_rx << i * 2);
273 vht_cap->vht_mcs.tx_mcs_map &=
275 vht_cap->vht_mcs.tx_mcs_map |= cpu_to_le16(peer_tx << i * 2);
287 if (vht_cap->vht_mcs.rx_mcs_map == cpu_to_le16(0xFFFF)) {
288 vht_cap->vht_supported = false;
295 switch (vht_cap->cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK) {
303 if (!(vht_cap->vht_mcs.tx_highest &
318 switch (vht_cap->cap & IEEE80211_VHT_CAP_MAX_MPDU_MASK) {
335 struct ieee80211_sta_vht_cap *vht_cap = &sta->sta.vht_cap;
359 if (!vht_cap->vht_supported)
364 cap_width = vht_cap->cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK;
375 if (vht_cap->cap & IEEE80211_VHT_CAP_EXT_NSS_BW_MASK)
383 struct ieee80211_sta_vht_cap *vht_cap = &sta->sta.vht_cap;
386 if (!vht_cap->vht_supported) {
394 cap_width = vht_cap->cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK;
408 struct ieee80211_sta_vht_cap *vht_cap = &sta->sta.vht_cap;
423 vht_cap->cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK;
532 if (sta->sta.vht_cap.vht_supported) {
536 rx_mcs_map = le16_to_cpu(sta->sta.vht_cap.vht_mcs.rx_mcs_map);
666 void ieee80211_get_vht_mask_from_cap(__le16 vht_cap,
670 u16 mask, cap = le16_to_cpu(vht_cap);