b43: N-PHY: fix RSSI calibration
authorRafał Miłecki <zajec5@gmail.com>
Thu, 5 Jul 2012 19:55:46 +0000 (21:55 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 9 Jul 2012 20:36:36 +0000 (16:36 -0400)
Specs were updated, change code to match it.

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 108118820b3635dc5c4ebdd0bd5239630734850f..b92bb9c92ad1bb3a228f9e0fbf806da9686c6a5f 100644 (file)
@@ -1369,7 +1369,7 @@ static void b43_nphy_rev3_rssi_cal(struct b43_wldev *dev)
                                        i << 2);
                        b43_nphy_poll_rssi(dev, 2, results[i], 8);
                }
-               for (i = 0; i < 4; i++) {
+               for (i = 0; i < 4; i += 2) {
                        s32 curr;
                        s32 mind = 40;
                        s32 minpoll = 249;
@@ -1415,14 +1415,15 @@ static void b43_nphy_rev3_rssi_cal(struct b43_wldev *dev)
                        b43_nphy_scale_offset_rssi(dev, 0, 0, core + 1, 1, i);
                        b43_nphy_poll_rssi(dev, i, poll_results, 8);
                        for (j = 0; j < 4; j++) {
-                               if (j / 2 == core)
+                               if (j / 2 == core) {
                                        offset[j] = 232 - poll_results[j];
-                               if (offset[j] < 0)
-                                       offset[j] = -(abs(offset[j] + 4) / 8);
-                               else
-                                       offset[j] = (offset[j] + 4) / 8;
-                               b43_nphy_scale_offset_rssi(dev, 0,
-                                       offset[2 * core], core + 1, j % 2, i);
+                                       if (offset[j] < 0)
+                                               offset[j] = -(abs(offset[j] + 4) / 8);
+                                       else
+                                               offset[j] = (offset[j] + 4) / 8;
+                                       b43_nphy_scale_offset_rssi(dev, 0,
+                                               offset[2 * core], core + 1, j % 2, i);
+                               }
                        }
                }
        }