Lines Matching refs:vht_cap
2183 const struct ieee80211_sta_vht_cap *vht_cap;
2205 vht_cap = &link_sta->vht_cap;
2206 if (!vht_cap->vht_supported)
2223 arg->peer_vht_caps = vht_cap->cap;
2225 ampdu_factor = (vht_cap->cap &
2248 vht_mcs = __le16_to_cpu(vht_cap->vht_mcs.rx_mcs_map) >>
2256 arg->rx_max_rate = __le16_to_cpu(vht_cap->vht_mcs.rx_highest);
2257 arg->rx_mcs_set = __le16_to_cpu(vht_cap->vht_mcs.rx_mcs_map);
2258 arg->tx_max_rate = __le16_to_cpu(vht_cap->vht_mcs.tx_highest);
2260 tx_mcs_map = __le16_to_cpu(vht_cap->vht_mcs.tx_mcs_map);
2380 if (link_sta->vht_cap.vht_supported)
2695 switch (link_sta->vht_cap.cap &
2825 } else if (link_sta->vht_cap.vht_supported &&
2850 } else if (link_sta->vht_cap.vht_supported &&
4912 if (link_sta->vht_cap.vht_supported && num_vht_rates == 1) {
5116 if (link_sta->vht_cap.vht_supported && num_vht_rates == 1) {
6142 u32 ar_vht_cap = ar->pdev->cap.vht_cap;
6210 u32 vht_cap = ar->pdev->cap.vht_cap;
6213 if (vht_cap & (IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE)) {
6214 nsts = vht_cap & IEEE80211_VHT_CAP_BEAMFORMEE_STS_MASK;
6219 if (vht_cap & (IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE)) {
6220 sound_dim = vht_cap &
6231 if (vht_cap & IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE) {
6234 if ((vht_cap & IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE) &&
6239 if (vht_cap & IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE) {
6242 if ((vht_cap & IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE) &&
6251 static void ath12k_set_vht_txbf_cap(struct ath12k *ar, u32 *vht_cap)
6256 subfer = !!(*vht_cap & (IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE));
6257 subfee = !!(*vht_cap & (IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE));
6260 *vht_cap &= ~(IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE);
6266 *vht_cap &= ~(IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE);
6270 *vht_cap &= ~(IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE);
6272 sound_dim = u32_get_bits(*vht_cap,
6274 *vht_cap = u32_replace_bits(*vht_cap, 0,
6284 *vht_cap = u32_replace_bits(*vht_cap, sound_dim,
6290 *vht_cap &= ~(IEEE80211_VHT_CAP_BEAMFORMEE_STS_MASK);
6297 struct ieee80211_sta_vht_cap vht_cap = {0};
6301 vht_cap.vht_supported = 1;
6302 vht_cap.cap = ar->pdev->cap.vht_cap;
6304 ath12k_set_vht_txbf_cap(ar, &vht_cap.cap);
6308 vht_cap.cap &= ~IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK;
6309 vht_cap.cap &= ~IEEE80211_VHT_CAP_SHORT_GI_160;
6326 vht_cap.cap &= ~IEEE80211_VHT_CAP_TXSTBC;
6328 vht_cap.vht_mcs.rx_mcs_map = cpu_to_le16(rxmcs_map);
6329 vht_cap.vht_mcs.tx_mcs_map = cpu_to_le16(txmcs_map);
6331 return vht_cap;
6364 band->vht_cap = ath12k_create_vht_cap(ar, rate_cap_tx_chainmask,
6492 val = u32_get_bits(pcap->vht_cap,
6496 val = u32_get_bits(pcap->vht_cap,
6500 if (pcap->vht_cap & IEEE80211_VHT_CAP_RX_ANTENNA_PATTERN)
6502 if (pcap->vht_cap & IEEE80211_VHT_CAP_TX_ANTENNA_PATTERN)
9538 u16 vht_mcs_map = le16_to_cpu(sband->vht_cap.vht_mcs.tx_mcs_map);