diff --git a/qcom/fmradio/FmRxEventListner.java b/qcom/fmradio/FmRxEventListner.java index 0f73a5c09b84760963380ee873517a1ca577c9a4..0ad7c0ccb03c1c69499cc41b1d5e3e633d0deb55 100644 --- a/qcom/fmradio/FmRxEventListner.java +++ b/qcom/fmradio/FmRxEventListner.java @@ -213,18 +213,18 @@ class FmRxEventListner { case 18: Log.d(TAG, "Got RADIO_DISABLED"); if (FmTransceiver.getFMPowerState() == FmTransceiver.subPwrLevel_FMTurning_Off) { + FmTransceiver.release("/dev/radio0"); + cb.FmRxEvDisableReceiver(); /*Set the state as FMOff */ FmTransceiver.setFMPowerState(FmTransceiver.FMState_Turned_Off); Log.v(TAG, "RxEvtList: CURRENT-STATE : FMTurningOff ---> NEW-STATE : FMOff"); - FmTransceiver.release("/dev/radio0"); - cb.FmRxEvDisableReceiver(); Thread.currentThread().interrupt(); } else { - FmTransceiver.setFMPowerState(FmTransceiver.FMState_Turned_Off); Log.d(TAG, "Unexpected RADIO_DISABLED recvd"); - Log.v(TAG, "RxEvtList: CURRENT-STATE : FMRxOn ---> NEW-STATE : FMOff"); FmTransceiver.release("/dev/radio0"); cb.FmRxEvRadioReset(); + FmTransceiver.setFMPowerState(FmTransceiver.FMState_Turned_Off); + Log.v(TAG, "RxEvtList: CURRENT-STATE : FMRxOn ---> NEW-STATE : FMOff"); Thread.currentThread().interrupt(); } break;