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

Commit b407c169 authored by Jack Yu's avatar Jack Yu Committed by Gerrit Code Review
Browse files

Merge "Support radio HAL V1.4 SetupDataCallResult and DataCallFailCause"

parents 27504756 938180e2
Loading
Loading
Loading
Loading
+528 −0
Original line number Diff line number Diff line
@@ -599,6 +599,10 @@ enum PdpType {
  PDP_TYPE_IPV4V6 = 3;

  PDP_TYPE_PPP = 4;

  PDP_TYPE_NON_IP = 5;

  PDP_TYPE_UNSTRUCTURED = 6;
}

// The information about packet data connection
@@ -764,6 +768,8 @@ message TelephonyEvent {

      PDP_FAIL_PDP_WITHOUT_ACTIVE_TFT = 46;

      PDP_FAIL_ACTIVATION_REJECTED_BCM_VIOLATION = 48;

      PDP_FAIL_ONLY_IPV4_ALLOWED = 50;

      PDP_FAIL_ONLY_IPV6_ALLOWED = 51;
@@ -776,6 +782,16 @@ message TelephonyEvent {

      PDP_FAIL_MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55;

      PDP_FAIL_COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56;

      PDP_FAIL_ONLY_IPV4V6_ALLOWED = 57;

      PDP_FAIL_ONLY_NON_IP_ALLOWED = 58;

      PDP_FAIL_UNSUPPORTED_QCI_VALUE = 59;

      PDP_FAIL_BEARER_HANDLING_NOT_SUPPORTED = 60;

      PDP_FAIL_MAX_ACTIVE_PDP_CONTEXT_REACHED = 65;

      PDP_FAIL_UNSUPPORTED_APN_IN_CURRENT_PLMN = 66;
@@ -820,6 +836,518 @@ message TelephonyEvent {

      PDP_FAIL_AUTH_FAILURE_ON_EMERGENCY_CALL = 122;

      PDP_FAIL_INVALID_DNS_ADDR = 123;

      PDP_FAIL_INVALID_PCSCF_OR_DNS_ADDRESS = 124;

      PDP_FAIL_CALL_PREEMPT_BY_EMERGENCY_APN = 127;

      PDP_FAIL_UE_INITIATED_DETACH_OR_DISCONNECT = 128;

      PDP_FAIL_MIP_FA_REASON_UNSPECIFIED = 2000;

      PDP_FAIL_MIP_FA_ADMIN_PROHIBITED = 2001;

      PDP_FAIL_MIP_FA_INSUFFICIENT_RESOURCES = 2002;

      PDP_FAIL_MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003;

      PDP_FAIL_MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004;

      PDP_FAIL_MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005;

      PDP_FAIL_MIP_FA_MALFORMED_REQUEST = 2006;

      PDP_FAIL_MIP_FA_MALFORMED_REPLY = 2007;

      PDP_FAIL_MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008;

      PDP_FAIL_MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009;

      PDP_FAIL_MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010;

      PDP_FAIL_MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011;

      PDP_FAIL_MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012;

      PDP_FAIL_MIP_FA_MISSING_NAI = 2013;

      PDP_FAIL_MIP_FA_MISSING_HOME_AGENT = 2014;

      PDP_FAIL_MIP_FA_MISSING_HOME_ADDRESS = 2015;

      PDP_FAIL_MIP_FA_UNKNOWN_CHALLENGE = 2016;

      PDP_FAIL_MIP_FA_MISSING_CHALLENGE = 2017;

      PDP_FAIL_MIP_FA_STALE_CHALLENGE = 2018;

      PDP_FAIL_MIP_HA_REASON_UNSPECIFIED = 2019;

      PDP_FAIL_MIP_HA_ADMIN_PROHIBITED = 2020;

      PDP_FAIL_MIP_HA_INSUFFICIENT_RESOURCES = 2021;

      PDP_FAIL_MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022;

      PDP_FAIL_MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023;

      PDP_FAIL_MIP_HA_REGISTRATION_ID_MISMATCH = 2024;

      PDP_FAIL_MIP_HA_MALFORMED_REQUEST = 2025;

      PDP_FAIL_MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026;

      PDP_FAIL_MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027;

      PDP_FAIL_MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028;

      PDP_FAIL_MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029;

      PDP_FAIL_CLOSE_IN_PROGRESS = 2030;

      PDP_FAIL_NETWORK_INITIATED_TERMINATION = 2031;

      PDP_FAIL_MODEM_APP_PREEMPTED = 2032;

      PDP_FAIL_PDN_IPV4_CALL_DISALLOWED = 2033;

      PDP_FAIL_PDN_IPV4_CALL_THROTTLED = 2034;

      PDP_FAIL_PDN_IPV6_CALL_DISALLOWED = 2035;

      PDP_FAIL_PDN_IPV6_CALL_THROTTLED = 2036;

      PDP_FAIL_MODEM_RESTART = 2037;

      PDP_FAIL_PDP_PPP_NOT_SUPPORTED = 2038;

      PDP_FAIL_UNPREFERRED_RAT = 2039;

      PDP_FAIL_PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040;

      PDP_FAIL_APN_PENDING_HANDOVER = 2041;

      PDP_FAIL_PROFILE_BEARER_INCOMPATIBLE = 2042;

      PDP_FAIL_SIM_CARD_CHANGED = 2043;

      PDP_FAIL_LOW_POWER_MODE_OR_POWERING_DOWN = 2044;

      PDP_FAIL_APN_DISABLED = 2045;

      PDP_FAIL_MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046;

      PDP_FAIL_IPV6_ADDRESS_TRANSFER_FAILED = 2047;

      PDP_FAIL_TRAT_SWAP_FAILED = 2048;

      PDP_FAIL_EHRPD_TO_HRPD_FALLBACK = 2049;

      PDP_FAIL_MIP_CONFIG_FAILURE = 2050;

      PDP_FAIL_PDN_INACTIVITY_TIMER_EXPIRED = 2051;

      PDP_FAIL_MAX_IPV4_CONNECTIONS = 2052;

      PDP_FAIL_MAX_IPV6_CONNECTIONS = 2053;

      PDP_FAIL_APN_MISMATCH = 2054;

      PDP_FAIL_IP_VERSION_MISMATCH = 2055;

      PDP_FAIL_DUN_CALL_DISALLOWED = 2056;

      PDP_FAIL_INTERNAL_EPC_NONEPC_TRANSITION = 2057;

      PDP_FAIL_INTERFACE_IN_USE = 2058;

      PDP_FAIL_APN_DISALLOWED_ON_ROAMING = 2059;

      PDP_FAIL_APN_PARAMETERS_CHANGED = 2060;

      PDP_FAIL_NULL_APN_DISALLOWED = 2061;

      PDP_FAIL_THERMAL_MITIGATION = 2062;

      PDP_FAIL_DATA_SETTINGS_DISABLED = 2063;

      PDP_FAIL_DATA_ROAMING_SETTINGS_DISABLED = 2064;

      PDP_FAIL_DDS_SWITCHED = 2065;

      PDP_FAIL_FORBIDDEN_APN_NAME = 2066;

      PDP_FAIL_DDS_SWITCH_IN_PROGRESS = 2067;

      PDP_FAIL_CALL_DISALLOWED_IN_ROAMING = 2068;

      PDP_FAIL_NON_IP_NOT_SUPPORTED = 2069;

      PDP_FAIL_PDN_NON_IP_CALL_THROTTLED = 2070;

      PDP_FAIL_PDN_NON_IP_CALL_DISALLOWED = 2071;

      PDP_FAIL_CDMA_LOCK = 2072;

      PDP_FAIL_CDMA_INTERCEPT = 2073;

      PDP_FAIL_CDMA_REORDER = 2074;

      PDP_FAIL_CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075;

      PDP_FAIL_CDMA_INCOMING_CALL = 2076;

      PDP_FAIL_CDMA_ALERT_STOP = 2077;

      PDP_FAIL_CHANNEL_ACQUISITION_FAILURE = 2078;

      PDP_FAIL_MAX_ACCESS_PROBE = 2079;

      PDP_FAIL_CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080;

      PDP_FAIL_NO_RESPONSE_FROM_BASE_STATION = 2081;

      PDP_FAIL_REJECTED_BY_BASE_STATION = 2082;

      PDP_FAIL_CONCURRENT_SERVICES_INCOMPATIBLE = 2083;

      PDP_FAIL_NO_CDMA_SERVICE = 2084;

      PDP_FAIL_RUIM_NOT_PRESENT = 2085;

      PDP_FAIL_CDMA_RETRY_ORDER = 2086;

      PDP_FAIL_ACCESS_BLOCK = 2087;

      PDP_FAIL_ACCESS_BLOCK_ALL = 2088;

      PDP_FAIL_IS707B_MAX_ACCESS_PROBES = 2089;

      PDP_FAIL_THERMAL_EMERGENCY = 2090;

      PDP_FAIL_CONCURRENT_SERVICES_NOT_ALLOWED = 2091;

      PDP_FAIL_INCOMING_CALL_REJECTED = 2092;

      PDP_FAIL_NO_SERVICE_ON_GATEWAY = 2093;

      PDP_FAIL_NO_GPRS_CONTEXT = 2094;

      PDP_FAIL_ILLEGAL_MS = 2095;

      PDP_FAIL_ILLEGAL_ME = 2096;

      PDP_FAIL_GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097;

      PDP_FAIL_GPRS_SERVICES_NOT_ALLOWED = 2098;

      PDP_FAIL_MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099;

      PDP_FAIL_IMPLICITLY_DETACHED = 2100;

      PDP_FAIL_PLMN_NOT_ALLOWED = 2101;

      PDP_FAIL_LOCATION_AREA_NOT_ALLOWED = 2102;

      PDP_FAIL_GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103;

      PDP_FAIL_PDP_DUPLICATE = 2104;

      PDP_FAIL_UE_RAT_CHANGE = 2105;

      PDP_FAIL_CONGESTION = 2106;

      PDP_FAIL_NO_PDP_CONTEXT_ACTIVATED = 2107;

      PDP_FAIL_ACCESS_CLASS_DSAC_REJECTION = 2108;

      PDP_FAIL_PDP_ACTIVATE_MAX_RETRY_FAILED = 2109;

      PDP_FAIL_RADIO_ACCESS_BEARER_FAILURE = 2110;

      PDP_FAIL_ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111;

      PDP_FAIL_DRB_RELEASED_BY_RRC = 2112;

      PDP_FAIL_CONNECTION_RELEASED = 2113;

      PDP_FAIL_EMM_DETACHED = 2114;

      PDP_FAIL_EMM_ATTACH_FAILED = 2115;

      PDP_FAIL_EMM_ATTACH_STARTED = 2116;

      PDP_FAIL_LTE_NAS_SERVICE_REQUEST_FAILED = 2117;

      PDP_FAIL_DUPLICATE_BEARER_ID = 2118;

      PDP_FAIL_ESM_COLLISION_SCENARIOS = 2119;

      PDP_FAIL_ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120;

      PDP_FAIL_ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121;

      PDP_FAIL_ESM_BAD_OTA_MESSAGE = 2122;

      PDP_FAIL_ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123;

      PDP_FAIL_ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124;

      PDP_FAIL_DS_EXPLICIT_DEACTIVATION = 2125;

      PDP_FAIL_ESM_LOCAL_CAUSE_NONE = 2126;

      PDP_FAIL_LTE_THROTTLING_NOT_REQUIRED = 2127;

      PDP_FAIL_ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128;

      PDP_FAIL_SERVICE_NOT_ALLOWED_ON_PLMN = 2129;

      PDP_FAIL_EMM_T3417_EXPIRED = 2130;

      PDP_FAIL_EMM_T3417_EXT_EXPIRED = 2131;

      PDP_FAIL_RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132;

      PDP_FAIL_RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133;

      PDP_FAIL_RRC_UPLINK_CONNECTION_RELEASE = 2134;

      PDP_FAIL_RRC_UPLINK_RADIO_LINK_FAILURE = 2135;

      PDP_FAIL_RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136;

      PDP_FAIL_RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137;

      PDP_FAIL_RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138;

      PDP_FAIL_RRC_CONNECTION_ACCESS_BARRED = 2139;

      PDP_FAIL_RRC_CONNECTION_CELL_RESELECTION = 2140;

      PDP_FAIL_RRC_CONNECTION_CONFIG_FAILURE = 2141;

      PDP_FAIL_RRC_CONNECTION_TIMER_EXPIRED = 2142;

      PDP_FAIL_RRC_CONNECTION_LINK_FAILURE = 2143;

      PDP_FAIL_RRC_CONNECTION_CELL_NOT_CAMPED = 2144;

      PDP_FAIL_RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145;

      PDP_FAIL_RRC_CONNECTION_REJECT_BY_NETWORK = 2146;

      PDP_FAIL_RRC_CONNECTION_NORMAL_RELEASE = 2147;

      PDP_FAIL_RRC_CONNECTION_RADIO_LINK_FAILURE = 2148;

      PDP_FAIL_RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149;

      PDP_FAIL_RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150;

      PDP_FAIL_RRC_CONNECTION_ABORT_REQUEST = 2151;

      PDP_FAIL_RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152;

      PDP_FAIL_NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153;

      PDP_FAIL_NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154;

      PDP_FAIL_ESM_PROCEDURE_TIME_OUT = 2155;

      PDP_FAIL_INVALID_CONNECTION_ID = 2156;

      PDP_FAIL_MAXIMIUM_NSAPIS_EXCEEDED = 2157;

      PDP_FAIL_INVALID_PRIMARY_NSAPI = 2158;

      PDP_FAIL_CANNOT_ENCODE_OTA_MESSAGE = 2159;

      PDP_FAIL_RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160;

      PDP_FAIL_PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161;

      PDP_FAIL_PDP_MODIFY_TIMEOUT_EXPIRED = 2162;

      PDP_FAIL_PDP_INACTIVE_TIMEOUT_EXPIRED = 2163;

      PDP_FAIL_PDP_LOWERLAYER_ERROR = 2164;

      PDP_FAIL_PDP_MODIFY_COLLISION = 2165;

      PDP_FAIL_MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166;

      PDP_FAIL_NAS_REQUEST_REJECTED_BY_NETWORK = 2167;

      PDP_FAIL_RRC_CONNECTION_INVALID_REQUEST = 2168;

      PDP_FAIL_RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169;

      PDP_FAIL_RRC_CONNECTION_RF_UNAVAILABLE = 2170;

      PDP_FAIL_RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171;

      PDP_FAIL_RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172;

      PDP_FAIL_RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173;

      PDP_FAIL_RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174;

      PDP_FAIL_RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175;

      PDP_FAIL_IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176;

      PDP_FAIL_IMEI_NOT_ACCEPTED = 2177;

      PDP_FAIL_EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178;

      PDP_FAIL_EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179;

      PDP_FAIL_MSC_TEMPORARILY_NOT_REACHABLE = 2180;

      PDP_FAIL_CS_DOMAIN_NOT_AVAILABLE = 2181;

      PDP_FAIL_ESM_FAILURE = 2182;

      PDP_FAIL_MAC_FAILURE = 2183;

      PDP_FAIL_SYNCHRONIZATION_FAILURE = 2184;

      PDP_FAIL_UE_SECURITY_CAPABILITIES_MISMATCH = 2185;

      PDP_FAIL_SECURITY_MODE_REJECTED = 2186;

      PDP_FAIL_UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187;

      PDP_FAIL_CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188;

      PDP_FAIL_NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189;

      PDP_FAIL_INVALID_EMM_STATE = 2190;

      PDP_FAIL_NAS_LAYER_FAILURE = 2191;

      PDP_FAIL_MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192;

      PDP_FAIL_EMBMS_NOT_ENABLED = 2193;

      PDP_FAIL_IRAT_HANDOVER_FAILED = 2194;

      PDP_FAIL_EMBMS_REGULAR_DEACTIVATION = 2195;

      PDP_FAIL_TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196;

      PDP_FAIL_LOWER_LAYER_REGISTRATION_FAILURE = 2197;

      PDP_FAIL_DATA_PLAN_EXPIRED = 2198;

      PDP_FAIL_UMTS_HANDOVER_TO_IWLAN = 2199;

      PDP_FAIL_EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200;

      PDP_FAIL_EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201;

      PDP_FAIL_EVDO_HDR_CHANGED = 2202;

      PDP_FAIL_EVDO_HDR_EXITED = 2203;

      PDP_FAIL_EVDO_HDR_NO_SESSION = 2204;

      PDP_FAIL_EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205;

      PDP_FAIL_EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206;

      PDP_FAIL_FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207;

      PDP_FAIL_OTASP_COMMIT_IN_PROGRESS = 2208;

      PDP_FAIL_NO_HYBRID_HDR_SERVICE = 2209;

      PDP_FAIL_HDR_NO_LOCK_GRANTED = 2210;

      PDP_FAIL_DBM_OR_SMS_IN_PROGRESS = 2211;

      PDP_FAIL_HDR_FADE = 2212;

      PDP_FAIL_HDR_ACCESS_FAILURE = 2213;

      PDP_FAIL_UNSUPPORTED_1X_PREV = 2214;

      PDP_FAIL_LOCAL_END = 2215;

      PDP_FAIL_NO_SERVICE = 2216;

      PDP_FAIL_FADE = 2217;

      PDP_FAIL_NORMAL_RELEASE = 2218;

      PDP_FAIL_ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219;

      PDP_FAIL_REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220;

      PDP_FAIL_EMERGENCY_MODE = 2221;

      PDP_FAIL_PHONE_IN_USE = 2222;

      PDP_FAIL_INVALID_MODE = 2223;

      PDP_FAIL_INVALID_SIM_STATE = 2224;

      PDP_FAIL_NO_COLLOCATED_HDR = 2225;

      PDP_FAIL_UE_IS_ENTERING_POWERSAVE_MODE = 2226;

      PDP_FAIL_DUAL_SWITCH = 2227;

      PDP_FAIL_PPP_TIMEOUT = 2228;

      PDP_FAIL_PPP_AUTH_FAILURE = 2229;

      PDP_FAIL_PPP_OPTION_MISMATCH = 2230;

      PDP_FAIL_PPP_PAP_FAILURE = 2231;

      PDP_FAIL_PPP_CHAP_FAILURE = 2232;

      PDP_FAIL_PPP_CLOSE_IN_PROGRESS = 2233;

      PDP_FAIL_LIMITED_TO_IPV4 = 2234;

      PDP_FAIL_LIMITED_TO_IPV6 = 2235;

      PDP_FAIL_VSNCP_TIMEOUT = 2236;

      PDP_FAIL_VSNCP_GEN_ERROR = 2237;

      PDP_FAIL_VSNCP_APN_UNATHORIZED = 2238;

      PDP_FAIL_VSNCP_PDN_LIMIT_EXCEEDED = 2239;

      PDP_FAIL_VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240;

      PDP_FAIL_VSNCP_PDN_GATEWAY_UNREACHABLE = 2241;

      PDP_FAIL_VSNCP_PDN_GATEWAY_REJECT = 2242;

      PDP_FAIL_VSNCP_INSUFFICIENT_PARAMETERS = 2243;

      PDP_FAIL_VSNCP_RESOURCE_UNAVAILABLE = 2244;

      PDP_FAIL_VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245;

      PDP_FAIL_VSNCP_PDN_ID_IN_USE = 2246;

      PDP_FAIL_VSNCP_SUBSCRIBER_LIMITATION = 2247;

      PDP_FAIL_VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248;

      PDP_FAIL_VSNCP_RECONNECT_NOT_ALLOWED = 2249;

      PDP_FAIL_IPV6_PREFIX_UNAVAILABLE = 2250;

      PDP_FAIL_HANDOFF_PREFERENCE_CHANGED = 2251;

      // Not mentioned in the specification
      PDP_FAIL_VOICE_REGISTRATION_FAIL = -1;

+134 −1
Original line number Diff line number Diff line
@@ -53,7 +53,9 @@ import android.hardware.radio.V1_4.SimLockMultiSimPolicy;
import android.hardware.radio.deprecated.V1_0.IOemHook;
import android.net.ConnectivityManager;
import android.net.KeepalivePacketData;
import android.net.LinkAddress;
import android.net.LinkProperties;
import android.net.NetworkUtils;
import android.os.AsyncResult;
import android.os.Build;
import android.os.Handler;
@@ -83,6 +85,7 @@ import android.telephony.SmsManager;
import android.telephony.TelephonyHistogram;
import android.telephony.TelephonyManager;
import android.telephony.data.ApnSetting;
import android.telephony.data.DataCallResponse;
import android.telephony.data.DataProfile;
import android.telephony.data.DataService;
import android.telephony.emergency.EmergencyNumber;
@@ -1402,7 +1405,7 @@ public class RIL extends BaseCommands implements CommandsInterface {
                    radioProxy12.setupDataCall_1_2(rr.mSerial, accessNetworkType, dpi,
                            dataProfile.isPersistent(), allowRoaming, isRoaming, reason,
                            addresses, dnses);
                } else if (mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_0)) {
                } else {
                    // IRadio V1.0 and IRadio V1.1

                    // Convert to HAL data profile
@@ -5588,6 +5591,136 @@ public class RIL extends BaseCommands implements CommandsInterface {
        return response;
    }

    /**
     * Convert SetupDataCallResult defined in 1.0 or 1.4/types.hal into DataCallResponse
     * @param dcResult setup data call result
     * @return converted DataCallResponse object
     */
    @VisibleForTesting
    public static DataCallResponse convertDataCallResult(Object dcResult) {
        if (dcResult == null) return null;

        int status, suggestedRetryTime, cid, active, mtu;
        String type, ifname;
        String[] addresses = null;
        String[] dnses = null;
        String[] gateways = null;
        List<String> pcscfs;
        if (dcResult instanceof android.hardware.radio.V1_0.SetupDataCallResult) {
            final android.hardware.radio.V1_0.SetupDataCallResult result =
                    (android.hardware.radio.V1_0.SetupDataCallResult) dcResult;
            status = result.status;
            suggestedRetryTime = result.suggestedRetryTime;
            cid = result.cid;
            active = result.active;
            type = result.type;
            ifname = result.ifname;
            if (!TextUtils.isEmpty(result.addresses)) {
                addresses = result.addresses.split("\\s+");
            }
            if (!TextUtils.isEmpty(result.dnses)) {
                dnses = result.dnses.split("\\s+");
            }
            if (!TextUtils.isEmpty(result.gateways)) {
                gateways = result.gateways.split("\\s+");
            }
            pcscfs = new ArrayList<>(Arrays.asList(result.pcscf.trim().split("\\s+")));
            mtu = result.mtu;
        } else if (dcResult instanceof android.hardware.radio.V1_4.SetupDataCallResult) {
            final android.hardware.radio.V1_4.SetupDataCallResult result =
                    (android.hardware.radio.V1_4.SetupDataCallResult) dcResult;
            status = result.cause;
            suggestedRetryTime = result.suggestedRetryTime;
            cid = result.cid;
            active = result.active;
            type = ApnSetting.getProtocolStringFromInt(result.type);
            ifname = result.ifname;
            addresses = result.addresses.stream().toArray(String[]::new);
            dnses = result.dnses.stream().toArray(String[]::new);
            gateways = result.gateways.stream().toArray(String[]::new);
            pcscfs = result.pcscf;
            mtu = result.mtu;
        } else {
            Rlog.e(RILJ_LOG_TAG, "Unsupported SetupDataCallResult " + dcResult);
            return null;
        }

        // Process address
        List<LinkAddress> laList = new ArrayList<>();
        if (addresses != null) {
            for (String address : addresses) {
                address = address.trim();
                if (address.isEmpty()) continue;

                try {
                    LinkAddress la;
                    // Check if the address contains prefix length. If yes, LinkAddress
                    // can parse that.
                    if (address.split("/").length == 2) {
                        la = new LinkAddress(address);
                    } else {
                        InetAddress ia = NetworkUtils.numericToInetAddress(address);
                        la = new LinkAddress(ia, (ia instanceof Inet4Address) ? 32 : 128);
                    }

                    laList.add(la);
                } catch (IllegalArgumentException e) {
                    Rlog.e(RILJ_LOG_TAG, "Unknown address: " + address, e);
                }
            }
        }

        // Process dns
        List<InetAddress> dnsList = new ArrayList<>();
        if (dnses != null) {
            for (String dns : dnses) {
                dns = dns.trim();
                InetAddress ia;
                try {
                    ia = NetworkUtils.numericToInetAddress(dns);
                    dnsList.add(ia);
                } catch (IllegalArgumentException e) {
                    Rlog.e(RILJ_LOG_TAG, "Unknown dns: " + dns, e);
                }
            }
        }

        // Process gateway
        List<InetAddress> gatewayList = new ArrayList<>();
        if (gateways != null) {
            for (String gateway : gateways) {
                gateway = gateway.trim();
                InetAddress ia;
                try {
                    ia = NetworkUtils.numericToInetAddress(gateway);
                    gatewayList.add(ia);
                } catch (IllegalArgumentException e) {
                    Rlog.e(RILJ_LOG_TAG, "Unknown gateway: " + gateway, e);
                }
            }
        }

        return new DataCallResponse(status, suggestedRetryTime, cid, active, type, ifname, laList,
                dnsList, gatewayList, pcscfs, mtu);
    }

    /**
     * Convert SetupDataCallResult defined in 1.0 or 1.4/types.hal into DataCallResponse
     * @param dataCallResultList List of SetupDataCallResult defined in 1.0 or 1.4/types.hal
     * @return List of converted DataCallResponse object
     */
    @VisibleForTesting
    public static ArrayList<DataCallResponse> convertDataCallResultList(
            List<? extends Object> dataCallResultList) {
        ArrayList<DataCallResponse> response =
                new ArrayList<DataCallResponse>(dataCallResultList.size());

        for (Object obj : dataCallResultList) {
            response.add(convertDataCallResult(obj));
        }
        return response;
    }

    /**
     * @return The {@link IwlanOperationMode IWLAN operation mode}
     */
+18 −3
Original line number Diff line number Diff line
@@ -78,7 +78,6 @@ import android.hardware.radio.V1_0.CdmaT53AudioControlInfoRecord;
import android.hardware.radio.V1_0.CfData;
import android.hardware.radio.V1_0.LceDataInfo;
import android.hardware.radio.V1_0.PcoDataInfo;
import android.hardware.radio.V1_0.SetupDataCallResult;
import android.hardware.radio.V1_0.SimRefreshResult;
import android.hardware.radio.V1_0.SsInfoData;
import android.hardware.radio.V1_0.StkCcUnsolSsResult;
@@ -93,6 +92,7 @@ import android.telephony.PhysicalChannelConfig;
import android.telephony.SignalStrength;
import android.telephony.SmsMessage;
import android.telephony.TelephonyManager;
import android.telephony.data.DataCallResponse;
import android.telephony.emergency.EmergencyNumber;

import com.android.internal.telephony.cdma.CdmaCallWaitingNotification;
@@ -330,13 +330,28 @@ public class RadioIndication extends IRadioIndication.Stub {
                new AsyncResult(null, response, null));
    }

    public void dataCallListChanged(int indicationType, ArrayList<SetupDataCallResult> dcList) {
    /** Indicates current data call list. */
    public void dataCallListChanged(int indicationType,
            ArrayList<android.hardware.radio.V1_0.SetupDataCallResult> dcList) {
        mRil.processIndication(indicationType);

        if (RIL.RILJ_LOGD) mRil.unsljLogRet(RIL_UNSOL_DATA_CALL_LIST_CHANGED, dcList);

        ArrayList<DataCallResponse> response = RIL.convertDataCallResultList(dcList);
        mRil.mDataCallListChangedRegistrants.notifyRegistrants(
                new AsyncResult(null, dcList, null));
                new AsyncResult(null, response, null));
    }

    /** Indicates current data call list with radio HAL 1.4. */
    public void dataCallListChanged_1_4(int indicationType,
            ArrayList<android.hardware.radio.V1_4.SetupDataCallResult> dcList) {
        mRil.processIndication(indicationType);

        if (RIL.RILJ_LOGD) mRil.unsljLogRet(RIL_UNSOL_DATA_CALL_LIST_CHANGED, dcList);

        ArrayList<DataCallResponse> response = RIL.convertDataCallResultList(dcList);
        mRil.mDataCallListChangedRegistrants.notifyRegistrants(
                new AsyncResult(null, response, null));
    }

    public void suppSvcNotify(int indicationType, SuppSvcNotification suppSvcNotification) {
+32 −9

File changed.

Preview size limit exceeded, changes collapsed.

+4 −116

File changed.

Preview size limit exceeded, changes collapsed.

Loading