Lines Matching refs:rate

116 				     struct rs_rate *rate,
128 struct rs_rate *rate, in rs_ant_allow() argument
135 struct rs_rate *rate, in rs_mimo_allow() argument
157 struct rs_rate *rate, in rs_siso_allow() argument
167 struct rs_rate *rate, in rs_sgi_allow() argument
173 if (is_ht20(rate) && (ht_cap->cap & in rs_sgi_allow()
176 if (is_ht40(rate) && (ht_cap->cap & in rs_sgi_allow()
179 if (is_ht80(rate) && (vht_cap->cap & in rs_sgi_allow()
182 if (is_ht160(rate) && (vht_cap->cap & in rs_sgi_allow()
477 static char *rs_pretty_rate(const struct rs_rate *rate) in rs_pretty_rate() argument
508 if (is_type_legacy(rate->type) && (rate->index <= IWL_RATE_54M_INDEX)) in rs_pretty_rate()
509 rate_str = legacy_rates[rate->index]; in rs_pretty_rate()
510 else if ((is_type_ht(rate->type) || is_type_vht(rate->type)) && in rs_pretty_rate()
511 (rate->index >= IWL_RATE_MCS_0_INDEX) && in rs_pretty_rate()
512 (rate->index <= IWL_RATE_MCS_9_INDEX)) in rs_pretty_rate()
513 rate_str = ht_vht_rates[rate->index]; in rs_pretty_rate()
517 sprintf(buf, "(%s|%s|%s)", rs_pretty_lq_type(rate->type), in rs_pretty_rate()
518 iwl_rs_pretty_ant(rate->ant), rate_str); in rs_pretty_rate()
522 static inline void rs_dump_rate(struct iwl_mvm *mvm, const struct rs_rate *rate, in rs_dump_rate() argument
527 prefix, rs_pretty_rate(rate), rate->bw, in rs_dump_rate()
528 rate->sgi, rate->ldpc, rate->stbc); in rs_dump_rate()
773 struct rs_rate *rate) in ucode_rate_from_rs_rate() argument
776 int index = rate->index; in ucode_rate_from_rs_rate()
778 ucode_rate |= ((rate->ant << RATE_MCS_ANT_POS) & in ucode_rate_from_rs_rate()
781 if (is_legacy(rate)) { in ucode_rate_from_rs_rate()
794 if (is_ht(rate)) { in ucode_rate_from_rs_rate()
801 if (is_ht_siso(rate)) in ucode_rate_from_rs_rate()
803 else if (is_ht_mimo2(rate)) in ucode_rate_from_rs_rate()
807 } else if (is_vht(rate)) { in ucode_rate_from_rs_rate()
813 if (is_vht_siso(rate)) in ucode_rate_from_rs_rate()
815 else if (is_vht_mimo2(rate)) in ucode_rate_from_rs_rate()
821 IWL_ERR(mvm, "Invalid rate->type %d\n", rate->type); in ucode_rate_from_rs_rate()
824 if (is_siso(rate) && rate->stbc) { in ucode_rate_from_rs_rate()
830 ucode_rate |= rate->bw; in ucode_rate_from_rs_rate()
831 if (rate->sgi) in ucode_rate_from_rs_rate()
833 if (rate->ldpc) in ucode_rate_from_rs_rate()
842 struct rs_rate *rate) in rs_rate_from_ucode_rate() argument
848 memset(rate, 0, sizeof(*rate)); in rs_rate_from_ucode_rate()
849 rate->index = iwl_hwrate_to_plcp_idx(ucode_rate); in rs_rate_from_ucode_rate()
851 if (rate->index == IWL_RATE_INVALID) in rs_rate_from_ucode_rate()
854 rate->ant = (ant_msk >> RATE_MCS_ANT_POS); in rs_rate_from_ucode_rate()
862 rate->type = LQ_LEGACY_A; in rs_rate_from_ucode_rate()
864 rate->type = LQ_LEGACY_G; in rs_rate_from_ucode_rate()
872 rate->sgi = true; in rs_rate_from_ucode_rate()
874 rate->ldpc = true; in rs_rate_from_ucode_rate()
876 rate->stbc = true; in rs_rate_from_ucode_rate()
878 rate->bfer = true; in rs_rate_from_ucode_rate()
880 rate->bw = ucode_rate & RATE_MCS_CHAN_WIDTH_MSK_V1; in rs_rate_from_ucode_rate()
887 rate->type = LQ_HT_SISO; in rs_rate_from_ucode_rate()
888 WARN_ONCE(!rate->stbc && !rate->bfer && num_of_ant != 1, in rs_rate_from_ucode_rate()
890 rate->stbc, rate->bfer); in rs_rate_from_ucode_rate()
892 rate->type = LQ_HT_MIMO2; in rs_rate_from_ucode_rate()
902 rate->type = LQ_VHT_SISO; in rs_rate_from_ucode_rate()
903 WARN_ONCE(!rate->stbc && !rate->bfer && num_of_ant != 1, in rs_rate_from_ucode_rate()
905 rate->stbc, rate->bfer); in rs_rate_from_ucode_rate()
907 rate->type = LQ_VHT_MIMO2; in rs_rate_from_ucode_rate()
917 rate->type = LQ_HE_SISO; in rs_rate_from_ucode_rate()
918 WARN_ONCE(!rate->stbc && !rate->bfer && num_of_ant != 1, in rs_rate_from_ucode_rate()
919 "stbc %d bfer %d", rate->stbc, rate->bfer); in rs_rate_from_ucode_rate()
921 rate->type = LQ_HE_MIMO2; in rs_rate_from_ucode_rate()
928 WARN_ON_ONCE(rate->bw == RATE_MCS_CHAN_WIDTH_80 && in rs_rate_from_ucode_rate()
929 !is_he(rate) && !is_vht(rate)); in rs_rate_from_ucode_rate()
936 static int rs_toggle_antenna(u32 valid_ant, struct rs_rate *rate) in rs_toggle_antenna() argument
940 if (!rs_is_valid_ant(valid_ant, rate->ant)) in rs_toggle_antenna()
943 new_ant_type = ant_toggle_lookup[rate->ant]; in rs_toggle_antenna()
945 while ((new_ant_type != rate->ant) && in rs_toggle_antenna()
949 if (new_ant_type == rate->ant) in rs_toggle_antenna()
952 rate->ant = new_ant_type; in rs_toggle_antenna()
958 struct rs_rate *rate) in rs_get_supported_rates() argument
960 if (is_legacy(rate)) in rs_get_supported_rates()
962 else if (is_siso(rate)) in rs_get_supported_rates()
964 else if (is_mimo2(rate)) in rs_get_supported_rates()
1028 struct rs_rate *rate) in rs_rate_supported() argument
1030 return BIT(rate->index) & rs_get_supported_rates(lq_sta, rate); in rs_rate_supported()
1037 struct rs_rate *rate) in rs_get_lower_rate_in_column() argument
1044 rate_mask = rs_get_supported_rates(lq_sta, rate); in rs_get_lower_rate_in_column()
1045 high_low = rs_get_adjacent_rate(mvm, rate->index, rate_mask, in rs_get_lower_rate_in_column()
1046 rate->type); in rs_get_lower_rate_in_column()
1053 rate->index = low; in rs_get_lower_rate_in_column()
1059 struct rs_rate *rate) in rs_get_lower_rate_down_column() argument
1063 if (is_legacy(rate)) { in rs_get_lower_rate_down_column()
1066 } else if (is_siso(rate)) { in rs_get_lower_rate_down_column()
1069 rate->type = LQ_LEGACY_A; in rs_get_lower_rate_down_column()
1071 rate->type = LQ_LEGACY_G; in rs_get_lower_rate_down_column()
1073 rate->bw = RATE_MCS_CHAN_WIDTH_20; in rs_get_lower_rate_down_column()
1075 WARN_ON_ONCE(rate->index < IWL_RATE_MCS_0_INDEX || in rs_get_lower_rate_down_column()
1076 rate->index > IWL_RATE_MCS_9_INDEX); in rs_get_lower_rate_down_column()
1078 rate->index = rs_ht_to_legacy[rate->index]; in rs_get_lower_rate_down_column()
1079 rate->ldpc = false; in rs_get_lower_rate_down_column()
1082 rate->type = is_vht_mimo2(rate) ? in rs_get_lower_rate_down_column()
1086 if (num_of_ant(rate->ant) > 1) in rs_get_lower_rate_down_column()
1087 rate->ant = first_antenna(iwl_mvm_get_valid_tx_ant(mvm)); in rs_get_lower_rate_down_column()
1090 rate->sgi = false; in rs_get_lower_rate_down_column()
1092 if (!rs_rate_supported(lq_sta, rate)) in rs_get_lower_rate_down_column()
1093 rs_get_lower_rate_in_column(lq_sta, rate); in rs_get_lower_rate_down_column()
1111 static inline enum rs_column rs_get_column_from_rate(struct rs_rate *rate) in rs_get_column_from_rate() argument
1113 if (is_legacy(rate)) { in rs_get_column_from_rate()
1114 if (rate->ant == ANT_A) in rs_get_column_from_rate()
1117 if (rate->ant == ANT_B) in rs_get_column_from_rate()
1123 if (is_siso(rate)) { in rs_get_column_from_rate()
1124 if (rate->ant == ANT_A || rate->stbc || rate->bfer) in rs_get_column_from_rate()
1125 return rate->sgi ? RS_COLUMN_SISO_ANT_A_SGI : in rs_get_column_from_rate()
1128 if (rate->ant == ANT_B) in rs_get_column_from_rate()
1129 return rate->sgi ? RS_COLUMN_SISO_ANT_B_SGI : in rs_get_column_from_rate()
1135 if (is_mimo(rate)) in rs_get_column_from_rate()
1136 return rate->sgi ? RS_COLUMN_MIMO2_SGI : RS_COLUMN_MIMO2; in rs_get_column_from_rate()
1306 struct rs_rate *rate = &tbl->rate; in rs_set_expected_tpt_table() local
1309 tbl->expected_tpt = rs_get_expected_tpt_table(lq_sta, column, rate->bw); in rs_set_expected_tpt_table()
1357 tbl->rate.type); in rs_get_best_rate()
1500 if ((!is_vht(&tbl->rate) && !is_ht(&tbl->rate)) || in rs_set_amsdu_len()
1501 tbl->rate.index < IWL_RATE_MCS_5_INDEX || in rs_set_amsdu_len()
1537 rs_fill_lq_cmd(mvm, sta, lq_sta, &tbl->rate); in rs_update_rate_tbl()
1550 if (!is_vht_siso(&tbl->rate)) in rs_tweak_rate_tbl()
1553 if ((tbl->rate.bw == RATE_MCS_CHAN_WIDTH_80) && in rs_tweak_rate_tbl()
1554 (tbl->rate.index == IWL_RATE_MCS_0_INDEX) && in rs_tweak_rate_tbl()
1556 tbl->rate.bw = RATE_MCS_CHAN_WIDTH_20; in rs_tweak_rate_tbl()
1557 tbl->rate.index = IWL_RATE_MCS_4_INDEX; in rs_tweak_rate_tbl()
1567 if ((tbl->rate.bw == RATE_MCS_CHAN_WIDTH_20) && in rs_tweak_rate_tbl()
1568 (((tbl->rate.index == IWL_RATE_MCS_5_INDEX) && in rs_tweak_rate_tbl()
1570 ((tbl->rate.index > IWL_RATE_MCS_5_INDEX) && in rs_tweak_rate_tbl()
1572 tbl->rate.bw = RATE_MCS_CHAN_WIDTH_80; in rs_tweak_rate_tbl()
1573 tbl->rate.index = IWL_RATE_MCS_1_INDEX; in rs_tweak_rate_tbl()
1623 if (allow_func && !allow_func(mvm, sta, &tbl->rate, in rs_get_next_column()
1678 struct rs_rate *rate = &search_tbl->rate; in rs_switch_to_column() local
1686 rate->sgi = column->sgi; in rs_switch_to_column()
1687 rate->ant = column->ant; in rs_switch_to_column()
1691 rate->type = LQ_LEGACY_A; in rs_switch_to_column()
1693 rate->type = LQ_LEGACY_G; in rs_switch_to_column()
1695 rate->bw = RATE_MCS_CHAN_WIDTH_20; in rs_switch_to_column()
1696 rate->ldpc = false; in rs_switch_to_column()
1699 rate->type = lq_sta->is_vht ? LQ_VHT_SISO : LQ_HT_SISO; in rs_switch_to_column()
1702 rate->type = lq_sta->is_vht ? LQ_VHT_MIMO2 : LQ_HT_MIMO2; in rs_switch_to_column()
1709 rate->bw = rs_bw_from_sta_bw(sta); in rs_switch_to_column()
1710 rate->ldpc = lq_sta->ldpc; in rs_switch_to_column()
1723 rate_mask, rate->index); in rs_switch_to_column()
1735 rate->index = rate_idx; in rs_switch_to_column()
1739 col_id, rate->index); in rs_switch_to_column()
1744 rate->type = LQ_NONE; in rs_switch_to_column()
1860 struct rs_rate *rate, enum nl80211_band band) in rs_tpc_allowed() argument
1862 int index = rate->index; in rs_tpc_allowed()
1877 IWL_DEBUG_RATE(mvm, "check rate, table type: %d\n", rate->type); in rs_tpc_allowed()
1878 if (is_legacy(rate)) in rs_tpc_allowed()
1880 if (is_ht(rate)) in rs_tpc_allowed()
1882 if (is_vht(rate)) in rs_tpc_allowed()
1966 struct rs_rate *rate = &tbl->rate; in rs_tpc_perform() local
1991 if (!rs_tpc_allowed(mvm, vif, rate, band)) { in rs_tpc_perform()
2071 struct rs_rate *rate; in rs_rate_scale_perform() local
2086 rate = &tbl->rate; in rs_rate_scale_perform()
2097 index = rate->index; in rs_rate_scale_perform()
2100 rate_mask = rs_get_supported_rates(lq_sta, rate); in rs_rate_scale_perform()
2106 rate->type = LQ_NONE; in rs_rate_scale_perform()
2135 rs_pretty_rate(rate), in rs_rate_scale_perform()
2174 rate->type = LQ_NONE; in rs_rate_scale_perform()
2181 index = tbl->rate.index; in rs_rate_scale_perform()
2197 high_low = rs_get_adjacent_rate(mvm, index, rate_mask, rate->type); in rs_rate_scale_perform()
2214 rs_pretty_rate(rate), current_tpt, sr, in rs_rate_scale_perform()
2221 if (is_mimo(rate) && in rs_rate_scale_perform()
2264 tbl->rate.index = index; in rs_rate_scale_perform()
2311 index = tbl->rate.index; in rs_rate_scale_perform()
2313 rs_dump_rate(mvm, &tbl->rate, in rs_rate_scale_perform()
2326 rs_set_stay_in_table(mvm, is_legacy(&tbl1->rate), lq_sta); in rs_rate_scale_perform()
2408 struct rs_rate *rate = &lq_sta->optimal_rate; in rs_init_optimal_rate() local
2411 rate->type = lq_sta->is_vht ? LQ_VHT_MIMO2 : LQ_HT_MIMO2; in rs_init_optimal_rate()
2413 rate->type = lq_sta->is_vht ? LQ_VHT_SISO : LQ_HT_SISO; in rs_init_optimal_rate()
2415 rate->type = LQ_LEGACY_A; in rs_init_optimal_rate()
2417 rate->type = LQ_LEGACY_G; in rs_init_optimal_rate()
2419 rate->bw = rs_bw_from_sta_bw(sta); in rs_init_optimal_rate()
2420 rate->sgi = rs_sgi_allow(mvm, sta, rate, NULL); in rs_init_optimal_rate()
2424 if (is_mimo(rate)) { in rs_init_optimal_rate()
2426 } else if (is_siso(rate)) { in rs_init_optimal_rate()
2442 if (is_vht(rate)) { in rs_init_optimal_rate()
2443 if (rate->bw == RATE_MCS_CHAN_WIDTH_20) { in rs_init_optimal_rate()
2452 } else if (is_ht(rate)) { in rs_init_optimal_rate()
2462 struct rs_rate *rate = &lq_sta->optimal_rate; in rs_get_optimal_rate() local
2465 rate->index = find_first_bit(&lq_sta->optimal_rate_mask, in rs_get_optimal_rate()
2473 rate->index = rate_idx; in rs_get_optimal_rate()
2478 return rate; in rs_get_optimal_rate()
2488 struct rs_rate *rate) in rs_get_initial_rate() argument
2512 rate->ant = first_antenna(valid_tx_ant); in rs_get_initial_rate()
2514 rate->ant = best_ant; in rs_get_initial_rate()
2516 rate->sgi = false; in rs_get_initial_rate()
2517 rate->ldpc = false; in rs_get_initial_rate()
2518 rate->bw = RATE_MCS_CHAN_WIDTH_20; in rs_get_initial_rate()
2520 rate->index = find_first_bit(&lq_sta->active_legacy_rate, in rs_get_initial_rate()
2524 rate->type = LQ_LEGACY_A; in rs_get_initial_rate()
2528 rate->type = LQ_LEGACY_G; in rs_get_initial_rate()
2573 rate->type = LQ_VHT_SISO; in rs_get_initial_rate()
2574 rate->bw = bw; in rs_get_initial_rate()
2580 rate->type = LQ_HT_SISO; in rs_get_initial_rate()
2590 rate->index = rate_idx; in rs_get_initial_rate()
2596 rs_dump_rate(mvm, rate, "INITIAL"); in rs_get_initial_rate()
2641 struct rs_rate *rate; in rs_initialize_lq() local
2653 rate = &tbl->rate; in rs_initialize_lq()
2655 rs_get_initial_rate(mvm, sta, lq_sta, band, rate); in rs_initialize_lq()
2658 WARN_ONCE(rate->ant != ANT_A && rate->ant != ANT_B, in rs_initialize_lq()
2660 rate->ant, lq_sta->pers.chains, mvm->fw->valid_tx_ant, in rs_initialize_lq()
2663 tbl->column = rs_get_column_from_rate(rate); in rs_initialize_lq()
2666 rs_fill_lq_cmd(mvm, sta, lq_sta, rate); in rs_initialize_lq()
2855 void iwl_mvm_update_frame_stats(struct iwl_mvm *mvm, u32 rate, bool agg) in iwl_mvm_update_frame_stats() argument
2866 switch (rate & RATE_MCS_CHAN_WIDTH_MSK_V1) { in iwl_mvm_update_frame_stats()
2880 WARN_ONCE(1, "bad BW. rate 0x%x", rate); in iwl_mvm_update_frame_stats()
2883 if (rate & RATE_MCS_HT_MSK_V1) { in iwl_mvm_update_frame_stats()
2885 nss = ((rate & RATE_HT_MCS_NSS_MSK_V1) >> RATE_HT_MCS_NSS_POS_V1) + 1; in iwl_mvm_update_frame_stats()
2886 } else if (rate & RATE_MCS_VHT_MSK_V1) { in iwl_mvm_update_frame_stats()
2888 nss = ((rate & RATE_VHT_MCS_NSS_MSK) >> in iwl_mvm_update_frame_stats()
2899 if (rate & RATE_MCS_SGI_MSK_V1) in iwl_mvm_update_frame_stats()
2904 mvm->drv_rx_stats.last_rates[mvm->drv_rx_stats.last_frame_idx] = rate; in iwl_mvm_update_frame_stats()
3148 if (WARN_ON_ONCE(!rs_rate_column_match(&lq_rate, &curr_tbl->rate))) { in __iwl_mvm_rs_tx_status()
3152 rs_dump_rate(mvm, &tmp_tbl->rate, "ACTIVE"); in __iwl_mvm_rs_tx_status()
3154 rs_dump_rate(mvm, &tmp_tbl->rate, "SEARCH"); in __iwl_mvm_rs_tx_status()
3223 if (rs_rate_column_match(&lq_rate, &curr_tbl->rate)) in __iwl_mvm_rs_tx_status()
3226 &other_tbl->rate)) in __iwl_mvm_rs_tx_status()
3276 struct rs_rate rate; in rs_build_rates_table_from_fixed() local
3285 if (rs_rate_from_ucode_rate(ucode_rate, band, &rate)) { in rs_build_rates_table_from_fixed()
3290 if (is_mimo(&rate)) in rs_build_rates_table_from_fixed()
3310 struct rs_rate *rate, in rs_fill_rates_for_column() argument
3318 int prev_rate_idx = rate->index; in rs_fill_rates_for_column()
3325 rate)); in rs_fill_rates_for_column()
3328 rs_toggle_antenna(valid_tx_ant, rate); in rs_fill_rates_for_column()
3331 prev_rate_idx = rate->index; in rs_fill_rates_for_column()
3332 bottom_reached = rs_get_lower_rate_in_column(lq_sta, rate); in rs_fill_rates_for_column()
3333 if (bottom_reached && !is_legacy(rate)) in rs_fill_rates_for_column()
3337 if (!bottom_reached && !is_legacy(rate)) in rs_fill_rates_for_column()
3338 rate->index = prev_rate_idx; in rs_fill_rates_for_column()
3368 struct rs_rate rate; in rs_build_rates_table() local
3375 memcpy(&rate, initial_rate, sizeof(rate)); in rs_build_rates_table()
3382 rate.stbc = true; in rs_build_rates_table()
3384 if (is_siso(&rate)) { in rs_build_rates_table()
3387 } else if (is_mimo(&rate)) { in rs_build_rates_table()
3396 rs_fill_rates_for_column(mvm, lq_sta, &rate, lq_cmd->rs_table, &index, in rs_build_rates_table()
3400 rs_get_lower_rate_down_column(lq_sta, &rate); in rs_build_rates_table()
3402 if (is_siso(&rate)) { in rs_build_rates_table()
3406 } else if (is_legacy(&rate)) { in rs_build_rates_table()
3415 rs_fill_rates_for_column(mvm, lq_sta, &rate, lq_cmd->rs_table, &index, in rs_build_rates_table()
3419 rs_get_lower_rate_down_column(lq_sta, &rate); in rs_build_rates_table()
3424 rs_fill_rates_for_column(mvm, lq_sta, &rate, lq_cmd->rs_table, &index, in rs_build_rates_table()
3645 int rs_pretty_print_rate_v1(char *buf, int bufsz, const u32 rate) in rs_pretty_print_rate_v1() argument
3650 u8 ant = (rate & RATE_MCS_ANT_AB_MSK) >> RATE_MCS_ANT_POS; in rs_pretty_print_rate_v1()
3651 u32 bw = (rate & RATE_MCS_CHAN_WIDTH_MSK_V1) >> in rs_pretty_print_rate_v1()
3654 if (!(rate & RATE_MCS_HT_MSK_V1) && in rs_pretty_print_rate_v1()
3655 !(rate & RATE_MCS_VHT_MSK_V1) && in rs_pretty_print_rate_v1()
3656 !(rate & RATE_MCS_HE_MSK_V1)) { in rs_pretty_print_rate_v1()
3657 int index = iwl_hwrate_to_plcp_idx(rate); in rs_pretty_print_rate_v1()
3665 if (rate & RATE_MCS_VHT_MSK_V1) { in rs_pretty_print_rate_v1()
3667 mcs = rate & RATE_VHT_MCS_RATE_CODE_MSK; in rs_pretty_print_rate_v1()
3668 nss = ((rate & RATE_VHT_MCS_NSS_MSK) in rs_pretty_print_rate_v1()
3670 } else if (rate & RATE_MCS_HT_MSK_V1) { in rs_pretty_print_rate_v1()
3672 mcs = rate & RATE_HT_MCS_INDEX_MSK_V1; in rs_pretty_print_rate_v1()
3673 nss = ((rate & RATE_HT_MCS_NSS_MSK_V1) in rs_pretty_print_rate_v1()
3675 } else if (rate & RATE_MCS_HE_MSK_V1) { in rs_pretty_print_rate_v1()
3677 mcs = rate & RATE_VHT_MCS_RATE_CODE_MSK; in rs_pretty_print_rate_v1()
3678 nss = ((rate & RATE_VHT_MCS_NSS_MSK) in rs_pretty_print_rate_v1()
3686 rate, type, iwl_rs_pretty_ant(ant), iwl_rs_pretty_bw(bw), mcs, nss, in rs_pretty_print_rate_v1()
3687 (rate & RATE_MCS_SGI_MSK_V1) ? "SGI " : "NGI ", in rs_pretty_print_rate_v1()
3688 (rate & RATE_MCS_STBC_MSK) ? "STBC " : "", in rs_pretty_print_rate_v1()
3689 (rate & RATE_MCS_LDPC_MSK_V1) ? "LDPC " : "", in rs_pretty_print_rate_v1()
3690 (rate & RATE_HE_DUAL_CARRIER_MODE_MSK) ? "DCM " : "", in rs_pretty_print_rate_v1()
3691 (rate & RATE_MCS_BF_MSK) ? "BF " : ""); in rs_pretty_print_rate_v1()
3756 struct rs_rate *rate = &tbl->rate; in rs_sta_dbgfs_scale_table_read() local
3776 (is_legacy(rate)) ? "legacy" : in rs_sta_dbgfs_scale_table_read()
3777 is_vht(rate) ? "VHT" : "HT"); in rs_sta_dbgfs_scale_table_read()
3778 if (!is_legacy(rate)) { in rs_sta_dbgfs_scale_table_read()
3780 (is_siso(rate)) ? "SISO" : "MIMO2"); in rs_sta_dbgfs_scale_table_read()
3782 (is_ht20(rate)) ? "20MHz" : in rs_sta_dbgfs_scale_table_read()
3783 (is_ht40(rate)) ? "40MHz" : in rs_sta_dbgfs_scale_table_read()
3784 (is_ht80(rate)) ? "80MHz" : in rs_sta_dbgfs_scale_table_read()
3785 (is_ht160(rate)) ? "160MHz" : "BAD BW"); in rs_sta_dbgfs_scale_table_read()
3787 (rate->sgi) ? "SGI" : "NGI", in rs_sta_dbgfs_scale_table_read()
3788 (rate->ldpc) ? "LDPC" : "BCC", in rs_sta_dbgfs_scale_table_read()
3856 struct rs_rate *rate; in rs_sta_dbgfs_stats_table_read() local
3865 rate = &tbl->rate; in rs_sta_dbgfs_stats_table_read()
3870 rate->type, in rs_sta_dbgfs_stats_table_read()
3871 rate->sgi, in rs_sta_dbgfs_stats_table_read()
3872 is_ht20(rate) ? "20MHz" : in rs_sta_dbgfs_stats_table_read()
3873 is_ht40(rate) ? "40MHz" : in rs_sta_dbgfs_stats_table_read()
3874 is_ht80(rate) ? "80MHz" : in rs_sta_dbgfs_stats_table_read()
3875 is_ht160(rate) ? "160MHz" : "ERR", in rs_sta_dbgfs_stats_table_read()
3876 rate->index); in rs_sta_dbgfs_stats_table_read()
3932 int col, rate; in rs_sta_dbgfs_drv_tx_stats_read() local
3946 for (rate = 0; rate < IWL_RATE_COUNT; rate++) in rs_sta_dbgfs_drv_tx_stats_read()
3947 pos += scnprintf(pos, endpos - pos, "%s,", rate_name[rate]); in rs_sta_dbgfs_drv_tx_stats_read()
3954 for (rate = 0; rate < IWL_RATE_COUNT; rate++) { in rs_sta_dbgfs_drv_tx_stats_read()
3955 stats = &(lq_sta->pers.tx_stats[col][rate]); in rs_sta_dbgfs_drv_tx_stats_read()