Lines Matching refs:ni

196 ieee80211_parse_ath(struct ieee80211_node *ni, uint8_t *ie)
201 ni->ni_ath_flags = ath->ath_capability;
202 ni->ni_ath_defkeyix = le16dec(&ath->ath_defkeyix);
206 ieee80211_parse_athparams(struct ieee80211_node *ni, uint8_t *frm,
209 struct ieee80211vap *vap = ni->ni_vap;
222 capschanged = (ni->ni_ath_flags != ath->ath_capability);
224 if (capschanged || defkeyix != ni->ni_ath_defkeyix) {
225 ni->ni_ath_flags = ath->ath_capability;
226 ni->ni_ath_defkeyix = defkeyix;
227 IEEE80211_NOTE(vap, IEEE80211_MSG_SUPERG, ni,
229 ni->ni_ath_flags, ni->ni_ath_defkeyix);
231 if (IEEE80211_ATH_CAP(vap, ni, ATHEROS_CAP_TURBO_PRIME)) {
256 ieee80211_ff_decap(struct ieee80211_node *ni, struct mbuf *m)
260 struct ieee80211vap *vap = ni->ni_vap;
267 KASSERT(IEEE80211_ATH_CAP(vap, ni, IEEE80211_NODE_FF),
277 ni->ni_macaddr, "fast-frame",
290 ni->ni_macaddr, "fast-frame",
309 ni->ni_macaddr, "fast-frame", "%s", "first decap failed");
316 ni->ni_macaddr, "fast-frame",
323 vap->iv_deliver_data(vap, ni, m); /* 1st of pair */
332 ni->ni_macaddr, "fast-frame", "%s", "second decap failed");
578 ff_transmit(struct ieee80211_node *ni, struct mbuf *m)
580 struct ieee80211vap *vap = ni->ni_vap;
581 struct ieee80211com *ic = ni->ni_ic;
586 m = ieee80211_encap(vap, ni, m);
590 ieee80211_free_node(ni);
602 struct ieee80211_node *ni;
609 ni = (struct ieee80211_node *) m->m_pkthdr.rcvif;
610 vap = ni->ni_vap;
612 IEEE80211_NOTE(vap, IEEE80211_MSG_SUPERG, ni,
616 ff_transmit(ni, m);
628 struct ieee80211_node *ni;
643 ni = (struct ieee80211_node *) m->m_pkthdr.rcvif;
644 KASSERT(ni->ni_tx_superg[tid] == m, ("staging queue empty"));
645 ni->ni_tx_superg[tid] = NULL;
705 ff_approx_txtime(struct ieee80211_node *ni,
708 struct ieee80211com *ic = ni->ni_ic;
709 struct ieee80211vap *vap = ni->ni_vap;
733 if (ni->ni_txrate & IEEE80211_RATE_MCS)
735 ni->ni_txrate,
736 IEEE80211_HT_RC_2_STREAMS(ni->ni_txrate),
741 ni->ni_txrate, 0);
751 ieee80211_ff_check(struct ieee80211_node *ni, struct mbuf *m)
753 struct ieee80211vap *vap = ni->ni_vap;
754 struct ieee80211com *ic = ni->ni_ic;
777 tap = &ni->ni_tx_ampdu[WME_AC_TO_TID(pri)];
778 mstaged = ni->ni_tx_superg[WME_AC_TO_TID(pri)];
811 (txtime = ff_approx_txtime(ni, m, mstaged)) > limit) {
821 ni->ni_tx_superg[WME_AC_TO_TID(pri)] = NULL;
828 IEEE80211_NOTE(vap, IEEE80211_MSG_SUPERG, ni,
831 ff_transmit(ni, mstaged);
844 ni->ni_tx_superg[WME_AC_TO_TID(pri)] = NULL;
848 IEEE80211_NOTE(vap, IEEE80211_MSG_SUPERG, ni,
854 KASSERT(mstaged->m_pkthdr.rcvif == (void *)ni,
855 ("rcvif %p ni %p", mstaged->m_pkthdr.rcvif, ni));
856 ieee80211_free_node(ni);
862 KASSERT(ni->ni_tx_superg[WME_AC_TO_TID(pri)] == NULL,
864 ni->ni_tx_superg[WME_AC_TO_TID(pri)]));
865 ni->ni_tx_superg[WME_AC_TO_TID(pri)] = m;
870 IEEE80211_NOTE(vap, IEEE80211_MSG_SUPERG, ni,
878 ieee80211_amsdu_check(struct ieee80211_node *ni, struct mbuf *m)
887 if (! ieee80211_amsdu_tx_ok(ni))
898 return (ieee80211_ff_check(ni, m));
902 ieee80211_ff_node_init(struct ieee80211_node *ni)
909 ieee80211_ff_node_cleanup(ni);
919 ieee80211_ff_node_cleanup(struct ieee80211_node *ni)
921 struct ieee80211com *ic = ni->ni_ic;
936 ieee80211_txampdu_init_pps(&ni->ni_tx_ampdu[tid]);
937 m = ni->ni_tx_superg[tid];
939 ni->ni_tx_superg[tid] = NULL;
955 ieee80211_free_node(ni);