Lines Matching defs:vap

139  * ATH_BCBUF determines the number of vap's that can transmit
140 * beacons and also (currently) the number of vap's that can
1458 * The first vap uses the MAC address from the EEPROM. For
1459 * subsequent vap's we set the U/L bit (bit 1) in the MAC
1530 struct ieee80211vap *vap;
1540 ic_opmode = opmode; /* default to opmode of new vap */
1544 device_printf(sc->sc_dev, "only 1 sta vap supported\n");
1564 "only 1 ibss vap supported\n");
1574 "only 1 tdma vap supported\n");
1586 * vap to an existing configuration is of dubious
1605 * bssid; WDS vap's always share the local
1632 vap = &avp->av_vap;
1635 error = ieee80211_vap_setup(ic, vap, name, unit, opmode, flags, bssid);
1638 device_printf(sc->sc_dev, "%s: error %d creating vap\n",
1644 vap->iv_key_alloc = ath_key_alloc;
1645 vap->iv_key_delete = ath_key_delete;
1646 vap->iv_key_set = ath_key_set;
1647 vap->iv_key_update_begin = ath_key_update_begin;
1648 vap->iv_key_update_end = ath_key_update_end;
1651 avp->av_recv_mgmt = vap->iv_recv_mgmt;
1652 vap->iv_recv_mgmt = ath_recv_mgmt;
1653 vap->iv_reset = ath_reset_vap;
1654 vap->iv_update_beacon = ath_beacon_update;
1655 avp->av_newstate = vap->iv_newstate;
1656 vap->iv_newstate = ath_newstate;
1657 avp->av_bmiss = vap->iv_bmiss;
1658 vap->iv_bmiss = ath_bmiss_vap;
1660 avp->av_node_ps = vap->iv_node_ps;
1661 vap->iv_node_ps = ath_node_powersave;
1663 avp->av_set_tim = vap->iv_set_tim;
1664 vap->iv_set_tim = ath_node_set_tim;
1666 avp->av_recv_pspoll = vap->iv_recv_pspoll;
1667 vap->iv_recv_pspoll = ath_node_recv_pspoll;
1675 vap->iv_ampdu_density = IEEE80211_HTCAP_MPDUDENSITY_8;
1682 vap->iv_ampdu_rxmax = IEEE80211_HTCAP_MAXRXAMPDU_64K;
1683 vap->iv_ampdu_limit = IEEE80211_HTCAP_MAXRXAMPDU_64K;
1696 * Assign the vap to a beacon xmit slot. As above
1702 sc->sc_bslot[avp->av_bslot] = vap;
1733 if (vap->iv_caps & IEEE80211_C_TDMA) {
1770 ieee80211_vap_attach(vap, ieee80211_media_change,
1772 return vap;
1783 ath_vap_delete(struct ieee80211vap *vap)
1785 struct ieee80211com *ic = vap->iv_ic;
1788 struct ath_vap *avp = ATH_VAP(vap);
1797 * Quiesce the hardware while we remove the vap. In
1799 * the vap state by any frames pending on the tx queues.
1810 ieee80211_vap_detach(vap);
1818 * to a node whose vap is about to be freed.
1834 * the vap instance is reclaimed as we may have a reference
1850 * Reclaim any pending mcast frames for the vap.
1857 if (vap->iv_opmode == IEEE80211_M_STA) {
1861 } else if (vap->iv_opmode == IEEE80211_M_HOSTAP ||
1862 vap->iv_opmode == IEEE80211_M_STA ||
1863 vap->iv_opmode == IEEE80211_M_MBSS) {
1864 reclaim_address(sc, vap->iv_myaddr);
1866 if (vap->iv_opmode == IEEE80211_M_MBSS)
1869 if (vap->iv_opmode != IEEE80211_M_WDS)
1872 /* TDMA operation ceases when the last vap is destroyed */
1883 * be reset if we just destroyed the last vap).
2206 struct ieee80211vap *vap =
2208 ath_tdma_beacon_send(sc, vap);
2210 vap->iv_tdma->tdma_bintval;
2393 ath_bmiss_vap(struct ieee80211vap *vap)
2395 struct ath_softc *sc = vap->iv_ic->ic_softc;
2415 if ((vap->iv_flags_ext & IEEE80211_FEXT_SWBMISS) == 0) {
2420 vap->iv_bmissthreshold * vap->iv_bss->ni_intval * 1024;
2462 ATH_VAP(vap)->av_bmiss(vap);
2542 struct ieee80211vap *vap;
2545 TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) {
2546 avp = ATH_VAP(vap);
3090 ath_reset_vap(struct ieee80211vap *vap, u_long cmd)
3092 struct ieee80211com *ic = vap->iv_ic;
3560 ath_key_update_begin(struct ieee80211vap *vap)
3562 struct ath_softc *sc = vap->iv_ic->ic_softc;
3569 ath_key_update_end(struct ieee80211vap *vap)
3571 struct ath_softc *sc = vap->iv_ic->ic_softc;
3607 struct ieee80211vap *vap;
3615 TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) {
3616 ifp = vap->iv_ifp;
3863 ath_node_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN])
3865 struct ieee80211com *ic = vap->iv_ic;
5632 struct ieee80211vap *vap = ni->ni_vap;
5633 struct ath_vap *avp = ATH_VAP(vap);
5634 struct ieee80211com *ic = vap->iv_ic;
5637 if (vap->iv_opmode != IEEE80211_M_STA)
5756 * Walk the vap list and check if there any vap's in RUN state.
5762 struct ieee80211vap *vap;
5766 TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) {
5767 if (vap != this && vap->iv_state >= IEEE80211_S_RUN)
5774 ath_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg)
5776 struct ieee80211com *ic = vap->iv_ic;
5778 struct ath_vap *avp = ATH_VAP(vap);
5784 enum ieee80211_state ostate = vap->iv_state;
5803 * There are some comments around the calls to vap->iv_newstate
5861 ni = ieee80211_ref_node(vap->iv_bss);
5863 stamode = (vap->iv_opmode == IEEE80211_M_STA ||
5864 vap->iv_opmode == IEEE80211_M_AHDEMO ||
5865 vap->iv_opmode == IEEE80211_M_IBSS);
5881 if (vap->iv_opmode != IEEE80211_M_STA &&
5882 (vap->iv_flags & IEEE80211_F_PRIVACY)) {
5891 error = avp->av_newstate(vap, nstate, arg);
5954 ni = ieee80211_ref_node(vap->iv_bss);
5959 vap->iv_flags, ni->ni_intval, ether_sprintf(ni->ni_bssid),
5962 switch (vap->iv_opmode) {
5965 if ((vap->iv_caps & IEEE80211_C_TDMA) == 0)
5999 * if this is the first vap moving to RUN state, then
6002 if (vap->iv_opmode == IEEE80211_M_IBSS &&
6007 if (vap->iv_caps & IEEE80211_C_TDMA)
6008 ath_tdma_config(sc, vap);
6011 ath_beacon_config(sc, vap);
6041 ath_beacon_config(sc, vap);
6062 * handle the case of a single monitor mode vap.
6115 if (!ath_isanyrunningvaps(vap)) {
6138 /* For now, only do this if we're a single STA vap */
6140 vap->iv_opmode == IEEE80211_M_STA) {
6220 struct ieee80211vap *vap = ni->ni_vap;
6221 struct ath_softc *sc = vap->iv_ic->ic_softc;
6224 /* XXX should take a locked ref to vap->iv_bss */
6225 if (!ath_key_alloc(vap, &ni->ni_ucastkey, &keyix, &rxkeyix)) {
6240 ath_keyset(sc, vap, &ni->ni_ucastkey, vap->iv_bss);
6253 struct ieee80211vap *vap = ni->ni_vap;
6254 struct ath_softc *sc = vap->iv_ic->ic_softc;
6272 (vap->iv_flags & IEEE80211_F_PRIVACY) == 0 && sc->sc_hasclrkey &&