On Thu, 2006-03-23 at 16:04 -0500, John W. Linville wrote:
> Please do resubmit the patch w/ the comment changes. 

Below.

>  I'd also like to see the outcome of the related discussion on the
> bcm43xx-dev list.

The discussion with Hans? I'm not sure that's really related to the
rates -- that's more to do with the other initialisation stuff, like
actually trying to associate when dhclient brings the interface up.

---

We don't make much of an attempt to fall back to lower rates, and 54M
just isn't reliable enough for many people. In fact, it's not clear we
even set it to 11M if we're trying to associate with an 802.11b AP. 

This patch makes us default to 11M, which ought to work for most people.
When we actually handle dynamic rate adjustment, we can reconsider the
defaults -- but even then, probably it makes as much sense to start at
11M and adjust it upwards as it does to start at 54M and reduce it.

Signed-off-by: David Woodhouse <[EMAIL PROTECTED]>

diff --git a/net/ieee80211/softmac/ieee80211softmac_module.c 
b/net/ieee80211/softmac/ieee80211softmac_module.c
index 6f99f78..9ba9eec 100644
--- a/net/ieee80211/softmac/ieee80211softmac_module.c
+++ b/net/ieee80211/softmac/ieee80211softmac_module.c
@@ -183,7 +183,11 @@ void ieee80211softmac_start(struct net_d
         */
        if (mac->txrates_change)
                oldrates = mac->txrates;
-       if (ieee->modulation & IEEE80211_OFDM_MODULATION) {
+       /* FIXME: We don't correctly handle backing down to lower rates,
+          so start off at 11M for now. People can manually change it if
+          they really need to, but 11M is more reliable. Note similar
+          logic in ieee80211softmac_wx_set_rate() */    
+       if (0 && ieee->modulation & IEEE80211_OFDM_MODULATION) {
                mac->txrates.default_rate = IEEE80211_OFDM_RATE_54MB;
                change |= IEEE80211SOFTMAC_TXRATECHG_DEFAULT;
                mac->txrates.default_fallback = IEEE80211_OFDM_RATE_24MB;
diff --git a/net/ieee80211/softmac/ieee80211softmac_wx.c 
b/net/ieee80211/softmac/ieee80211softmac_wx.c
index e1a9bc6..733d808 100644
--- a/net/ieee80211/softmac/ieee80211softmac_wx.c
+++ b/net/ieee80211/softmac/ieee80211softmac_wx.c
@@ -135,8 +135,11 @@ ieee80211softmac_wx_set_rate(struct net_
        int err = -EINVAL;
 
        if (in_rate == -1) {
-               /* automatic detect */
-               if (ieee->modulation & IEEE80211_OFDM_MODULATION)
+               /* FIXME: We don't correctly handle backing down to lower rates,
+                  so start off at 11M for now. People can manually change it if
+                  they really need to, but 11M is more reliable. Note similar
+                  logic in ieee80211softmac_start() */  
+               if (0 && ieee->modulation & IEEE80211_OFDM_MODULATION)
                        in_rate = 54000000;
                else
                        in_rate = 11000000;


-- 
dwmw2

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to