fix txparms setup for 108G sta's: ieee80211_iserp_rateset does not

identify a station operating in turbo-boost mode because it has a
pure ofdm rate set; add an explicit check for the channel type
instead of depending on IEEE80211_NODE_ERP being set
This commit is contained in:
Sam Leffler 2009-04-13 20:45:29 +00:00
parent e0769d2dff
commit c5262b82e6

@ -237,16 +237,17 @@ node_setuptxparms(struct ieee80211_node *ni)
else
mode = IEEE80211_MODE_11NG;
} else { /* legacy rate handling */
/* NB: 108A/108G should be handled as 11a/11g respectively */
if (IEEE80211_IS_CHAN_ST(ni->ni_chan))
mode = IEEE80211_MODE_STURBO_A;
else if (IEEE80211_IS_CHAN_HALF(ni->ni_chan))
mode = IEEE80211_MODE_HALF;
else if (IEEE80211_IS_CHAN_QUARTER(ni->ni_chan))
mode = IEEE80211_MODE_QUARTER;
/* NB: 108A should be handled as 11a */
else if (IEEE80211_IS_CHAN_A(ni->ni_chan))
mode = IEEE80211_MODE_11A;
else if (ni->ni_flags & IEEE80211_NODE_ERP)
else if (IEEE80211_IS_CHAN_108G(ni->ni_chan) ||
(ni->ni_flags & IEEE80211_NODE_ERP))
mode = IEEE80211_MODE_11G;
else
mode = IEEE80211_MODE_11B;