Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3991ac15 authored by Mingming Cai's avatar Mingming Cai
Browse files

Add signal strength converter

Update RIL, RadioResponse, and RadioIndiction for the updated
SignalSterength.

Bug: 174775680
Test: make
Change-Id: I8ae501f7a78178992d475132b627267bbf2324e5
parent cea05071
Loading
Loading
Loading
Loading
+9 −1
Original line number Original line Diff line number Diff line
@@ -1521,7 +1521,15 @@ public class RIL extends BaseCommands implements CommandsInterface {


            if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest));
            if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest));


            if (mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_4)) {
            if (mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_6)) {
                android.hardware.radio.V1_6.IRadio radioProxy16 =
                        (android.hardware.radio.V1_6.IRadio) radioProxy;
                try {
                    radioProxy16.getSignalStrength_1_6(rr.mSerial);
                } catch (RemoteException | RuntimeException e) {
                    handleRadioProxyExceptionForRR(rr, "getSignalStrength_1_6", e);
                }
            } else if (mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_4)) {
                android.hardware.radio.V1_4.IRadio radioProxy14 =
                android.hardware.radio.V1_4.IRadio radioProxy14 =
                        (android.hardware.radio.V1_4.IRadio) radioProxy;
                        (android.hardware.radio.V1_4.IRadio) radioProxy;
                try {
                try {
+17 −0
Original line number Original line Diff line number Diff line
@@ -312,6 +312,23 @@ public class RadioIndication extends IRadioIndication.Stub {
        }
        }
    }
    }


    /**
     * Indicates the current signal strength of the camped or primary serving cell.
     */
    public void currentSignalStrength_1_6(int indicationType,
            android.hardware.radio.V1_6.SignalStrength signalStrength) {

        mRil.processIndication(indicationType);

        SignalStrength ss = new SignalStrength(signalStrength);

        if (RIL.RILJ_LOGV) mRil.unsljLogvRet(RIL_UNSOL_SIGNAL_STRENGTH, ss);

        if (mRil.mSignalStrengthRegistrant != null) {
            mRil.mSignalStrengthRegistrant.notifyRegistrant(new AsyncResult(null, ss, null));
        }
    }

    /**
    /**
     * Indicates current physical channel configuration.
     * Indicates current physical channel configuration.
     */
     */
+25 −0
Original line number Original line Diff line number Diff line
@@ -308,6 +308,7 @@ public class RadioResponse extends IRadioResponse.Stub {
            android.hardware.radio.V1_2.SignalStrength signalStrength) {
            android.hardware.radio.V1_2.SignalStrength signalStrength) {
        responseSignalStrength_1_2(responseInfo, signalStrength);
        responseSignalStrength_1_2(responseInfo, signalStrength);
    }
    }

    /**
    /**
     * @param responseInfo Response info struct containing response type, serial no. and error
     * @param responseInfo Response info struct containing response type, serial no. and error
     * @param signalStrength Current signal strength of camped/connected cells
     * @param signalStrength Current signal strength of camped/connected cells
@@ -318,6 +319,16 @@ public class RadioResponse extends IRadioResponse.Stub {
        responseSignalStrength_1_4(responseInfo, signalStrength);
        responseSignalStrength_1_4(responseInfo, signalStrength);
    }
    }


    /**
     * @param responseInfo Response info struct containing response type, serial no. and error
     * @param signalStrength Current signal strength of camped/connected cells
     */
    public void getSignalStrengthResponse_1_6(
            android.hardware.radio.V1_6.RadioResponseInfo responseInfo,
            android.hardware.radio.V1_6.SignalStrength signalStrength) {
        responseSignalStrength_1_6(responseInfo, signalStrength);
    }

    /**
    /**
     * @param responseInfo Response info struct containing response type, serial no. and error
     * @param responseInfo Response info struct containing response type, serial no. and error
     * @param voiceRegResponse Current Voice registration response as defined by VoiceRegStateResult
     * @param voiceRegResponse Current Voice registration response as defined by VoiceRegStateResult
@@ -2328,6 +2339,20 @@ public class RadioResponse extends IRadioResponse.Stub {
        }
        }
    }
    }


    private void responseSignalStrength_1_6(
            android.hardware.radio.V1_6.RadioResponseInfo responseInfo,
            android.hardware.radio.V1_6.SignalStrength signalStrength) {
        RILRequest rr = mRil.processResponse_1_6(responseInfo);

        if (rr != null) {
            SignalStrength ret = new SignalStrength(signalStrength);
            if (responseInfo.error == RadioError.NONE) {
                sendMessageResponse(rr.mResult, ret);
            }
            mRil.processResponseDone_1_6(rr, responseInfo, ret);
        }
    }

    private void responseSms(RadioResponseInfo responseInfo, SendSmsResult sms) {
    private void responseSms(RadioResponseInfo responseInfo, SendSmsResult sms) {
        RILRequest rr = mRil.processResponse(responseInfo);
        RILRequest rr = mRil.processResponse(responseInfo);