b43: N-PHY: improve 2055 radio initialization
authorRafał Miłecki <zajec5@gmail.com>
Fri, 22 Oct 2010 15:43:49 +0000 (17:43 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 15 Nov 2010 18:24:35 +0000 (13:24 -0500)
1) Upload 5 GHz values when needed.
2) Do not upload all values on first init. Follow wl.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/b43/phy_n.c

index c22dbfb..6facb8a 100644 (file)
@@ -241,10 +241,13 @@ static void b43_radio_init2055_post(struct b43_wldev *dev)
 static void b43_radio_init2055(struct b43_wldev *dev)
 {
        b43_radio_init2055_pre(dev);
-       if (b43_status(dev) < B43_STAT_INITIALIZED)
-               b2055_upload_inittab(dev, 0, 1);
-       else
-               b2055_upload_inittab(dev, 0/*FIXME on 5ghz band*/, 0);
+       if (b43_status(dev) < B43_STAT_INITIALIZED) {
+               /* Follow wl, not specs. Do not force uploading all regs */
+               b2055_upload_inittab(dev, 0, 0);
+       } else {
+               bool ghz5 = b43_current_band(dev->wl) == IEEE80211_BAND_5GHZ;
+               b2055_upload_inittab(dev, ghz5, 0);
+       }
        b43_radio_init2055_post(dev);
 }