|
@@ -34,6 +34,13 @@ bool b43legacy_is_hw_radio_enabled(struct b43legacy_wldev *dev)
|
|
& B43legacy_MMIO_RADIO_HWENABLED_HI_MASK))
|
|
& B43legacy_MMIO_RADIO_HWENABLED_HI_MASK))
|
|
return 1;
|
|
return 1;
|
|
} else {
|
|
} 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 (b43legacy_status(dev) < B43legacy_STAT_STARTED)
|
|
|
|
+ return 1;
|
|
if (b43legacy_read16(dev, B43legacy_MMIO_RADIO_HWENABLED_LO)
|
|
if (b43legacy_read16(dev, B43legacy_MMIO_RADIO_HWENABLED_LO)
|
|
& B43legacy_MMIO_RADIO_HWENABLED_LO_MASK)
|
|
& B43legacy_MMIO_RADIO_HWENABLED_LO_MASK)
|
|
return 1;
|
|
return 1;
|