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

Commit b48008a6 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 8386572 from aac5c55a to tm-d1-release

Change-Id: I19f638f6c2d82efb6c1c0f7561b7e1177a5fb760
parents 0d7b8566 aac5c55a
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -397,6 +397,24 @@ public class PhoneConfigurationManager {
                registerForRadioState(phone);
                phone.mCi.onSlotActiveStatusChange(SubscriptionManager.isValidPhoneId(phoneId));
            }

            // When the user enables DSDS mode, the default VOICE and SMS subId should be switched
            // to "No Preference".  Doing so will sync the network/sim settings and telephony.
            // (see b/198123192)
            if (numOfActiveModems > oldNumOfActiveModems && numOfActiveModems == 2) {
                Log.i(LOG_TAG, " onMultiSimConfigChanged: DSDS mode enabled; "
                        + "setting VOICE & SMS subId to -1 (No Preference)");

                //Set the default VOICE subId to -1 ("No Preference")
                SubscriptionController.getInstance().setDefaultVoiceSubId(
                        SubscriptionManager.INVALID_SUBSCRIPTION_ID);

                //TODO:: Set the default SMS sub to "No Preference". Tracking this bug (b/227386042)
            } else {
                Log.i(LOG_TAG,
                        "onMultiSimConfigChanged: DSDS mode NOT detected.  NOT setting the "
                                + "default VOICE and SMS subId to -1 (No Preference)");
            }
        }
    }

+4 −1
Original line number Diff line number Diff line
@@ -979,7 +979,10 @@ public class RILUtils {
        dpi.mtuV6 = dp.getMtuV6();
        dpi.persistent = dp.isPersistent();
        dpi.preferred = dp.isPreferred();
        dpi.alwaysOn = false;
        if (dp.getApnSetting() != null) {
            dpi.alwaysOn = dp.getApnSetting().isAlwaysOn();
        }
        dpi.trafficDescriptor = convertToHalTrafficDescriptorAidl(dp.getTrafficDescriptor());

        // profile id is only meaningful when it's persistent on the modem.
+3 −3
Original line number Diff line number Diff line
@@ -32,10 +32,10 @@ public class SlidingWindowEventCounter {
    private final int mNumOccurrences;
    private final LongArrayQueue mTimestampQueueMillis;

    public SlidingWindowEventCounter(@IntRange(from = 1) final long windowSizeMillis,
    public SlidingWindowEventCounter(@IntRange(from = 0) final long windowSizeMillis,
            @IntRange(from = 2) final int numOccurrences) {
        if (windowSizeMillis <= 0) {
            throw new IllegalArgumentException("windowSizeMillis must be greater than 0");
        if (windowSizeMillis < 0) {
            throw new IllegalArgumentException("windowSizeMillis must be greater or equal to 0");
        }
        if (numOccurrences <= 1) {
            throw new IllegalArgumentException("numOccurrences must be greater than 1");
+28 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import android.os.Looper;
import android.os.Message;
import android.os.PersistableBundle;
import android.os.RegistrantList;
import android.provider.DeviceConfig;
import android.telephony.Annotation.ApnType;
import android.telephony.Annotation.NetCapability;
import android.telephony.Annotation.NetworkType;
@@ -184,6 +185,14 @@ public class DataConfigManager extends Handler {
    @Retention(RetentionPolicy.SOURCE)
    private @interface DataConfigNetworkType {}

    /**
     * The minimal time window for duplicate release-request for IMS, the violation of which
     * triggers anomaly report in {@link DataNetworkController}.
     */
    private final long mImsRequestReleaseThrottleAnomalyWindowMs =
            DeviceConfig.getInt(DeviceConfig.NAMESPACE_TELEPHONY,
                    "ims_release_request_window", 0);

    private @NonNull final Phone mPhone;
    private @NonNull final String mLogTag;

@@ -656,6 +665,13 @@ public class DataConfigManager extends Handler {
        }
    }

     /**
     * @return The IMS back to back request/release minimal interval.
     */
    public long getImsRequestReleaseThrottleAnomalyWindowMs() {
        return mImsRequestReleaseThrottleAnomalyWindowMs;
    }

    /**
     * Get the TCP config string, used by {@link LinkProperties#setTcpBufferSizes(String)}.
     * The config string will have the following form, with values in bytes:
@@ -701,6 +717,15 @@ public class DataConfigManager extends Handler {
                .config_wlan_data_service_conn_persistence_on_restart);
    }

    /**
     * @return {@code true} if adopt predefined IWLAN handover policy. If {@code false}, handover is
     * allowed by default.
     */
    public boolean isIwlanHandoverPolicyEnabled() {
        return mResources.getBoolean(com.android.internal.R.bool
                .config_enable_iwlan_handover_policy);
    }

    /**
     * @return {@code true} if tearing down IMS data network should be delayed until the voice call
     * ends.
@@ -951,10 +976,13 @@ public class DataConfigManager extends Handler {
        pw.increaseIndent();
        mDataSetupRetryRules.forEach(pw::println);
        pw.decreaseIndent();
        pw.println("isIwlanHandoverPolicyEnabled=" + isIwlanHandoverPolicyEnabled());
        pw.println("Data handover retry rules:");
        pw.increaseIndent();
        mDataHandoverRetryRules.forEach(pw::println);
        pw.decreaseIndent();
        pw.println("IMS request release throttle anomaly window in ms="
                + mImsRequestReleaseThrottleAnomalyWindowMs);
        pw.println("Metered APN types=" + mMeteredApnTypes.stream()
                .map(ApnSetting::getApnTypeString).collect(Collectors.joining(",")));
        pw.println("Roaming metered APN types=" + mRoamingMeteredApnTypes.stream()
+4 −0
Original line number Diff line number Diff line
@@ -329,6 +329,10 @@ public class DataEvaluation {
         * The network request is restricted (i.e. Only privilege apps can access the network.)
         */
        RESTRICTED_REQUEST,
        /**
         * SUPL is allowed while emergency call is ongoing.
         */
        EMERGENCY_SUPL,
        /**
         * Data is allowed because the network request is for emergency. This should be always at
         * the bottom (i.e. highest priority)
Loading