| /kernel/linux/linux-5.10/drivers/net/wireless/broadcom/b43/ |
| D | ppr.c | 71 struct b43_ppr_rates *rates = &ppr->rates; in b43_ppr_load_max_from_sprom() local 121 rates->cck[i] = maxpwr - off; in b43_ppr_load_max_from_sprom() 128 rates->ofdm[i] = maxpwr - off; in b43_ppr_load_max_from_sprom() 132 rates->mcs_20[0] = rates->ofdm[0]; in b43_ppr_load_max_from_sprom() 133 rates->mcs_20[1] = rates->ofdm[2]; in b43_ppr_load_max_from_sprom() 134 rates->mcs_20[2] = rates->ofdm[3]; in b43_ppr_load_max_from_sprom() 135 rates->mcs_20[3] = rates->ofdm[4]; in b43_ppr_load_max_from_sprom() 136 rates->mcs_20[4] = rates->ofdm[5]; in b43_ppr_load_max_from_sprom() 137 rates->mcs_20[5] = rates->ofdm[6]; in b43_ppr_load_max_from_sprom() 138 rates->mcs_20[6] = rates->ofdm[7]; in b43_ppr_load_max_from_sprom() [all …]
|
| /kernel/linux/linux-4.19/drivers/net/wireless/broadcom/b43/ |
| D | ppr.c | 80 struct b43_ppr_rates *rates = &ppr->rates; in b43_ppr_load_max_from_sprom() local 130 rates->cck[i] = maxpwr - off; in b43_ppr_load_max_from_sprom() 137 rates->ofdm[i] = maxpwr - off; in b43_ppr_load_max_from_sprom() 141 rates->mcs_20[0] = rates->ofdm[0]; in b43_ppr_load_max_from_sprom() 142 rates->mcs_20[1] = rates->ofdm[2]; in b43_ppr_load_max_from_sprom() 143 rates->mcs_20[2] = rates->ofdm[3]; in b43_ppr_load_max_from_sprom() 144 rates->mcs_20[3] = rates->ofdm[4]; in b43_ppr_load_max_from_sprom() 145 rates->mcs_20[4] = rates->ofdm[5]; in b43_ppr_load_max_from_sprom() 146 rates->mcs_20[5] = rates->ofdm[6]; in b43_ppr_load_max_from_sprom() 147 rates->mcs_20[6] = rates->ofdm[7]; in b43_ppr_load_max_from_sprom() [all …]
|
| /kernel/linux/linux-5.10/net/mac80211/ |
| D | rate.c | 292 "no overlap between basic rates (0x%x) and user mask (0x%x on band %d) - clearing the latter", in ieee80211_check_rate_mask() 325 return; /* assume basic rates unknown and accept rate */ in rc_send_low_basicrate() 352 info->control.rates[0].flags |= IEEE80211_TX_RC_S1G_MCS; in __rate_control_send_low() 353 info->control.rates[0].idx = 0; in __rate_control_send_low() 361 info->control.rates[0].idx = 0; in __rate_control_send_low() 372 info->control.rates[0].idx = i; in __rate_control_send_low() 376 "no supported rates for sta %pM (0x%x, band %d) in rate_mask 0x%x with flags 0x%x\n", in __rate_control_send_low() 382 info->control.rates[0].count = in __rate_control_send_low() 406 info->control.rates[0].idx = mcast_rate - 1; in rate_control_send_low() 417 rc_send_low_basicrate(&info->control.rates[0], in rate_control_send_low() [all …]
|
| D | rc80211_minstrel_ht.c | 174 "Use only VHT rates when VHT is supported by sta."); 177 * To enable sufficiently targeted rate sampling, MCS rates are divided into 326 return &mi->groups[group].rates[idx]; in minstrel_ht_get_stats() 332 return &mi->groups[index / MCS_GROUP_RATES].rates[index % MCS_GROUP_RATES]; in minstrel_get_ratestats() 377 * Find & sort topmost throughput rates 379 * If multiple rates provide equal throughput the sorting is based on their 381 * MCS groups, CCK rates do not provide aggregation and are therefore at last. 393 cur_prob = mi->groups[cur_group].rates[cur_idx].prob_avg; in minstrel_ht_sort_best_tp_rates() 399 tmp_prob = mi->groups[tmp_group].rates[tmp_idx].prob_avg; in minstrel_ht_sort_best_tp_rates() 432 mrs = &mg->rates[index % MCS_GROUP_RATES]; in minstrel_ht_set_best_prob_rate() [all …]
|
| /kernel/linux/linux-4.19/net/mac80211/ |
| D | rate.c | 290 "no overlap between basic rates (0x%x) and user mask (0x%x on band %d) - clearing the latter", in ieee80211_check_rate_mask() 315 return; /* assume basic rates unknown and accept rate */ in rc_send_low_basicrate() 345 info->control.rates[0].idx = 0; in __rate_control_send_low() 356 info->control.rates[0].idx = i; in __rate_control_send_low() 360 "no supported rates (0x%x) in rate_mask 0x%x with flags 0x%x\n", in __rate_control_send_low() 364 info->control.rates[0].count = in __rate_control_send_low() 389 info->control.rates[0].idx = mcast_rate - 1; in rate_control_send_low() 400 rc_send_low_basicrate(&info->control.rates[0].idx, in rate_control_send_low() 517 /* handle VHT rates */ in rate_idx_match_mask() 534 /* also try the legacy rates. */ in rate_idx_match_mask() [all …]
|
| D | rc80211_minstrel_ht.c | 144 "Use only VHT rates when VHT is supported by sta."); 148 * To enable sufficiently targeted rate sampling, MCS rates are divided into 289 return &mi->groups[group].rates[idx]; in minstrel_ht_get_stats() 295 return &mi->groups[index / MCS_GROUP_RATES].rates[index % MCS_GROUP_RATES]; in minstrel_get_ratestats() 330 * Find & sort topmost throughput rates 332 * If multiple rates provide equal throughput the sorting is based on their 334 * MCS groups, CCK rates do not provide aggregation and are therefore at last. 346 cur_prob = mi->groups[cur_group].rates[cur_idx].prob_ewma; in minstrel_ht_sort_best_tp_rates() 352 tmp_prob = mi->groups[tmp_group].rates[tmp_idx].prob_ewma; in minstrel_ht_sort_best_tp_rates() 385 mrs = &mg->rates[index % MCS_GROUP_RATES]; in minstrel_ht_set_best_prob_rate() [all …]
|
| D | status.c | 265 if (info->status.rates[0].idx >= 0 && in ieee80211_tx_radiotap_len() 266 !(info->status.rates[0].flags & (IEEE80211_TX_RC_MCS | in ieee80211_tx_radiotap_len() 278 if (info->status.rates[0].idx >= 0) { in ieee80211_tx_radiotap_len() 279 if (info->status.rates[0].flags & IEEE80211_TX_RC_MCS) in ieee80211_tx_radiotap_len() 281 else if (info->status.rates[0].flags & IEEE80211_TX_RC_VHT_MCS) in ieee80211_tx_radiotap_len() 316 if (info->status.rates[0].idx >= 0 && in ieee80211_add_tx_radiotap_header() 317 !(info->status.rates[0].flags & (IEEE80211_TX_RC_MCS | in ieee80211_add_tx_radiotap_header() 322 rate = sband->bitrates[info->status.rates[0].idx].bitrate; in ieee80211_add_tx_radiotap_header() 334 if (info->status.rates[0].flags & IEEE80211_TX_RC_USE_CTS_PROTECT) in ieee80211_add_tx_radiotap_header() 336 if (info->status.rates[0].flags & IEEE80211_TX_RC_USE_RTS_CTS) in ieee80211_add_tx_radiotap_header() [all …]
|
| /kernel/linux/linux-5.10/drivers/staging/wfx/ |
| D | data_tx.c | 47 struct ieee80211_tx_rate *rates) in wfx_tx_policy_build() argument 53 WARN(rates[0].idx < 0, "invalid rate policy"); in wfx_tx_policy_build() 56 if (rates[i].idx < 0) in wfx_tx_policy_build() 58 WARN_ON(rates[i].count > 15); in wfx_tx_policy_build() 59 rateid = wfx_get_hw_rate(wdev, &rates[i]); in wfx_tx_policy_build() 60 // Pack two values in each byte of policy->rates in wfx_tx_policy_build() 61 count = rates[i].count; in wfx_tx_policy_build() 64 policy->rates[rateid / 2] |= count; in wfx_tx_policy_build() 71 return !memcmp(a->rates, b->rates, sizeof(a->rates)); in tx_policy_is_equal() 106 struct ieee80211_tx_rate *rates, bool *renew) in wfx_tx_policy_get() argument [all …]
|
| /kernel/linux/linux-5.10/drivers/net/wireless/st/cw1200/ |
| D | txrx.c | 67 struct ieee80211_tx_rate *rates, size_t count) in tx_policy_build() argument 72 BUG_ON(rates[0].idx < 0); in tx_policy_build() 75 /* Sort rates in descending order. */ in tx_policy_build() 77 if (rates[i].idx < 0) { in tx_policy_build() 81 if (rates[i].idx > rates[i - 1].idx) { in tx_policy_build() 82 struct ieee80211_tx_rate tmp = rates[i - 1]; in tx_policy_build() 83 rates[i - 1] = rates[i]; in tx_policy_build() 84 rates[i] = tmp; in tx_policy_build() 89 total = rates[0].count; in tx_policy_build() 91 if (rates[j].idx == rates[i].idx) { in tx_policy_build() [all …]
|
| /kernel/linux/linux-4.19/drivers/net/wireless/st/cw1200/ |
| D | txrx.c | 70 struct ieee80211_tx_rate *rates, size_t count) in tx_policy_build() argument 75 BUG_ON(rates[0].idx < 0); in tx_policy_build() 78 /* Sort rates in descending order. */ in tx_policy_build() 80 if (rates[i].idx < 0) { in tx_policy_build() 84 if (rates[i].idx > rates[i - 1].idx) { in tx_policy_build() 85 struct ieee80211_tx_rate tmp = rates[i - 1]; in tx_policy_build() 86 rates[i - 1] = rates[i]; in tx_policy_build() 87 rates[i] = tmp; in tx_policy_build() 92 total = rates[0].count; in tx_policy_build() 94 if (rates[j].idx == rates[i].idx) { in tx_policy_build() [all …]
|
| /kernel/linux/linux-5.10/drivers/clk/sunxi-ng/ |
| D | ccu_frac.c | 59 return (cf->rates[0] == rate) || (cf->rates[1] == rate); in ccu_frac_helper_has_rate() 72 pr_debug("%s: clock is fractional (rates %lu and %lu)\n", in ccu_frac_helper_read_rate() 73 clk_hw_get_name(&common->hw), cf->rates[0], cf->rates[1]); in ccu_frac_helper_read_rate() 80 return (reg & cf->select) ? cf->rates[1] : cf->rates[0]; in ccu_frac_helper_read_rate() 93 if (cf->rates[0] == rate) in ccu_frac_helper_set_rate() 95 else if (cf->rates[1] == rate) in ccu_frac_helper_set_rate()
|
| /kernel/linux/linux-5.10/drivers/soundwire/ |
| D | generic_bandwidth_allocation.c | 28 unsigned int *rates; member 170 int *rates, int count) in sdw_compute_group_params() argument 179 params[i].rate = rates[i]; in sdw_compute_group_params() 215 if (rate == group->rates[i]) in sdw_add_element_group_count() 222 unsigned int *rates; in sdw_add_element_group_count() local 225 rates = krealloc(group->rates, in sdw_add_element_group_count() 228 if (!rates) in sdw_add_element_group_count() 230 group->rates = rates; in sdw_add_element_group_count() 233 group->rates[group->count++] = rate; in sdw_add_element_group_count() 248 group->rates = kcalloc(group->max_size, sizeof(int), GFP_KERNEL); in sdw_get_group_count() [all …]
|
| /kernel/linux/linux-4.19/drivers/clk/sunxi-ng/ |
| D | ccu_frac.c | 62 return (cf->rates[0] == rate) || (cf->rates[1] == rate); in ccu_frac_helper_has_rate() 75 pr_debug("%s: clock is fractional (rates %lu and %lu)\n", in ccu_frac_helper_read_rate() 76 clk_hw_get_name(&common->hw), cf->rates[0], cf->rates[1]); in ccu_frac_helper_read_rate() 83 return (reg & cf->select) ? cf->rates[1] : cf->rates[0]; in ccu_frac_helper_read_rate() 96 if (cf->rates[0] == rate) in ccu_frac_helper_set_rate() 98 else if (cf->rates[1] == rate) in ccu_frac_helper_set_rate()
|
| /kernel/linux/linux-5.10/drivers/net/wireless/marvell/mwifiex/ |
| D | cfp.c | 95 /* AC rates */ 193 * This function maps an index in supported rates table into 238 /* 11n non-HT rates */ in mwifiex_index_to_acs_data_rate() 247 /* This function maps an index in supported rates table into 293 * This function returns the current active data rates. 297 u32 mwifiex_get_active_data_rates(struct mwifiex_private *priv, u8 *rates) in mwifiex_get_active_data_rates() argument 300 return mwifiex_get_supported_rates(priv, rates); in mwifiex_get_active_data_rates() 302 return mwifiex_copy_rates(rates, 0, in mwifiex_get_active_data_rates() 387 /* This function gets the supported data rates from bitmask inside 391 u8 *rates, u8 radio_type) in mwifiex_get_rates_from_cfg80211() argument [all …]
|
| /kernel/linux/linux-4.19/drivers/net/wireless/marvell/mwifiex/ |
| D | cfp.c | 95 /* AC rates */ 193 * This function maps an index in supported rates table into 238 /* 11n non-HT rates */ in mwifiex_index_to_acs_data_rate() 247 /* This function maps an index in supported rates table into 293 * This function returns the current active data rates. 297 u32 mwifiex_get_active_data_rates(struct mwifiex_private *priv, u8 *rates) in mwifiex_get_active_data_rates() argument 300 return mwifiex_get_supported_rates(priv, rates); in mwifiex_get_active_data_rates() 302 return mwifiex_copy_rates(rates, 0, in mwifiex_get_active_data_rates() 387 /* This function gets the supported data rates from bitmask inside 391 u8 *rates, u8 radio_type) in mwifiex_get_rates_from_cfg80211() argument [all …]
|
| /kernel/linux/linux-5.10/sound/usb/ |
| D | format.c | 165 fp->rates = rate_bits; in set_fixed_rate() 171 * parse the format descriptor and stores the possible sample rates 230 fp->rates |= snd_pcm_rate_to_rate_bit(rate); in parse_audio_format_rates_v1() 234 hwc_debug("All rates were zero. Skipping format!\n"); in parse_audio_format_rates_v1() 238 /* continuous rates */ in parse_audio_format_rates_v1() 239 fp->rates = SNDRV_PCM_RATE_CONTINUOUS; in parse_audio_format_rates_v1() 257 * rates per altsetting but reports the full set each time. 258 * If we don't filter out the unsupported rates and attempt 262 * The list of supported rates per altsetting (set of available 285 * Many Focusrite devices supports a limited set of sampling rates per [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/tegra/ |
| D | dp.c | 54 link->rates[i] = 0; in drm_dp_link_reset() 60 * drm_dp_link_add_rate() - add a rate to the list of supported rates 64 * Add a link rate to the list of supported link rates. 68 * - ENOSPC if the maximum number of supported rates has been reached 82 if (rate <= link->rates[pivot]) in drm_dp_link_add_rate() 85 if (pivot != link->num_rates && rate == link->rates[pivot]) in drm_dp_link_add_rate() 89 link->rates[i] = link->rates[i - 1]; in drm_dp_link_add_rate() 91 link->rates[pivot] = rate; in drm_dp_link_add_rate() 98 * drm_dp_link_remove_rate() - remove a rate from the list of supported rates 102 * Removes a link rate from the list of supported link rates. [all …]
|
| /kernel/linux/linux-5.10/drivers/net/wireless/intersil/orinoco/ |
| D | scan.c | 27 static int symbol_build_supp_rates(u8 *buf, const __le16 *rates) in symbol_build_supp_rates() argument 34 rate = le16_to_cpu(rates[i]); in symbol_build_supp_rates() 45 static int prism_build_supp_rates(u8 *buf, const u8 *rates) in prism_build_supp_rates() argument 52 if (rates[i] == 0x0) in prism_build_supp_rates() 54 buf[i + 2] = rates[i]; in prism_build_supp_rates() 58 /* We might still have another 2 rates, which need to go in in prism_build_supp_rates() 59 * extended supported rates */ in prism_build_supp_rates() 60 if (i == 8 && rates[i] > 0) { in prism_build_supp_rates() 64 if (rates[i] == 0x0) in prism_build_supp_rates() 66 buf[i + 2] = rates[i]; in prism_build_supp_rates() [all …]
|
| /kernel/linux/linux-4.19/drivers/net/wireless/intersil/orinoco/ |
| D | scan.c | 27 static int symbol_build_supp_rates(u8 *buf, const __le16 *rates) in symbol_build_supp_rates() argument 34 rate = le16_to_cpu(rates[i]); in symbol_build_supp_rates() 45 static int prism_build_supp_rates(u8 *buf, const u8 *rates) in prism_build_supp_rates() argument 52 if (rates[i] == 0x0) in prism_build_supp_rates() 54 buf[i + 2] = rates[i]; in prism_build_supp_rates() 58 /* We might still have another 2 rates, which need to go in in prism_build_supp_rates() 59 * extended supported rates */ in prism_build_supp_rates() 60 if (i == 8 && rates[i] > 0) { in prism_build_supp_rates() 64 if (rates[i] == 0x0) in prism_build_supp_rates() 66 buf[i + 2] = rates[i]; in prism_build_supp_rates() [all …]
|
| /kernel/linux/linux-4.19/sound/usb/ |
| D | format.c | 167 * parse the format descriptor and stores the possible sample rates 224 fp->rates |= snd_pcm_rate_to_rate_bit(rate); in parse_audio_format_rates_v1() 228 hwc_debug("All rates were zero. Skipping format!\n"); in parse_audio_format_rates_v1() 232 /* continuous rates */ in parse_audio_format_rates_v1() 233 fp->rates = SNDRV_PCM_RATE_CONTINUOUS; in parse_audio_format_rates_v1() 241 * Many Focusrite devices supports a limited set of sampling rates per 289 * get to know how many sample rates we have to expect. 298 fp->rates = fp->rate_min = fp->rate_max = 0; in parse_uac2_sample_rate_range() 317 fp->rates = SNDRV_PCM_RATE_CONTINUOUS; in parse_uac2_sample_rate_range() 322 /* Filter out invalid rates on Focusrite devices */ in parse_uac2_sample_rate_range() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/wireless/ath/ath9k/ |
| D | ar9002_mac.c | 238 WRITE_ONCE(ads->ds_ctl2, set11nTries(i->rates, 0) in ar9002_set_txdesc() 239 | set11nTries(i->rates, 1) in ar9002_set_txdesc() 240 | set11nTries(i->rates, 2) in ar9002_set_txdesc() 241 | set11nTries(i->rates, 3) in ar9002_set_txdesc() 245 WRITE_ONCE(ads->ds_ctl3, set11nRate(i->rates, 0) in ar9002_set_txdesc() 246 | set11nRate(i->rates, 1) in ar9002_set_txdesc() 247 | set11nRate(i->rates, 2) in ar9002_set_txdesc() 248 | set11nRate(i->rates, 3)); in ar9002_set_txdesc() 298 WRITE_ONCE(ads->ds_ctl4, set11nPktDurRTSCTS(i->rates, 0) in ar9002_set_txdesc() 299 | set11nPktDurRTSCTS(i->rates, 1)); in ar9002_set_txdesc() [all …]
|
| D | xmit.c | 160 ieee80211_get_tx_rates(vif, sta, bf->bf_mpdu, bf->rates, in ath_set_rates() 161 ARRAY_SIZE(bf->rates)); in ath_set_rates() 455 struct ieee80211_tx_rate rates[4]; in ath_tx_complete_aggr() local 465 memcpy(rates, bf->rates, sizeof(rates)); in ath_tx_complete_aggr() 469 retries += rates[i].count; in ath_tx_complete_aggr() 579 memcpy(tx_info->control.rates, rates, sizeof(rates)); in ath_tx_complete_aggr() 675 airtime += rate_dur * bf->rates[i].count; in ath_tx_count_airtime() 716 memcpy(info->control.rates, bf->rates, in ath_tx_process_buffer() 717 sizeof(info->control.rates)); in ath_tx_process_buffer() 734 struct ieee80211_tx_rate *rates; in ath_lookup_legacy() local [all …]
|
| /kernel/linux/linux-4.19/drivers/net/wireless/ath/ath9k/ |
| D | ar9002_mac.c | 238 WRITE_ONCE(ads->ds_ctl2, set11nTries(i->rates, 0) in ar9002_set_txdesc() 239 | set11nTries(i->rates, 1) in ar9002_set_txdesc() 240 | set11nTries(i->rates, 2) in ar9002_set_txdesc() 241 | set11nTries(i->rates, 3) in ar9002_set_txdesc() 245 WRITE_ONCE(ads->ds_ctl3, set11nRate(i->rates, 0) in ar9002_set_txdesc() 246 | set11nRate(i->rates, 1) in ar9002_set_txdesc() 247 | set11nRate(i->rates, 2) in ar9002_set_txdesc() 248 | set11nRate(i->rates, 3)); in ar9002_set_txdesc() 298 WRITE_ONCE(ads->ds_ctl4, set11nPktDurRTSCTS(i->rates, 0) in ar9002_set_txdesc() 299 | set11nPktDurRTSCTS(i->rates, 1)); in ar9002_set_txdesc() [all …]
|
| D | xmit.c | 194 ieee80211_get_tx_rates(vif, sta, bf->bf_mpdu, bf->rates, in ath_set_rates() 195 ARRAY_SIZE(bf->rates)); in ath_set_rates() 500 struct ieee80211_tx_rate rates[4]; in ath_tx_complete_aggr() local 512 memcpy(rates, bf->rates, sizeof(rates)); in ath_tx_complete_aggr() 516 retries += rates[i].count; in ath_tx_complete_aggr() 626 memcpy(tx_info->control.rates, rates, sizeof(rates)); in ath_tx_complete_aggr() 722 airtime += rate_dur * bf->rates[i].count; in ath_tx_count_airtime() 773 memcpy(info->control.rates, bf->rates, in ath_tx_process_buffer() 774 sizeof(info->control.rates)); in ath_tx_process_buffer() 791 struct ieee80211_tx_rate *rates; in ath_lookup_legacy() local [all …]
|
| /kernel/linux/linux-5.10/drivers/net/wireless/mediatek/mt76/mt7603/ |
| D | mac.c | 703 struct ieee80211_tx_rate *rates) in mt7603_wtbl_set_rates() argument 721 rates[i] = rates[n_rates - 1]; in mt7603_wtbl_set_rates() 724 memcpy(sta->rateset[rateset].rates, rates, in mt7603_wtbl_set_rates() 725 sizeof(sta->rateset[rateset].rates)); in mt7603_wtbl_set_rates() 731 ref = &sta->rateset[rateset].rates[0]; in mt7603_wtbl_set_rates() 734 rates = sta->rateset[rateset].rates; in mt7603_wtbl_set_rates() 735 for (i = 0; i < ARRAY_SIZE(sta->rateset[rateset].rates); i++) { in mt7603_wtbl_set_rates() 743 if ((ref->flags ^ rates[i].flags) & IEEE80211_TX_RC_SHORT_GI) in mt7603_wtbl_set_rates() 744 rates[i].flags ^= IEEE80211_TX_RC_SHORT_GI; in mt7603_wtbl_set_rates() 747 if (rates[i].idx != rates[k].idx) in mt7603_wtbl_set_rates() [all …]
|