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

Commit bed23497 authored by nharold's avatar nharold Committed by android-build-merger
Browse files

Merge "Add WCDMA Signal Strength to SignalStrength"

am: f3117ca3

Change-Id: I07d1a7dbcd8810e0e17e666cf60b40cb078473ca
parents f800390e f3117ca3
Loading
Loading
Loading
Loading
+23 −3
Original line number Diff line number Diff line
@@ -5246,8 +5246,8 @@ public class RIL extends BaseCommands implements CommandsInterface {
                            cellInfoWcdma.cellIdentityWcdma.base.mnc,
                            cellInfoWcdma.cellIdentityWcdma.operatorNames.alphaLong,
                            cellInfoWcdma.cellIdentityWcdma.operatorNames.alphaShort,
                            cellInfoWcdma.signalStrengthWcdma.signalStrength,
                            cellInfoWcdma.signalStrengthWcdma.bitErrorRate);
                            cellInfoWcdma.signalStrengthWcdma.base.signalStrength,
                            cellInfoWcdma.signalStrengthWcdma.base.bitErrorRate);
                    break;
                }

@@ -5266,7 +5266,8 @@ public class RIL extends BaseCommands implements CommandsInterface {

    static SignalStrength convertHalSignalStrength(
            android.hardware.radio.V1_0.SignalStrength signalStrength) {
        return new SignalStrength(signalStrength.gw.signalStrength,
        return new SignalStrength(
                signalStrength.gw.signalStrength,
                signalStrength.gw.bitErrorRate,
                signalStrength.cdma.dbm,
                signalStrength.cdma.ecio,
@@ -5280,4 +5281,23 @@ public class RIL extends BaseCommands implements CommandsInterface {
                signalStrength.lte.cqi,
                signalStrength.tdScdma.rscp);
    }

    static SignalStrength convertHalSignalStrength_1_2(
            android.hardware.radio.V1_2.SignalStrength signalStrength) {
        // TODO: Pipe WCDMA up
        return new SignalStrength(
                signalStrength.gsm.signalStrength,
                signalStrength.gsm.bitErrorRate,
                signalStrength.cdma.dbm,
                signalStrength.cdma.ecio,
                signalStrength.evdo.dbm,
                signalStrength.evdo.ecio,
                signalStrength.evdo.signalNoiseRatio,
                signalStrength.lte.signalStrength,
                signalStrength.lte.rsrp,
                signalStrength.lte.rsrq,
                signalStrength.lte.rssnr,
                signalStrength.lte.cqi,
                signalStrength.tdScdma.rscp);
    }
}
+16 −0
Original line number Diff line number Diff line
@@ -242,6 +242,22 @@ public class RadioIndication extends IRadioIndication.Stub {
      // TODO(b/70638175) Implement method.
    }

    /**
     * Indicates the current signal strength of the camped or primary serving cell.
     */
    public void currentSignalStrength_1_2(int indicationType,
                                      android.hardware.radio.V1_2.SignalStrength signalStrength) {
        mRil.processIndication(indicationType);

        SignalStrength ss = RIL.convertHalSignalStrength_1_2(signalStrength);
        // Note this is set to "verbose" because it happens frequently
        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.
     */
+28 −3
Original line number Diff line number Diff line
@@ -260,6 +260,16 @@ public class RadioResponse extends IRadioResponse.Stub {
        responseSignalStrength(responseInfo, sigStrength);
    }

    /**
     * @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_2(
            RadioResponseInfo responseInfo,
            android.hardware.radio.V1_2.SignalStrength signalStrength) {
        responseSignalStrength_1_2(responseInfo, signalStrength);
    }

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

    private void responseSignalStrength(RadioResponseInfo responseInfo,
                                        android.hardware.radio.V1_0.SignalStrength sigStrength) {
    private void responseSignalStrength(
            RadioResponseInfo responseInfo,
            android.hardware.radio.V1_0.SignalStrength signalStrength) {
        RILRequest rr = mRil.processResponse(responseInfo);

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

    private void responseSignalStrength_1_2(
            RadioResponseInfo responseInfo,
            android.hardware.radio.V1_2.SignalStrength signalStrength) {
        RILRequest rr = mRil.processResponse(responseInfo);

        if (rr != null) {
            SignalStrength ret = RIL.convertHalSignalStrength(sigStrength);
            SignalStrength ret = RIL.convertHalSignalStrength_1_2(signalStrength);
            if (responseInfo.error == RadioError.NONE) {
                sendMessageResponse(rr.mResult, ret);
            }
+4 −2
Original line number Diff line number Diff line
@@ -1493,8 +1493,10 @@ public class RILTest extends TelephonyTest {
        cellinfo.cellIdentityWcdma.base.mnc = mnc;
        cellinfo.cellIdentityWcdma.operatorNames.alphaLong = alphaLong;
        cellinfo.cellIdentityWcdma.operatorNames.alphaShort = alphaShort;
        cellinfo.signalStrengthWcdma.signalStrength = SIGNAL_STRENGTH;
        cellinfo.signalStrengthWcdma.bitErrorRate = BIT_ERROR_RATE;
        cellinfo.signalStrengthWcdma.base.signalStrength = SIGNAL_STRENGTH;
        cellinfo.signalStrengthWcdma.base.bitErrorRate = BIT_ERROR_RATE;
        cellinfo.signalStrengthWcdma.rscp = 10;
        cellinfo.signalStrengthWcdma.ecno = 5;
        android.hardware.radio.V1_2.CellInfo record = new android.hardware.radio.V1_2.CellInfo();
        record.cellInfoType = TYPE_WCDMA;
        record.registered = false;