On 07/17/2011 03:43 AM, Michael Büsch wrote:
On Sun, 17 Jul 2011 10:30:31 +0200
Rafał Miłecki<[email protected]>  wrote:

Old masks were causing ugly, delayed lock ups.

Signed-off-by: Rafał Miłecki<[email protected]>
---
  drivers/net/wireless/b43/phy_ht.c |   10 +++++-----
  1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/b43/phy_ht.c 
b/drivers/net/wireless/b43/phy_ht.c
index 2982103..0cc293a 100644
--- a/drivers/net/wireless/b43/phy_ht.c
+++ b/drivers/net/wireless/b43/phy_ht.c
@@ -277,12 +277,12 @@ static void b43_phy_ht_op_software_rfkill(struct 
b43_wldev *dev,
                b43err(dev->wl, "MAC not suspended\n");

        if (blocked) {
-               b43_phy_mask(dev, B43_PHY_HT_RF_CTL1, ~0);
+               b43_phy_mask(dev, B43_PHY_HT_RF_CTL1, 0);
        } else {
-               b43_phy_mask(dev, B43_PHY_HT_RF_CTL1, ~0);
-               b43_phy_maskset(dev, B43_PHY_HT_RF_CTL1, ~0, 0x1);
-               b43_phy_mask(dev, B43_PHY_HT_RF_CTL1, ~0);
-               b43_phy_maskset(dev, B43_PHY_HT_RF_CTL1, ~0, 0x2);
+               b43_phy_mask(dev, B43_PHY_HT_RF_CTL1, 0);
+               b43_phy_maskset(dev, B43_PHY_HT_RF_CTL1, 0, 0x1);
+               b43_phy_mask(dev, B43_PHY_HT_RF_CTL1, 0);
+               b43_phy_maskset(dev, B43_PHY_HT_RF_CTL1, 0, 0x2);

                if (dev->phy.radio_ver == 0x2059)
                        b43_radio_2059_init(dev);

Why are we using mask/maskset here at all, if the mask is zero?
You could just use phy_write.

(And mask() with ~0 should always ring a bell anyway, because it does
nothing except for possible side effects of the register read/write).

All of the Broadcom mask and maskset routines are called with the complement of the mask. It has been a constant battle during the RE work to keep that straight.

Larry

_______________________________________________
b43-dev mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/b43-dev

Reply via email to