]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/wireless/b43/rfkill.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / drivers / net / wireless / b43 / rfkill.c
index 78016ae21c50578a9e41584b025923f708ea4eb3..86bc0a0f735cf63fd0218b3628af061a238b77bc 100644 (file)
 /* Returns TRUE, if the radio is enabled in hardware. */
 bool b43_is_hw_radio_enabled(struct b43_wldev *dev)
 {
-       if (dev->phy.rev >= 3 || dev->phy.type == B43_PHYTYPE_LP) {
-               if (!(b43_read32(dev, B43_MMIO_RADIO_HWENABLED_HI)
-                     & B43_MMIO_RADIO_HWENABLED_HI_MASK))
-                       return 1;
-       } else {
-               /* To prevent CPU fault on PPC, do not read a register
-                * unless the interface is started; however, on resume
-                * for hibernation, this routine is entered early. When
-                * that happens, unconditionally return TRUE.
-                */
-               if (b43_status(dev) < B43_STAT_STARTED)
-                       return 1;
-               if (b43_read16(dev, B43_MMIO_RADIO_HWENABLED_LO)
-                   & B43_MMIO_RADIO_HWENABLED_LO_MASK)
-                       return 1;
-       }
-       return 0;
+       return !(b43_read32(dev, B43_MMIO_RADIO_HWENABLED_HI)
+               & B43_MMIO_RADIO_HWENABLED_HI_MASK);
 }
 
 /* The poll callback for the hardware button. */