diff options
Diffstat (limited to 'net/ieee80211/softmac/ieee80211softmac_module.c')
-rw-r--r-- | net/ieee80211/softmac/ieee80211softmac_module.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/net/ieee80211/softmac/ieee80211softmac_module.c b/net/ieee80211/softmac/ieee80211softmac_module.c index 6f99f781bff8..60f06a31f0d1 100644 --- a/net/ieee80211/softmac/ieee80211softmac_module.c +++ b/net/ieee80211/softmac/ieee80211softmac_module.c | |||
@@ -183,16 +183,21 @@ void ieee80211softmac_start(struct net_device *dev) | |||
183 | */ | 183 | */ |
184 | if (mac->txrates_change) | 184 | if (mac->txrates_change) |
185 | oldrates = mac->txrates; | 185 | oldrates = mac->txrates; |
186 | if (ieee->modulation & IEEE80211_OFDM_MODULATION) { | 186 | /* FIXME: We don't correctly handle backing down to lower |
187 | mac->txrates.default_rate = IEEE80211_OFDM_RATE_54MB; | 187 | rates, so 801.11g devices start off at 11M for now. People |
188 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT; | 188 | can manually change it if they really need to, but 11M is |
189 | mac->txrates.default_fallback = IEEE80211_OFDM_RATE_24MB; | 189 | more reliable. Note similar logic in |
190 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT_FBACK; | 190 | ieee80211softmac_wx_set_rate() */ |
191 | } else if (ieee->modulation & IEEE80211_CCK_MODULATION) { | 191 | if (ieee->modulation & IEEE80211_CCK_MODULATION) { |
192 | mac->txrates.default_rate = IEEE80211_CCK_RATE_11MB; | 192 | mac->txrates.default_rate = IEEE80211_CCK_RATE_11MB; |
193 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT; | 193 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT; |
194 | mac->txrates.default_fallback = IEEE80211_CCK_RATE_5MB; | 194 | mac->txrates.default_fallback = IEEE80211_CCK_RATE_5MB; |
195 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT_FBACK; | 195 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT_FBACK; |
196 | } else if (ieee->modulation & IEEE80211_OFDM_MODULATION) { | ||
197 | mac->txrates.default_rate = IEEE80211_OFDM_RATE_54MB; | ||
198 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT; | ||
199 | mac->txrates.default_fallback = IEEE80211_OFDM_RATE_24MB; | ||
200 | change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT_FBACK; | ||
196 | } else | 201 | } else |
197 | assert(0); | 202 | assert(0); |
198 | if (mac->txrates_change) | 203 | if (mac->txrates_change) |