diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/b43legacy/rfkill.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43legacy/rfkill.c b/drivers/net/wireless/b43legacy/rfkill.c index 8783022db11e..d579df72b783 100644 --- a/drivers/net/wireless/b43legacy/rfkill.c +++ b/drivers/net/wireless/b43legacy/rfkill.c | |||
@@ -34,6 +34,13 @@ bool b43legacy_is_hw_radio_enabled(struct b43legacy_wldev *dev) | |||
34 | & B43legacy_MMIO_RADIO_HWENABLED_HI_MASK)) | 34 | & B43legacy_MMIO_RADIO_HWENABLED_HI_MASK)) |
35 | return 1; | 35 | return 1; |
36 | } else { | 36 | } else { |
37 | /* To prevent CPU fault on PPC, do not read a register | ||
38 | * unless the interface is started; however, on resume | ||
39 | * for hibernation, this routine is entered early. When | ||
40 | * that happens, unconditionally return TRUE. | ||
41 | */ | ||
42 | if (b43legacy_status(dev) < B43legacy_STAT_STARTED) | ||
43 | return 1; | ||
37 | if (b43legacy_read16(dev, B43legacy_MMIO_RADIO_HWENABLED_LO) | 44 | if (b43legacy_read16(dev, B43legacy_MMIO_RADIO_HWENABLED_LO) |
38 | & B43legacy_MMIO_RADIO_HWENABLED_LO_MASK) | 45 | & B43legacy_MMIO_RADIO_HWENABLED_LO_MASK) |
39 | return 1; | 46 | return 1; |