Lines Matching defs:an

85  * This file is an implementation of the SampleRate algorithm
174 struct ath_node *an, uint8_t rix0, int is_aggr)
178 struct sample_node *sn = ATH_NODE_SAMPLE(an);
182 int is_ht40 = (an->an_node.ni_chw == 40);
282 ath_rate_node_init(struct ath_softc *sc, struct ath_node *an)
288 ath_rate_node_cleanup(struct ath_softc *sc, struct ath_node *an)
314 pick_best_rate(struct ath_node *an, const HAL_RATE_TABLE *rt,
317 struct sample_node *sn = ATH_NODE_SAMPLE(an);
330 if ((an->an_node.ni_flags & IEEE80211_NODE_HT) &&
359 if (an->an_node.ni_flags & IEEE80211_NODE_HT) {
363 IEEE80211_NOTE(an->an_node.ni_vap,
365 &an->an_node,
386 if (! (an->an_node.ni_flags & IEEE80211_NODE_HT)) {
399 if (an->an_node.ni_flags & IEEE80211_NODE_HT) {
414 pick_sample_rate(struct sample_softc *ssc , struct ath_node *an,
419 struct sample_node *sn = ATH_NODE_SAMPLE(an);
445 * non-MCS rates when speaking to an MCS node.
460 if ((an->an_node.ni_flags & IEEE80211_NODE_HT) &&
491 if (an->an_node.ni_flags & IEEE80211_NODE_HT) {
505 if (! (an->an_node.ni_flags & IEEE80211_NODE_HT)) {
549 struct ath_node *an = ATH_NODE(ni);
551 struct sample_node *sn = ATH_NODE_SAMPLE(an);
571 ath_rate_pick_seed_rate_legacy(struct ath_softc *sc, struct ath_node *an,
579 struct sample_node *sn = ATH_NODE_SAMPLE(an);
612 ath_rate_pick_seed_rate_ht(struct ath_softc *sc, struct ath_node *an,
620 struct sample_node *sn = ATH_NODE_SAMPLE(an);
659 ath_rate_findrate(struct ath_softc *sc, struct ath_node *an,
667 struct sample_node *sn = ATH_NODE_SAMPLE(an);
676 ath_rate_update_static_rix(sc, &an->an_node);
702 max_pkt_len = ath_rate_sample_find_min_pktlength(sc, an,
718 best_rix = pick_best_rate(an, rt, size_bin, !mrr);
725 max_pkt_len = ath_rate_sample_find_min_pktlength(sc, an, best_rix,
750 rix = pick_sample_rate(ssc, an, rt, size_bin);
751 IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
752 &an->an_node, "att %d sample_tt %d size %u "
772 if (an->an_node.ni_flags & IEEE80211_NODE_HT)
774 ath_rate_pick_seed_rate_ht(sc, an, frameLen);
777 ath_rate_pick_seed_rate_legacy(sc, an, frameLen);
780 IEEE80211_NOTE(an->an_node.ni_vap,
781 IEEE80211_MSG_RATECTL, &an->an_node,
786 IEEE80211_NOTE(an->an_node.ni_vap,
787 IEEE80211_MSG_RATECTL, &an->an_node,
791 } else if ((! (an->an_node.ni_flags & IEEE80211_NODE_HT)) &&
794 IEEE80211_NOTE(an->an_node.ni_vap,
795 IEEE80211_MSG_RATECTL, &an->an_node,
800 } else if ((an->an_node.ni_flags & IEEE80211_NODE_HT)) {
816 IEEE80211_NOTE(an->an_node.ni_vap,
817 IEEE80211_MSG_RATECTL, &an->an_node,
832 IEEE80211_NOTE(an->an_node.ni_vap,
834 &an->an_node,
857 an->an_node.ni_txrate =
897 ath_rate_getxtxrates(struct ath_softc *sc, struct ath_node *an,
900 struct sample_node *sn = ATH_NODE_SAMPLE(an);
925 ath_rate_setupxtxdesc(struct ath_softc *sc, struct ath_node *an,
928 struct sample_node *sn = ATH_NODE_SAMPLE(an);
962 update_stats(struct ath_softc *sc, struct ath_node *an,
968 struct sample_node *sn = ATH_NODE_SAMPLE(an);
976 int is_ht40 = (an->an_node.ni_chw == 40);
1060 IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
1061 &an->an_node,
1091 ath_rate_tx_complete(struct ath_softc *sc, struct ath_node *an,
1096 struct sample_node *sn = ATH_NODE_SAMPLE(an);
1149 IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
1150 &an->an_node,
1174 IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
1175 &an->an_node, "%s: size %d (%d bytes) %s rate/short/long %d %s/%d/%d nframes/nbad [%d/%d]",
1182 update_stats(sc, an, frame_size,
1195 IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
1196 &an->an_node,
1227 update_stats(sc, an, frame_size,
1236 update_stats(sc, an, frame_size,
1245 update_stats(sc, an, frame_size,
1254 update_stats(sc, an, frame_size,
1264 ath_rate_newassoc(struct ath_softc *sc, struct ath_node *an, int isnew)
1267 ath_rate_ctl_reset(sc, &an->an_node);
1271 ath_rate_update_rx_rssi(struct ath_softc *sc, struct ath_node *an, int rssi)
1299 struct ath_node *an = ATH_NODE(ni);
1300 struct sample_node *sn = ATH_NODE_SAMPLE(an);
1429 ath_rate_fetch_node_stats(struct ath_softc *sc, struct ath_node *an,
1432 struct sample_node *sn = ATH_NODE_SAMPLE(an);
1439 ATH_NODE_LOCK_ASSERT(an);