Date: Fri, 31 May 2013 22:08:26 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r251202 - in user/adrian/net80211_tx/sys/dev: iwn ral Message-ID: <201305312208.r4VM8Qxm086032@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Fri May 31 22:08:25 2013 New Revision: 251202 URL: http://svnweb.freebsd.org/changeset/base/251202 Log: Remove the direct fondling of the net80211 rate table; replace it with a method call. Since this is all legacy pre-11n rate fiddling, make sure we clear the basic rate bit before we do the lookup. Tested: * iwn(4) Not testeD: * RAL - I don't currently have any hardware for this. :( Modified: user/adrian/net80211_tx/sys/dev/iwn/if_iwn.c user/adrian/net80211_tx/sys/dev/ral/rt2560.c user/adrian/net80211_tx/sys/dev/ral/rt2661.c user/adrian/net80211_tx/sys/dev/ral/rt2860.c Modified: user/adrian/net80211_tx/sys/dev/iwn/if_iwn.c ============================================================================== --- user/adrian/net80211_tx/sys/dev/iwn/if_iwn.c Fri May 31 22:07:28 2013 (r251201) +++ user/adrian/net80211_tx/sys/dev/iwn/if_iwn.c Fri May 31 22:08:25 2013 (r251202) @@ -2136,7 +2136,8 @@ iwn_newassoc(struct ieee80211_node *ni, for (i = 0; i < ni->ni_rates.rs_nrates; i++) { rate = RV(ni->ni_rates.rs_rates[i]); plcp = rate2plcp(rate); - ridx = ic->ic_rt->rateCodeToIndex[rate]; + ridx = ieee80211_legacy_rate_lookup(ic->ic_rt, + rate & IEEE80211_RATE_VAL); if (ridx < IWN_RIDX_OFDM6 && IEEE80211_IS_CHAN_2GHZ(ni->ni_chan)) plcp |= IWN_RFLAG_CCK; @@ -3400,7 +3401,8 @@ iwn_tx_data(struct iwn_softc *sc, struct (void) ieee80211_ratectl_rate(ni, NULL, 0); rate = ni->ni_txrate; } - ridx = ic->ic_rt->rateCodeToIndex[rate]; + ridx = ieee80211_legacy_rate_lookup(ic->ic_rt, + rate & IEEE80211_RATE_VAL); /* Encrypt the frame if need be. */ if (wh->i_fc[1] & IEEE80211_FC1_WEP) { @@ -3637,7 +3639,8 @@ iwn_tx_data_raw(struct iwn_softc *sc, st /* Choose a TX rate index. */ rate = params->ibp_rate0; - ridx = ic->ic_rt->rateCodeToIndex[rate]; + ridx = ieee80211_legacy_rate_lookup(ic->ic_rt, + rate & IEEE80211_RATE_VAL); if (ridx == (uint8_t)-1) { /* XXX fall back to mcast/mgmt rate? */ m_freem(m); Modified: user/adrian/net80211_tx/sys/dev/ral/rt2560.c ============================================================================== --- user/adrian/net80211_tx/sys/dev/ral/rt2560.c Fri May 31 22:07:28 2013 (r251201) +++ user/adrian/net80211_tx/sys/dev/ral/rt2560.c Fri May 31 22:08:25 2013 (r251202) @@ -2370,7 +2370,7 @@ rt2560_set_basicrates(struct rt2560_soft if (!(rate & IEEE80211_RATE_BASIC)) continue; - mask |= 1 << ic->ic_rt->rateCodeToIndex[RV(rate)]; + mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, RV(rate)); } RAL_WRITE(sc, RT2560_ARSP_PLCP_1, mask); Modified: user/adrian/net80211_tx/sys/dev/ral/rt2661.c ============================================================================== --- user/adrian/net80211_tx/sys/dev/ral/rt2661.c Fri May 31 22:07:28 2013 (r251201) +++ user/adrian/net80211_tx/sys/dev/ral/rt2661.c Fri May 31 22:08:25 2013 (r251202) @@ -1923,7 +1923,7 @@ rt2661_set_basicrates(struct rt2661_soft if (!(rate & IEEE80211_RATE_BASIC)) continue; - mask |= 1 << ic->ic_rt->rateCodeToIndex[RV(rate)]; + mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, RV(rate)); } RAL_WRITE(sc, RT2661_TXRX_CSR5, mask); Modified: user/adrian/net80211_tx/sys/dev/ral/rt2860.c ============================================================================== --- user/adrian/net80211_tx/sys/dev/ral/rt2860.c Fri May 31 22:07:28 2013 (r251201) +++ user/adrian/net80211_tx/sys/dev/ral/rt2860.c Fri May 31 22:08:25 2013 (r251202) @@ -1528,7 +1528,7 @@ rt2860_tx(struct rt2860_softc *sc, struc tid = 0; } ring = &sc->txq[qid]; - ridx = ic->ic_rt->rateCodeToIndex[rate]; + ridx = ieee80211_legacy_rate_lookup(ic->ic_rt, rate); /* get MCS code from rate index */ mcs = rt2860_rates[ridx].mcs; @@ -1779,7 +1779,8 @@ rt2860_tx_raw(struct rt2860_softc *sc, s /* Choose a TX rate index. */ rate = params->ibp_rate0; - ridx = ic->ic_rt->rateCodeToIndex[rate]; + ridx = ieee80211_legacy_rate_lookup(ic->ic_rt, + rate & IEEE80211_RATE_VAL); if (ridx == (uint8_t)-1) { /* XXX fall back to mcast/mgmt rate? */ m_freem(m); @@ -2311,7 +2312,7 @@ rt2860_set_basicrates(struct rt2860_soft if (!(rate & IEEE80211_RATE_BASIC)) continue; - mask |= 1 << ic->ic_rt->rateCodeToIndex[RV(rate)]; + mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, RV(rate)); } RAL_WRITE(sc, RT2860_LEGACY_BASIC_RATE, mask);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201305312208.r4VM8Qxm086032>