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

Commit c3c6b424 authored by Sarah Chin's avatar Sarah Chin
Browse files

Revert "Modify PhoneCapabilities for device capabilities"

Revert submission 9919494-device_cap

Reason for revert: Change not supported by modem
Reverted Changes:
I3349c3e50:Modify PhoneCapabilities for device capabilities
I9f5312606:Modify PhoneCapabilities for device capabilities
I424ef1760:PhoneCapabilities changes for device capabilities
Ic00bb3ba8:Modify PhoneCapabilities for device capabilities

Change-Id: I2412936bb5e2c4f41922c1accca4f93d8f3db13a
parent 9054a428
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -104,7 +104,6 @@ java_library {
        "android.hardware.radio.config-V1.0-java-shallow",
        "android.hardware.radio.config-V1.1-java-shallow",
        "android.hardware.radio.config-V1.2-java-shallow",
        "android.hardware.radio.config-V1.3-java-shallow",
        "android.hardware.radio.deprecated-V1.0-java-shallow",
        "ecc-protos-lite",
        "libphonenumber-nogeocoder",
+1 −1
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@ public class CellularNetworkValidator {
     */
    public boolean isValidationFeatureSupported() {
        return PhoneConfigurationManager.getInstance().getCurrentPhoneCapability()
                .getPsDataConnectionLingerTimeMillis() > 0;
                .validationBeforeSwitchSupported;
    }

    @VisibleForTesting
+3 −3
Original line number Diff line number Diff line
@@ -28,12 +28,12 @@ import android.os.PowerManager;
import android.os.RegistrantList;
import android.sysprop.TelephonyProperties;
import android.telephony.PhoneCapability;
import com.android.telephony.Rlog;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.util.Log;

import com.android.internal.annotations.VisibleForTesting;
import com.android.telephony.Rlog;

import java.util.HashMap;
import java.util.Map;
@@ -311,7 +311,7 @@ public class PhoneConfigurationManager {
    }

    public int getNumberOfModemsWithSimultaneousDataConnections() {
        return mStaticCapability.getMaxActivePsVoice();
        return mStaticCapability.maxActiveData;
    }

    private void notifyCapabilityChanged() {
@@ -326,7 +326,7 @@ public class PhoneConfigurationManager {
     */
    public void switchMultiSimConfig(int numOfSims) {
        log("switchMultiSimConfig: with numOfSims = " + numOfSims);
        if (getStaticPhoneCapability().getLogicalModemUuids().size() < numOfSims) {
        if (getStaticPhoneCapability().logicalModemList.size() < numOfSims) {
            log("switchMultiSimConfig: Phone is not capable of enabling "
                    + numOfSims + " sims, exiting!");
            return;
+5 −63
Original line number Diff line number Diff line
@@ -38,8 +38,6 @@ import android.os.Message;
import android.os.Registrant;
import android.os.RemoteException;
import android.os.WorkSource;
import android.telephony.PhoneCapability;
import android.telephony.SimSlotCapability;
import android.util.SparseArray;

import com.android.internal.telephony.uicc.IccSlotStatus;
@@ -47,10 +45,8 @@ import com.android.telephony.Rlog;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.NoSuchElementException;
import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors;

/**
 * This class provides wrapper APIs for IRadioConfig interface.
@@ -68,8 +64,6 @@ public class RadioConfig extends Handler {

    private static final HalVersion RADIO_CONFIG_HAL_VERSION_1_1 = new HalVersion(1, 1);

    private static final HalVersion RADIO_CONFIG_HAL_VERSION_1_3 = new HalVersion(1, 3);

    private final boolean mIsMobileNetworkSupported;
    private volatile IRadioConfig mRadioConfigProxy = null;
    // IRadioConfig version
@@ -346,14 +340,6 @@ public class RadioConfig extends Handler {
            logd(rr.serialString() + "> " + requestToString(rr.mRequest));
        }

        if (mRadioConfigVersion.greaterOrEqual(RADIO_CONFIG_HAL_VERSION_1_3)) {
            try {
                ((android.hardware.radio.config.V1_3.IRadioConfig) mRadioConfigProxy)
                        .getPhoneCapability_1_3(rr.mSerial);
            } catch (RemoteException | RuntimeException e) {
                resetProxyAndRequestList("getPhoneCapability_1_3", e);
            }
        } else {
        try {
            ((android.hardware.radio.config.V1_1.IRadioConfig) mRadioConfigProxy)
                    .getPhoneCapability(rr.mSerial);
@@ -361,7 +347,6 @@ public class RadioConfig extends Handler {
            resetProxyAndRequestList("getPhoneCapability", e);
        }
    }
    }

    /**
     * @return whether current radio config version supports SET_PREFERRED_DATA_MODEM command.
@@ -502,49 +487,6 @@ public class RadioConfig extends Handler {
        return response;
    }

    static PhoneCapability convertHalPhoneCapability(
            android.hardware.radio.config.V1_1.PhoneCapability pc) {
        long psDataConnectionLingerTimeMillis = pc.isInternetLingeringSupported ? 1 : 0;

        List<String> logicalModemUuids = new ArrayList<>();
        for (android.hardware.radio.config.V1_1.ModemInfo modemInfo : pc.logicalModemList) {
            logicalModemUuids.add("com.xxxx.lm" + modemInfo.modemId);
        }

        List<List<Long>> features = new ArrayList<>();
        for (int i = 0; i < pc.maxActiveData; i++) {
            List<Long> feature = new ArrayList<>();
            feature.add(PhoneCapability.MODEM_FEATURE_PS_VOICE_REG);
            features.add(feature);
        }

        return new PhoneCapability(0, 0, 0, 0, psDataConnectionLingerTimeMillis, 0,
                null, null, null, null, logicalModemUuids, null, features);
    }

    static PhoneCapability convertHalPhoneCapability_1_3(
            android.hardware.radio.config.V1_3.PhoneCapability pc) {
        List<SimSlotCapability> simSlotCapabilities = new ArrayList<>();
        for (android.hardware.radio.config.V1_3.SimSlotCapability sc : pc.simSlotCapabilities) {
            simSlotCapabilities.add(new SimSlotCapability(sc.physicalSlotId, sc.slotType));
        }

        List<List<Long>> features = new ArrayList<>();
        for (android.hardware.radio.config.V1_3.ConcurrentModemFeatures cmf
                : pc.concurrentFeatureSupport) {
            features.add(cmf.modemFeatures
                    .stream()
                    .mapToLong(Integer::longValue)
                    .boxed()
                    .collect(Collectors.toList()));
        }

        return new PhoneCapability(pc.utranUeCategoryDl, pc.utranUeCategoryUl,
                pc.eutranUeCategoryDl, pc.eutranUeCategoryUl, pc.psDataConnectionLingerTimeMillis,
                pc.supportedRats, pc.geranBands, pc.utranBands, pc.eutranBands, pc.ngranBands,
                pc.logicalModemUuids, simSlotCapabilities, features);
    }

    private static void logd(String log) {
        Rlog.d(TAG, log);
    }
+21 −27
Original line number Diff line number Diff line
@@ -20,12 +20,14 @@ import android.hardware.radio.V1_0.RadioError;
import android.hardware.radio.V1_0.RadioResponseInfo;
import android.hardware.radio.config.V1_1.ModemsConfig;
import android.hardware.radio.config.V1_2.IRadioConfigResponse;
import android.telephony.ModemInfo;
import android.telephony.PhoneCapability;
import com.android.telephony.Rlog;

import com.android.internal.telephony.uicc.IccSlotStatus;
import com.android.telephony.Rlog;

import java.util.ArrayList;
import java.util.List;

/**
 * This class is the implementation of IRadioConfigResponse interface.
@@ -113,40 +115,32 @@ public class RadioConfigResponse extends IRadioConfigResponse.Stub {
        }
    }

    /**
     * Response function for IRadioConfig.getPhoneCapability().
     */
    public void getPhoneCapabilityResponse(RadioResponseInfo responseInfo,
    private PhoneCapability convertHalPhoneCapability(
            android.hardware.radio.config.V1_1.PhoneCapability phoneCapability) {
        RILRequest rr = mRadioConfig.processResponse(responseInfo);
        // TODO b/121394331: clean up V1_1.PhoneCapability fields.
        int maxActiveVoiceCalls = 0;
        int maxActiveData = phoneCapability.maxActiveData;
        int max5G = 0;
        boolean validationBeforeSwitchSupported = phoneCapability.isInternetLingeringSupported;
        List<ModemInfo> logicalModemList = new ArrayList();

        if (rr != null) {
            PhoneCapability ret = RadioConfig.convertHalPhoneCapability(phoneCapability);
            if (responseInfo.error == RadioError.NONE) {
                // send response
                RadioResponse.sendMessageResponse(rr.mResult, ret);
                Rlog.d(TAG, rr.serialString() + "< "
                        + mRadioConfig.requestToString(rr.mRequest) + " " + ret.toString());
            } else {
                rr.onError(responseInfo.error, ret);
                Rlog.e(TAG, rr.serialString() + "< "
                        + mRadioConfig.requestToString(rr.mRequest) + " error "
                        + responseInfo.error);
            }
        } else {
            Rlog.e(TAG, "getPhoneCapabilityResponse: Error " + responseInfo.toString());
        }
        for (android.hardware.radio.config.V1_1.ModemInfo
                modemInfo : phoneCapability.logicalModemList) {
            logicalModemList.add(new ModemInfo(modemInfo.modemId));
        }

        return new PhoneCapability(maxActiveVoiceCalls, maxActiveData, max5G, logicalModemList,
                validationBeforeSwitchSupported);
    }
    /**
     * Response function for IRadioConfig.getPhoneCapability_1_3().
     * Response function for IRadioConfig.getPhoneCapability().
     */
    public void getPhoneCapabilityResponse_1_3(RadioResponseInfo responseInfo,
            android.hardware.radio.config.V1_3.PhoneCapability phoneCapability) {
    public void getPhoneCapabilityResponse(RadioResponseInfo responseInfo,
            android.hardware.radio.config.V1_1.PhoneCapability phoneCapability) {
        RILRequest rr = mRadioConfig.processResponse(responseInfo);

        if (rr != null) {
            PhoneCapability ret = RadioConfig.convertHalPhoneCapability_1_3(phoneCapability);
            PhoneCapability ret = convertHalPhoneCapability(phoneCapability);
            if (responseInfo.error == RadioError.NONE) {
                // send response
                RadioResponse.sendMessageResponse(rr.mResult, ret);
@@ -159,7 +153,7 @@ public class RadioConfigResponse extends IRadioConfigResponse.Stub {
                        + responseInfo.error);
            }
        } else {
            Rlog.e(TAG, "getPhoneCapabilityResponse_1_3: Error " + responseInfo.toString());
            Rlog.e(TAG, "getPhoneCapabilityResponse: Error " + responseInfo.toString());
        }
    }

Loading