Lines Matching full:ni

77 static void	amrr_node_stats(struct ieee80211_node *ni, struct sbuf *s);
142 amrr_node_init(struct ieee80211_node *ni)
145 struct ieee80211vap *vap = ni->ni_vap;
156 if (ni->ni_rctls == NULL) {
157 ni->ni_rctls = amn = IEEE80211_MALLOC(sizeof(struct ieee80211_amrr_node),
165 amn = ni->ni_rctls;
173 if (ieee80211_ht_check_tx_ht(ni)) {
175 IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
177 rs = (struct ieee80211_rateset *) &ni->ni_htrates;
179 IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
181 rs = &ni->ni_rates;
188 if (! ieee80211_ht_check_tx_ht(ni))
197 if (ieee80211_ht_check_tx_ht(ni)) {
206 if (ieee80211_ht_check_tx_ht(ni))
210 ni->ni_txrate = rate;
215 IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
218 ieee80211_ht_check_tx_ht(ni) ? "MCS " : "",
223 amrr_node_deinit(struct ieee80211_node *ni)
225 IEEE80211_FREE(ni->ni_rctls, M_80211_RATECTL);
230 struct ieee80211_node *ni)
238 if (ieee80211_ht_check_tx_ht(ni)) {
240 rs = (struct ieee80211_rateset *) &ni->ni_htrates;
242 rs = &ni->ni_rates;
247 IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
270 IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
293 IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
314 amrr_rate(struct ieee80211_node *ni, void *arg __unused, uint32_t iarg __unused)
316 struct ieee80211_amrr_node *amn = ni->ni_rctls;
324 ni->ni_txrate = ni->ni_rates.rs_rates[0];
331 if (ieee80211_ht_check_tx_ht(ni)) {
333 rs = (struct ieee80211_rateset *) &ni->ni_htrates;
335 rs = &ni->ni_rates;
339 rix = amrr_update(amrr, amn, ni);
342 ni->ni_txrate = rs->rs_rates[rix];
344 if (ieee80211_ht_check_tx_ht(ni))
345 ni->ni_txrate |= IEEE80211_RATE_MCS;
347 ni->ni_txrate &= IEEE80211_RATE_VAL;
362 amrr_tx_complete(const struct ieee80211_node *ni,
365 struct ieee80211_amrr_node *amn = ni->ni_rctls;
382 amrr_tx_update_cb(void *arg, struct ieee80211_node *ni)
385 struct ieee80211_amrr_node *amn = ni->ni_rctls;
413 amrr_tx_update_cb(stats, stats->ni);
461 struct ieee80211_node *ni, struct sbuf *s)
466 if (ieee80211_ht_check_tx_ht(ni)) {
467 rs = (struct ieee80211_rateset *) &ni->ni_htrates;
471 rs = &ni->ni_rates;
478 amrr_node_stats(struct ieee80211_node *ni, struct sbuf *s)
480 struct ieee80211_amrr_node *amn = ni->ni_rctls;
487 amrr_print_node_rate(amn, ni, s);