Lines Matching refs:nss

438 	int nss;
440 for (nss = IEEE80211_HT_MCS_MASK_LEN - 1; nss >= 0; nss--)
441 if (ht_mcs_mask[nss])
442 return nss + 1;
450 int nss;
452 for (nss = NL80211_VHT_NSS_MAX - 1; nss >= 0; nss--)
453 if (vht_mcs_mask[nss])
454 return nss + 1;
462 int nss;
464 for (nss = NL80211_HE_NSS_MAX - 1; nss >= 0; nss--)
465 if (he_mcs_mask[nss])
466 return nss + 1;
1043 u16 nss;
1081 nss = get_num_chains(ar->cfg_tx_chainmask) ? : 1;
1083 WMI_VDEV_PARAM_NSS, nss);
1085 ath11k_warn(ar->ab, "failed to set vdev %d chainmask 0x%x, nss %d :%d\n",
1086 ar->monitor_vdev_id, ar->cfg_tx_chainmask, nss, ret);
1843 int nss;
1845 for (nss = 0; nss < IEEE80211_HT_MCS_MASK_LEN; nss++)
1846 if (ht_mcs_mask[nss])
1855 int nss;
1857 for (nss = 0; nss < NL80211_VHT_NSS_MAX; nss++)
1858 if (vht_mcs_mask[nss])
1967 ath11k_dbg(ar->ab, ATH11K_DBG_MAC, "ht peer %pM mcs cnt %d nss %d\n",
1973 static int ath11k_mac_get_max_vht_mcs_map(u16 mcs_map, int nss)
1975 switch ((mcs_map >> (2 * nss)) & 0x3) {
1988 int nss;
1992 for (nss = 0; nss < NL80211_VHT_NSS_MAX; nss++) {
1993 mcs_map = ath11k_mac_get_max_vht_mcs_map(tx_mcs_set, nss) &
1994 vht_mcs_limit[nss];
2026 tx_mcs_set &= ~(0x3 << (nss * 2));
2027 tx_mcs_set |= mcs << (nss * 2);
2053 ath11k_warn(ar->ab, "invalid nss ratio received from firmware: %d\n",
2131 ath11k_dbg(ar->ab, ATH11K_DBG_MAC, "setting vht range mcs value to peer supported nss %d for peer %pM\n",
2193 static int ath11k_mac_get_max_he_mcs_map(u16 mcs_map, int nss)
2195 switch ((mcs_map >> (2 * nss)) & 0x3) {
2207 int nss;
2211 for (nss = 0; nss < NL80211_HE_NSS_MAX; nss++) {
2212 mcs_map = ath11k_mac_get_max_he_mcs_map(tx_mcs_set, nss) &
2213 he_mcs_limit[nss];
2240 tx_mcs_set &= ~(0x3 << (nss * 2));
2241 tx_mcs_set |= mcs << (nss * 2);
2250 int nss;
2252 for (nss = 0; nss < NL80211_HE_NSS_MAX; nss++)
2253 if (he_mcs_mask[nss])
2367 int nss, ru;
2376 for (nss = 0; nss <= arg->peer_ppet.numss_m1; nss++) {
2389 arg->peer_ppet.ppet16_ppet8_ru3_ru0[nss] |=
2413 ath11k_dbg(ar->ab, ATH11K_DBG_MAC, "setting he range mcs value to peer supported nss %d for peer %pM\n",
2466 * to find nss.
2494 "he peer %pM nss %d mcs cnt %d nss_override 0x%x\n",
4392 u8 vht_rate, nss;
4398 nss = 0;
4402 nss = i + 1;
4407 if (!nss) {
4413 /* Avoid updating invalid nss as fixed rate*/
4414 if (nss > sta->deflink.rx_nss)
4421 rate_code = ATH11K_HW_RATE_CODE(vht_rate, nss - 1,
4442 u8 he_rate, nss;
4448 nss = 0;
4452 nss = i + 1;
4457 if (!nss) {
4463 /* Avoid updating invalid nss as fixed rate */
4464 if (nss > sta->deflink.rx_nss)
4471 rate_code = ATH11K_HW_RATE_CODE(he_rate, nss - 1,
4493 u8 ht_rate, nss = 0;
4501 nss = i + 1;
4506 if (!nss) {
4512 /* Avoid updating invalid nss as fixed rate*/
4513 if (nss > sta->deflink.rx_nss)
4520 rate_code = ATH11K_HW_RATE_CODE(ht_rate, nss - 1,
4667 u32 changed, bw, nss, smps, bw_prev;
4693 nss = arsta->nss;
4700 nss = max_t(u32, 1, nss);
4701 nss = min(nss, max(max(ath11k_mac_max_ht_nss(ht_mcs_mask),
4761 ath11k_dbg(ar->ab, ATH11K_DBG_MAC, "update sta %pM nss %d\n",
4762 sta->addr, nss);
4765 WMI_PEER_NSS, nss);
4767 ath11k_warn(ar->ab, "failed to update STA %pM nss %d: %d\n",
4768 sta->addr, nss, err);
5230 "sta rc update for %pM changed %08x bw %d nss %d smps %d\n",
5244 arsta->nss = sta->deflink.rx_nss;
5647 int nss, ru;
5654 for (nss = 0; nss <= fw_ppet->numss_m1; nss++) {
5661 val = (fw_ppet->ppet16_ppet8_ru3_ru0[nss] >> (ru * 6)) &
6726 u16 nss;
6835 nss = get_num_chains(ar->cfg_tx_chainmask) ? : 1;
6837 WMI_VDEV_PARAM_NSS, nss);
6839 ath11k_warn(ab, "failed to set vdev %d chainmask 0x%x, nss %d :%d\n",
6840 arvif->vdev_id, ar->cfg_tx_chainmask, nss, ret);
7915 int *nss)
7971 *nss = fls(ht_nss_mask);
7980 u32 *rate, u8 *nss)
8003 *nss = 1;
8097 u32 rate, u8 nss, u8 sgi, u8 ldpc,
8107 "set rate params vdev %i rate 0x%02x nss 0x%02x sgi 0x%02x ldpc 0x%02x he_gi 0x%02x he_ltf 0x%02x he_fixed_rate %d\n",
8108 arvif->vdev_id, rate, nss, sgi, ldpc, he_gi,
8124 vdev_param, nss);
8126 ath11k_warn(ar->ab, "failed to set nss param %d: %d\n",
8127 nss, ret);
8321 u8 nss;
8356 &nss);
8368 nss = single_nss;
8380 "could not update fixed rate settings to all peers due to mcs/nss incompatibility\n");
8381 nss = min_t(u32, ar->num_tx_chains,
8447 ret = ath11k_mac_set_rate_params(arvif, rate, nss, sgi, ldpc, he_gi,
8642 if (arsta->txrate.legacy || arsta->txrate.nss) {
8647 sinfo->txrate.nss = arsta->txrate.nss;