diff options
author | avos <avos@FreeBSD.org> | 2016-05-02 15:14:16 +0000 |
---|---|---|
committer | avos <avos@FreeBSD.org> | 2016-05-02 15:14:16 +0000 |
commit | 75a20ac7276ccc369bfb17a47fbe2c2f0e4a7d19 (patch) | |
tree | 7895687423732ebd49c9f11c70e15dabd13361af | |
parent | 31a46ef3a08f0c7a1ae11902c997d491ae232162 (diff) | |
download | FreeBSD-src-75a20ac7276ccc369bfb17a47fbe2c2f0e4a7d19.zip FreeBSD-src-75a20ac7276ccc369bfb17a47fbe2c2f0e4a7d19.tar.gz |
iwn: do not buffer frames for non-passive channels (it's not needed).
-rw-r--r-- | sys/dev/iwn/if_iwn.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/iwn/if_iwn.c b/sys/dev/iwn/if_iwn.c index d0a952b..65724e7 100644 --- a/sys/dev/iwn/if_iwn.c +++ b/sys/dev/iwn/if_iwn.c @@ -2852,7 +2852,8 @@ iwn_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) sc->calib.state = IWN_CALIB_STATE_INIT; /* Wait until we hear a beacon before we transmit */ - sc->sc_beacon_wait = 1; + if (IEEE80211_IS_CHAN_PASSIVE(ic->ic_curchan)) + sc->sc_beacon_wait = 1; if ((error = iwn_auth(sc, vap)) != 0) { device_printf(sc->sc_dev, @@ -2870,7 +2871,8 @@ iwn_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) } /* Wait until we hear a beacon before we transmit */ - sc->sc_beacon_wait = 1; + if (IEEE80211_IS_CHAN_PASSIVE(ic->ic_curchan)) + sc->sc_beacon_wait = 1; /* * !RUN -> RUN requires setting the association id |