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

Commit 526ac258 authored by Xin Li's avatar Xin Li
Browse files

Merge tm-qpr-dev-plus-aosp-without-vendor@9129937

Bug: 248070379
Merged-In: Ifbad8359db98dadabc754514f6f8038b1415200f
Change-Id: I3d0b4f3a39437f7f7404609e5fe51c09cadee626
parents a56eb80a bd8ffe17
Loading
Loading
Loading
Loading
+19 −1
Original line number Diff line number Diff line
@@ -23,7 +23,7 @@ option java_outer_classname = "PersistAtomsProto";

// Holds atoms to store on persist storage in case of power cycle or process crash.
// NOTE: using int64 rather than google.protobuf.Timestamp for timestamps simplifies implementation.
// Next id: 50
// Next id: 53
message PersistAtoms {
    /* Aggregated RAT usage during the call. */
    repeated VoiceCallRatUsage voice_call_rat_usage = 1;
@@ -177,6 +177,9 @@ message PersistAtoms {

    /* Timestamp of last network_requests_v2 pull. */
    optional int64 network_requests_v2_pull_timestamp_millis = 51;

    /* Unmetered networks information. */
    repeated UnmeteredNetworks unmetered_networks = 52;
}

// The canonical versions of the following enums live in:
@@ -245,6 +248,10 @@ message IncomingSms {
    optional bool is_esim = 12;
    optional int32 carrier_id = 13;
    optional int64 message_id = 14;
    optional int32 count = 15;

    // Internal use only
    optional int32 hashCode = 10001;
}

message OutgoingSms {
@@ -262,6 +269,10 @@ message OutgoingSms {
    optional int64 message_id = 12;
    optional int32 retry_id = 13;
    optional int64 interval_millis = 14;
    optional int32 count = 15;

    // Internal use only
    optional int32 hashCode = 10001;
}

message CarrierIdMismatch {
@@ -292,6 +303,7 @@ message DataCallSession {
    optional bool ongoing = 18;
    optional int32 band_at_end = 19;
    repeated int32 handover_failure_causes = 20;
    repeated int32 handover_failure_rat = 21;
}

message CellularServiceState {
@@ -498,3 +510,9 @@ message GbaEvent {
    optional int32 failed_reason = 4;
    optional int32 count = 5;
}

message UnmeteredNetworks {
    optional int32 phone_id = 1;
    optional int32 carrier_id = 2;
    optional int64 unmetered_networks_bitmask = 3;
}
+16 −0
Original line number Diff line number Diff line
@@ -500,6 +500,14 @@ public class CellularNetworkService extends NetworkService {
            final String rplmn = regResult.registeredPlmn;
            final int reasonForDenial = regResult.reasonForDenial;

            if (regState == NetworkRegistrationInfo.REGISTRATION_STATE_DENIED
                    && reasonForDenial
                    == android.hardware.radio.network.RegistrationFailCause.NONE) {
                AnomalyReporter.reportAnomaly(
                        UUID.fromString("62ed270f-e139-418a-a427-8bcc1bca8f20"),
                            "RIL Missing Reg Fail Reason", mPhone.getCarrierId());
            }

            int networkType = ServiceState.rilRadioTechnologyToNetworkType(regResult.rat);
            if (networkType == TelephonyManager.NETWORK_TYPE_LTE_CA) {
                networkType = TelephonyManager.NETWORK_TYPE_LTE;
@@ -582,6 +590,14 @@ public class CellularNetworkService extends NetworkService {
            networkType =
                    getNetworkTypeForCellIdentity(networkType, cellIdentity, mPhone.getCarrierId());

            if (regState == NetworkRegistrationInfo.REGISTRATION_STATE_DENIED
                    && reasonForDenial
                    == android.hardware.radio.network.RegistrationFailCause.NONE) {
                AnomalyReporter.reportAnomaly(
                        UUID.fromString("62ed270f-e139-418a-a427-8bcc1bca8f20"),
                            "RIL Missing Reg Fail Reason", mPhone.getCarrierId());
            }

            // Conditional parameters for specific RANs
            boolean cssSupported = false;
            int roamingIndicator = 0;
+10 −7
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ public class DataIndication extends IRadioDataIndication.Stub {
            android.hardware.radio.data.SetupDataCallResult[] dcList) {
        mRil.processIndication(RIL.DATA_SERVICE, indicationType);

        if (RIL.RILJ_LOGD) mRil.unsljLogRet(RIL_UNSOL_DATA_CALL_LIST_CHANGED, dcList);
        if (mRil.isLogOrTrace()) mRil.unsljLogRet(RIL_UNSOL_DATA_CALL_LIST_CHANGED, dcList);
        ArrayList<DataCallResponse> response = RILUtils.convertHalDataCallResultList(dcList);
        mRil.mDataCallListChangedRegistrants.notifyRegistrants(
                new AsyncResult(null, response, null));
@@ -70,9 +70,10 @@ public class DataIndication extends IRadioDataIndication.Stub {
            android.hardware.radio.data.KeepaliveStatus halStatus) {
        mRil.processIndication(RIL.DATA_SERVICE, indicationType);

        if (RIL.RILJ_LOGD) {
            mRil.unsljLogRet(RIL_UNSOL_KEEPALIVE_STATUS, "handle=" + halStatus.sessionHandle
                    + " code=" +  halStatus.code);
        if (mRil.isLogOrTrace()) {
            mRil.unsljLogRet(
                    RIL_UNSOL_KEEPALIVE_STATUS,
                    "handle=" + halStatus.sessionHandle + " code=" + halStatus.code);
        }

        KeepaliveStatus ks = new KeepaliveStatus(
@@ -90,7 +91,7 @@ public class DataIndication extends IRadioDataIndication.Stub {

        PcoData response = new PcoData(pco.cid, pco.bearerProto, pco.pcoId, pco.contents);

        if (RIL.RILJ_LOGD) mRil.unsljLogRet(RIL_UNSOL_PCO_DATA, response);
        if (mRil.isLogOrTrace()) mRil.unsljLogRet(RIL_UNSOL_PCO_DATA, response);

        mRil.mPcoDataRegistrants.notifyRegistrants(new AsyncResult(null, response, null));
    }
@@ -106,7 +107,7 @@ public class DataIndication extends IRadioDataIndication.Stub {
        mRil.processIndication(RIL.DATA_SERVICE, indicationType);
        DataProfile response = RILUtils.convertToDataProfile(dpi);

        if (RIL.RILJ_LOGD) mRil.unsljLogRet(RIL_UNSOL_UNTHROTTLE_APN, response);
        if (mRil.isLogOrTrace()) mRil.unsljLogRet(RIL_UNSOL_UNTHROTTLE_APN, response);

        mRil.mApnUnthrottledRegistrants.notifyRegistrants(new AsyncResult(null, response, null));
    }
@@ -120,7 +121,9 @@ public class DataIndication extends IRadioDataIndication.Stub {
    public void slicingConfigChanged(int indicationType,
            android.hardware.radio.data.SlicingConfig slicingConfig) throws RemoteException {
        mRil.processIndication(RIL.DATA_SERVICE, indicationType);
        if (RIL.RILJ_LOGD) mRil.unsljLogRet(RIL_UNSOL_SLICING_CONFIG_CHANGED, slicingConfig);
        if (mRil.isLogOrTrace()) {
            mRil.unsljLogRet(RIL_UNSOL_SLICING_CONFIG_CHANGED, slicingConfig);
        }
        NetworkSlicingConfig ret = RILUtils.convertHalSlicingConfig(slicingConfig);
        mRil.mSlicingConfigChangedRegistrants.notifyRegistrants(
                new AsyncResult(null, ret, null));
+8 −0
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package com.android.internal.telephony;

import android.os.Build;

import com.android.internal.telephony.metrics.TelephonyMetrics;
import com.android.telephony.Rlog;

@@ -53,6 +55,12 @@ public class DebugService {
                    log("Saving atoms..");
                    PhoneFactory.getMetricsCollector().getAtomsStorage().flushAtoms();
                    return;
                case "--clearatoms":
                    if (Build.IS_DEBUGGABLE) {
                        log("Clearing atoms..");
                        PhoneFactory.getMetricsCollector().getAtomsStorage().clearAtoms();
                    }
                    return;
            }
        }
        log("Dump telephony.");
+9 −1
Original line number Diff line number Diff line
@@ -478,7 +478,7 @@ public class GsmCdmaConnection extends Connection {
     * @return the corresponding value from {@link DisconnectCause}
     */
    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
    int disconnectCauseFromCode(int causeCode) {
    public int disconnectCauseFromCode(int causeCode) {
        /**
         * See 22.001 Annex F.4 for mapping of cause codes
         * to local tones
@@ -565,6 +565,14 @@ public class GsmCdmaConnection extends Connection {
            case CallFailCause.RADIO_OFF:
                return DisconnectCause.POWER_OFF;

            case CallFailCause.NO_VALID_SIM:
                return DisconnectCause.ICC_ERROR;

            case CallFailCause.LOCAL_NETWORK_NO_SERVICE:
                // fallthrough
            case CallFailCause.LOCAL_SERVICE_UNAVAILABLE:
                return DisconnectCause.OUT_OF_SERVICE;

            case CallFailCause.ACCESS_CLASS_BLOCKED:
            case CallFailCause.ERROR_UNSPECIFIED:
            case CallFailCause.NORMAL_CLEARING:
Loading