There is a bug in SoftMAC that initializes data rates for all devices to 11 
Mbs. Now that many of
the devices will actually run at higher rates, this patch fixes that bug.

As not all chips will run at speeds above 11 Mbs, I will not be sending this 
patch upstream to
Linville, but I wanted it available for the users. As you see, I'm setting a 
rate of 24 Mbs. If your
card works at 36, please change that line.

Larry
================================


A bug in SoftMAC will preferentially select a rate of 11 Mbytes/sec, even though
the device has an 802.11g PHY. This patch changes the order of testing
to set an OFDM rate for G PHY's. At present, a rate of 54 Mbytes/sec has
not been achieved; therefore the rate is initialized to 24 Mbs.

Signed-off-by: Larry Finger<[EMAIL PROTECTED]>
---

Index: linux-2.6/net/ieee80211/softmac/ieee80211softmac_module.c
===================================================================
--- linux-2.6.orig/net/ieee80211/softmac/ieee80211softmac_module.c
+++ linux-2.6/net/ieee80211/softmac/ieee80211softmac_module.c
@@ -270,10 +270,10 @@ void ieee80211softmac_init_bss(struct ie
           can manually change it if they really need to, but 11M is
           more reliable. Note similar logic in
           ieee80211softmac_wx_set_rate() */    
-       if (ieee->modulation & IEEE80211_CCK_MODULATION) {
-               txrates->user_rate = IEEE80211_CCK_RATE_11MB;
+       if (ieee->modulation & IEEE80211_OFDM_MODULATION) {
+               txrates->user_rate = IEEE80211_OFDM_RATE_24MB;
        } else if (ieee->modulation & IEEE80211_OFDM_MODULATION) {
-               txrates->user_rate = IEEE80211_OFDM_RATE_54MB;
+               txrates->user_rate = IEEE80211_CCK_RATE_11MB;
        } else
                assert(0);


---



SoftMAC will preferentially select a rate of 11 Mbytes/sec, even though
the device has an 802.11g PHY. This patch changes the order of testing
to set an OFDM rate for G PHY's. At present, a rate of 54 Mbytes/sec has
not been achieved; therefore the rate is initialized to 24 Mbs.

Signed-off-by: Larry Finger<[EMAIL PROTECTED]>
---
 
Index: linux-2.6/net/ieee80211/softmac/ieee80211softmac_module.c
===================================================================
--- linux-2.6.orig/net/ieee80211/softmac/ieee80211softmac_module.c
+++ linux-2.6/net/ieee80211/softmac/ieee80211softmac_module.c
@@ -270,10 +270,10 @@ void ieee80211softmac_init_bss(struct ie
           can manually change it if they really need to, but 11M is
           more reliable. Note similar logic in
           ieee80211softmac_wx_set_rate() */     
-       if (ieee->modulation & IEEE80211_CCK_MODULATION) {
-               txrates->user_rate = IEEE80211_CCK_RATE_11MB;
+       if (ieee->modulation & IEEE80211_OFDM_MODULATION) {
+               txrates->user_rate = IEEE80211_OFDM_RATE_24MB;
        } else if (ieee->modulation & IEEE80211_OFDM_MODULATION) {
-               txrates->user_rate = IEEE80211_OFDM_RATE_54MB;
+               txrates->user_rate = IEEE80211_CCK_RATE_11MB;
        } else
                assert(0);
 

---


_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to