Date: Thu, 4 Aug 2005 16:17:56 GMT From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 81453 for review Message-ID: <200508041617.j74GHuTA096227@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=81453 Change 81453 by sam@sam_ebb on 2005/08/04 16:16:55 o enable dynamic turbo use o pass beacon miss to net80211 layer o track ath protocol handling changes Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#98 edit Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#98 (text+ko) ==== @@ -547,10 +547,8 @@ ic->ic_caps |= IEEE80211_C_BURST; if (ath_hal_hasfastframes(ah)) ic->ic_caps |= IEEE80211_C_FF; -#ifdef notyet - if (ath_hal_getwirelessmodes(ah) & (HAL_MODE_108G|HAL_MODE_TURBO)) + if (ath_hal_getwirelessmodes(ah, ath_countrycode) & (HAL_MODE_108G|HAL_MODE_TURBO)) ic->ic_caps |= IEEE80211_C_TURBOP; -#endif /* * Indicate we need the 802.11 header padded to a @@ -815,22 +813,10 @@ ath_bmiss_proc(void *arg, int pending) { struct ath_softc *sc = arg; - struct ieee80211com *ic = &sc->sc_ic; DPRINTF(sc, ATH_DEBUG_ANY, "%s: pending %u\n", __func__, pending); - KASSERT(ic->ic_opmode == IEEE80211_M_STA, - ("unexpect operating mode %u", ic->ic_opmode)); - if (ic->ic_state == IEEE80211_S_RUN) { - /* - * Rather than go directly to scan state, try to - * reassociate first. If that fails then the state - * machine will drop us into scanning after timing - * out waiting for a probe response. - */ - NET_LOCK_GIANT(); - ieee80211_new_state(ic, IEEE80211_S_ASSOC, -1); - NET_UNLOCK_GIANT(); - } + + ieee80211_beacon_miss(&sc->sc_ic); } static u_int @@ -1530,7 +1516,7 @@ } pri = M_WME_GETAC(m); txq = sc->sc_ac2q[pri]; - if (ni->ni_flags & IEEE80211_NODE_FF) { + if (ni->ni_ath_flags & IEEE80211_NODE_FF) { /* * Check queue length; if too deep drop this * frame (tail drop considered good). @@ -3884,7 +3870,7 @@ flags |= HAL_TXDESC_NOACK; /* no ack on broad/multicast */ sc->sc_stats.ast_tx_noack++; } else if (pktlen > ic->ic_rtsthreshold && - (ni->ni_flags & IEEE80211_NODE_FF) == 0) { + (ni->ni_ath_flags & IEEE80211_NODE_FF) == 0) { flags |= HAL_TXDESC_RTSENA; /* RTS based on frame length */ cix = rt->info[rix].controlRate; sc->sc_stats.ast_tx_rts++;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200508041617.j74GHuTA096227>