ril.h revision 865ce3b4a2ba0b3a31421ca671f4d6c5595f8690
100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/*
200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project
300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * you may not use this file except in compliance with the License.
600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * You may obtain a copy of the License at
700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
1100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
1200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See the License for the specific language governing permissions and
1400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * limitations under the License.
1500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#ifndef ANDROID_RIL_H
1800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define ANDROID_RIL_H 1
1900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <stdlib.h>
218a9e02161271505de274db0c3a88087056dd5dfcWink Saville#include <stdint.h>
22a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#include <telephony/ril_cdma_sms.h>
23f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#ifndef FEATURE_UNIT_TEST
2400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
25f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#endif /* !FEATURE_UNIT_TEST */
2600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
2800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
2900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
3000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
31a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_VERSION 9     /* Current version */
3245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka#define RIL_VERSION_MIN 6 /* Minimum RIL_VERSION supported */
3300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
35a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
36a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville
3700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
3800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
4100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
4200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
4300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
4400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
4500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
4600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
4700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
4800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
4900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
5000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
5100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
523d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SMS_SEND_FAIL_RETRY = 10,             /* fail to send sms and need retry */
533d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SIM_ABSENT = 11,                      /* fail to set the location where CDMA subscription
543d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                                   shall be retrieved because of SIM or RUIM
55f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   card absent */
563d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SUBSCRIPTION_NOT_AVAILABLE = 12,      /* fail to find CDMA subscription from specified
57f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   location */
58602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_MODE_NOT_SUPPORTED = 13,              /* HW does not support preferred network type */
597553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_FDN_CHECK_FAILURE = 14,               /* command failed because recipient is not on FDN list */
607553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_ILLEGAL_SIM_OR_ME = 15                /* network selection failed due to
617553447d44bb3f494b00d573215d81398f61cfcdJohn Wang                                                   illegal SIM or ME */
6200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
6300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
6400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
6500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
6600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
6700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
6800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
6900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
7000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
7100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
7200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
74f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
75f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
762bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    /* States 2-9 below are deprecated. Just leaving them here for backward compatibility. */
77f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
79f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
80f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
81f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
82f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
84f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
85f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
862bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_NV_READY = 9,              /* Radio is on and the NV interface is available */
872bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_ON = 10                    /* Radio is on */
8800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
8900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
904380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef enum {
914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UNKNOWN = 0,
924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_GPRS = 1,
934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EDGE = 2,
944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UMTS = 3,
954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95A = 4,
964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95B = 5,
974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_1xRTT =  6,
984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_0 = 7,
994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_A = 8,
1004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSDPA = 9,
1014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSUPA = 10,
1024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSPA = 11,
1034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_B = 12,
1044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EHRPD = 13,
105c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_LTE = 14,
1062bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_HSPAP = 15, // HSPA+
1072bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_GSM = 16 // Only supports voice
1084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_RadioTechnology;
1094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
110c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// Do we want to split Data from Voice and the use
111c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// RIL_RadioTechnology for get/setPreferredVoice/Data ?
112c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
113c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA                = 0, /* GSM/WCDMA (WCDMA preferred) */
114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_ONLY                 = 1, /* GSM only */
115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_WCDMA                    = 2, /* WCDMA  */
116c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_AUTO           = 3, /* GSM/WCDMA (auto mode, according to PRL) */
117c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_EVDO_AUTO           = 4, /* CDMA and EvDo (auto mode, according to PRL) */
118c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_ONLY                = 5, /* CDMA only */
119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_EVDO_ONLY                = 6, /* EvDo only */
120c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_CDMA_EVDO_AUTO = 7, /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
121c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CDMA_EVDO            = 8, /* LTE, CDMA and EvDo */
122c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_GSM_WCDMA            = 9, /* LTE, GSM/WCDMA */
123c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CMDA_EVDO_GSM_WCDMA  = 10, /* LTE, CDMA, EvDo, GSM/WCDMA */
1240e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_ONLY                 = 11, /* LTE only */
1250e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_WCDMA                = 12  /* LTE/WCDMA */
126c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_PreferredNetworkType;
127c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
128c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Source for cdma subscription */
129c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
130c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_RUIM_SIM = 0,
131c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_NV = 1
132c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CdmaSubscriptionSource;
133c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
13474fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
13574fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
13674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
13774fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
13874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
13974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
14074fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
14174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
14274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
14374fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
14474fa38884320698c1623764850e3131b9769dff0Wink Saville
14574fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
14674fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
14774fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
14874fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
14974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
15074fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
15174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
15274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
15374fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
15474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
15574fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
15674fa38884320698c1623764850e3131b9769dff0Wink Saville
15774fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
15874fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
15974fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
16074fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
16174fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
16274fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
16374fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
16474fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
16574fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
16674fa38884320698c1623764850e3131b9769dff0Wink Saville
16774fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
1681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
18974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
19000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
19100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_Data_Call_Response_v6 */
19300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
1951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
1964f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
1974f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
1984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          apn;        /* ignored */
199c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          address;    /* An address, e.g., "192.0.1.3" or "2001:db8::1". */
200c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v4;
2014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
2024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville/*
2034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * Returned by RIL_REQUEST_SETUP_DATA_CALL, RIL_REQUEST_DATA_CALL_LIST
2044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED, on error status != 0.
2054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville */
2064380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef struct {
2074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
208beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
209beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           back-off timer value RIL wants to override the one
210beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           pre-configured in FW.
211beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The unit is miliseconds.
212beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value < 0 means no value is suggested.
21316157587c02b83a93f4e02f83a934442aa0e3e6aKazuhiro Ondo                                           The value 0 means retry should be done ASAP.
2148a9e02161271505de274db0c3a88087056dd5dfcWink Saville                                           The value of INT_MAX(0x7fffffff) means no retry. */
2154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2184380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
222c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
223c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2244380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
225c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
226c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
227c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
231c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
232c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
233c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
234c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
235c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
23600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef enum {
238a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP = 1, /* 3GPP Technologies - GSM, WCDMA */
239a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP2 = 2 /* 3GPP2 Technologies - CDMA */
240a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_RadioTechnologyFamily;
241a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
242a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef struct {
243a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RIL_RadioTechnologyFamily tech;
244a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    unsigned char             retry;       /* 0 == not retry, nonzero == retry */
245a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    int                       messageRef;  /* Valid field if retry is set to nonzero.
246a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              Contains messageRef from RIL_SMS_Response
247a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              corresponding to failed MO SMS.
248a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                            */
249a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
250a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    union {
251a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP2. See RIL_REQUEST_CDMA_SEND_SMS */
252a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        RIL_CDMA_SMS_Message* cdmaMessage;
253a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
254a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP. See RIL_REQUEST_SEND_SMS */
255a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        char**                gsmMessage;
256a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    } message;
257a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_IMS_SMS_Message;
258a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
25900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2608e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
2618e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
2628e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
26300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
264920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
265920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
266920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
26800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
27000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
27100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
27200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
27400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
276f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
277f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
27800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
27900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
28000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
28100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
28200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
28300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
28400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
28500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
28600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
28800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
28900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
29000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
29174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
29200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
29300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
29500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
29600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
2991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
30100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
30300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
306c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
307c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
308c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
309c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
310c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
311c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
312c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
313c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
314c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
315c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
316c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
317c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
318c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
319c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
320c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
321c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
32200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
32300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
32400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
32500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
32600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
32700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
32800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
32900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
33000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
33100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
33200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
33300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
33400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
33500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
33600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
33700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
33800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
33900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
34000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
34100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
34200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3453d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
3463d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
3473d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
3483d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
3493d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
3503d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
3513d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
3523d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
35300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
35400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
35500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
356e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
357e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
358e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
35900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
3607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
361e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
36200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
363e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
364e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
36500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
36600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
36700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
36800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
36900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3701b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
37100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
37200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
37300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
37400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
37500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
37600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
377602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
378602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
3791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
3801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
3811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
3821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
3831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
3841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
3851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
3861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
3871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
3881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
38903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
39000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
39100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
39200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
393f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
39400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
3964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
3984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
3994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
4004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
4014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
4024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
403d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
404d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
405d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
406d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
407d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
408d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
409d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
410d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
411d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
412d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
4134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
4143d14a71de78f2b0d02c7943e554c8726b1703935Wink Saville    PDP_FAIL_REGULAR_DEACTIVATION = 0x24,          /* restart radio */
4154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
4164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
4174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
418d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
4194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
420d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
421c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
422c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
4234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4244380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
4253492c6e5917828645feb3dba4618629929a43ab1Wink Saville    PDP_FAIL_SIGNAL_LOST = -3,
4264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
4274380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
4284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
4294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
4304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
4314380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
4324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
4334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4344380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
4354380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
43600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
437602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
438602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
439602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
440602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
441602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
442602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
443602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
44400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
44500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
44600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
44700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
44800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
44900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
45000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
45100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
45200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
45300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
45400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
45500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
45600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
45700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
45800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
4707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
4717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
472f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
476f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
491f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
492f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
498f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
499f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
501f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
5027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
503f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
504f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
505f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
506f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
509f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
510f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
513f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
516f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
517f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
518f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
519f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
520f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
521c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
522c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
525f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
526f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
5287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
5297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
530f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
5317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
532f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
533f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
534c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
5357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
5367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
537f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
538f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
539c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
540c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
541c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
542c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
543c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
544c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
545c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
546c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
547c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
548c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
549c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
550f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
551f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
553f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
554c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
555c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
556c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
557f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
558f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
559c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
560f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
56145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka/** The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH
56245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *      or as part of RIL_SimRefreshResponse_v7
56345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka */
56400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
56500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
56600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
56745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    /* SIM initialized.  All files should be re-read. */
56800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
56900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
57000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
57100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
57200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
57345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenkatypedef struct {
57445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    RIL_SimRefreshResult result;
57545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    int                  ef_id; /* is the EFID of the updated file if the result is */
57645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* SIM_FILE_UPDATE or 0 for any other result. */
57745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    char *               aid;   /* is AID(application ID) of the card application */
57845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* See ETSI 102.221 8.1 and 101.220 4 */
57945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_FILE_UPDATE result it can be set to AID of */
58045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application in which updated EF resides or it can be */
58145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         NULL if EF is outside of an application. */
58245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_INIT result this field is set to AID of */
58345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application that caused REFRESH */
58445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_RESET result it is NULL. */
58545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka} RIL_SimRefreshResponse_v7;
58645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka
587c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
5881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
5901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
5911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
5923d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
593c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
594c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
595c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
596c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
597c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
598c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
599c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
600c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
601c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
602c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
603c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
604c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
6051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
606a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
607a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
608a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
609a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
610a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
611a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
612a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
613a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
614a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
615a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
616a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
617a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
618a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
619a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
620a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
621a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
622a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
623a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
624a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
625f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
626a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
627a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
628a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
629a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
630a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
631a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
632f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
63334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
63434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
63534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
63634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
63734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
63834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
639a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
64034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
64134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
64234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
64334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
6441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
6451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
6471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
6481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
6491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
6501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
6511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
6521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
6531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
6541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
6551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
6561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
6571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
6581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
6591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
6621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
6631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
6641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
665c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
666c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
667c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
668c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_SignalStrengthWcdma;
6691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
6801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
6921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
6931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
694c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
695c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
696473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
697473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 44 to 140 dBm
698473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
699473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
700473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
701473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 20 to 3 dB.
702473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
703473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
704473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
705473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
706473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
707473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
708473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int cqi;             /* The current Channel Quality Indicator.
709473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 0 to 15.
710473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
711473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
712c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
713c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
7148a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
7158a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
7168a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
7178a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 44 to 140 dBm
7188a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
7198a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
7208a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
7218a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 20 to 3 dB.
7228a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
7238a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
7248a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
7258a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
7268a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7278a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
7288a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int cqi;             /* The current Channel Quality Indicator.
7298a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 15.
7308a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7318a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
7328a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int timingAdvance;   /* timing advance in micro seconds for a one way trip from cell to device.
7338a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Approximate distance can be calculated using 300m/us * timingAdvance.
7348a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 0x7FFFFFFE
7358a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7368a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP 36.321 section 6.1.3.5
7378a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * also: http://www.cellular-planningoptimization.com/2010/02/timing-advance-with-calculation.html */
7388a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_LTE_SignalStrength_v8;
7398a9e02161271505de274db0c3a88087056dd5dfcWink Saville
740c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
741c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
742c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
743c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
744c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
745c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
7461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
7491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
7501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
751c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
752c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
7531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7548a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
7558a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_GW_SignalStrength       GW_SignalStrength;
7568a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CDMA_SignalStrength     CDMA_SignalStrength;
7578a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_EVDO_SignalStrength     EVDO_SignalStrength;
7588a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_LTE_SignalStrength_v8   LTE_SignalStrength;
7598a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_SignalStrength_v8;
7608a9e02161271505de274db0c3a88087056dd5dfcWink Saville
7618a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityGsm */
7628a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
763c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown */
764c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown */
765c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
766c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 16-bit GSM Cell Identity described in TS 27.007, 0..65535, INT_MAX if unknown  */
7678a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityGsm;
7688a9e02161271505de274db0c3a88087056dd5dfcWink Saville
769c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellIdentityWcdma */
770c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
771c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
772c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
773c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
774c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 28-bit UMTS Cell Identity described in TS 25.331, 0..268435455, INT_MAX if unknown  */
775c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int psc;    /* 9-bit UMTS Primary Scrambling Code described in TS 25.331, 0..511, INT_MAX if unknown */
776c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellIdentityWcdma;
777c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
7788a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityCdma */
7798a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
780c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int networkId;      /* Network Id 0..65535, INT_MAX if unknown */
781c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int systemId;       /* CDMA System Id 0..32767, INT_MAX if unknown  */
782c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int basestationId;  /* Base Station Id 0..65535, INT_MAX if unknown  */
7838a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int longitude;      /* Longitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
7848a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -2592000
7858a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 2592000, both values inclusive (corresponding to a range of -180
786c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +180 degrees). INT_MAX if unknown */
7878a9e02161271505de274db0c3a88087056dd5dfcWink Saville
7888a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int latitude;       /* Latitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
7898a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -1296000
7908a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 1296000, both values inclusive (corresponding to a range of -90
791c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +90 degrees). INT_MAX if unknown */
7928a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityCdma;
7938a9e02161271505de274db0c3a88087056dd5dfcWink Saville
7948a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityLte */
7958a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
796c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
797c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
798c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int ci;     /* 28-bit Cell Identity described in TS ???, INT_MAX if unknown */
799c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int pci;    /* physical cell id 0..503, INT_MAX if unknown  */
800c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int tac;    /* 16-bit tracking area code, INT_MAX if unknown  */
8018a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityLte;
8028a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8038a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoGsm */
8048a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8058a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityGsm   cellIdentityGsm;
8068a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_GW_SignalStrength signalStrengthGsm;
8078a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoGsm;
8088a9e02161271505de274db0c3a88087056dd5dfcWink Saville
809c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellInfoWcdma */
810c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
811c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CellIdentityWcdma cellIdentityWcdma;
812c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_SignalStrengthWcdma signalStrengthWcdma;
813c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellInfoWcdma;
814c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
8158a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoCdma */
8168a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8178a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityCdma      cellIdentityCdma;
8188a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CDMA_SignalStrength   signalStrengthCdma;
8198a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_EVDO_SignalStrength   signalStrengthEvdo;
8208a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoCdma;
8218a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8228a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoLte */
8238a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8248a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityLte        cellIdentityLte;
8258a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_LTE_SignalStrength_v8  signalStrengthLte;
8268a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoLte;
8278a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8288a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TYPE_XXX
8298a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
8308a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_GSM    = 1,
8318a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_CDMA   = 2,
8328a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_LTE    = 3,
833c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CELL_INFO_TYPE_WCDMA  = 4,
8348a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoType;
8358a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8368a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TIMESTAMP_TYPE_XXX
8378a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
8388a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_UNKNOWN = 0,
8398a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_ANTENNA = 1,
8408a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_MODEM = 2,
8418a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_OEM_RIL = 3,
8428a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_JAVA_RIL = 4,
8438a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_TimeStampType;
8448a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8458a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8468a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellInfoType  cellInfoType;   /* cell type for selecting from union CellInfo */
8478a9e02161271505de274db0c3a88087056dd5dfcWink Saville  int               registered;     /* !0 if this cell is registered 0 if not registered */
8488a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_TimeStampType timeStampType;  /* type of time stamp represented by timeStamp */
8498a9e02161271505de274db0c3a88087056dd5dfcWink Saville  uint64_t          timeStamp;      /* Time in nanos as returned by ril_nano_time */
8508a9e02161271505de274db0c3a88087056dd5dfcWink Saville  union {
8518a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoGsm     gsm;
8528a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoCdma    cdma;
8538a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoLte     lte;
854c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    RIL_CellInfoWcdma   wcdma;
8558a9e02161271505de274db0c3a88087056dd5dfcWink Saville  } CellInfo;
8568a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfo;
8578a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
8591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
8601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
8611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
8621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
8631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
8641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
8651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
8661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
8671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
8681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
8691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
8701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
8711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
8721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
8741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
8751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
8761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
8771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
8781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
8791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
8801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
8811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
8831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
884a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
8851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
8861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
8881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
8891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
8901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
8911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
8931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
894a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
8951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
8961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
8971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
8981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
8991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
9001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
9021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
9031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
9041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
9051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
9061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
9071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
9081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
9091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
9101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
9111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
9141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
9151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
9161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
9171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
9191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
9211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
9221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
9231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
9241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
9251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
9271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
9291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
9301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
9321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
9341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
9351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
9361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
9401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
9421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
9431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
9441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
9461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
9471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
9491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
9501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
9521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
9531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
9551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
9561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
9581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
9591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
9611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
9621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
9631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
9641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
9661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
9691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
9701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
9711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
97300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
97400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
9767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
97700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
979fd7293711394c422711ff07d15a357955ff2194fWink Saville * "response" is const RIL_CardStatus_v6 *
98000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
98200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
98300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
98400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
98500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
98600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
98700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
98800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
989309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
99200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
993c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
99400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
995593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
996593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
99700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
100100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
100200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
100300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
100400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
100700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
101100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
101300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1017c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
101800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1019593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1020593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
102600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
102700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
103000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
103400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
103500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
103700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
103800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
104000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
1041c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
104200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1043593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1044593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
105000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
105100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
105400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
105500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
105600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
105700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
105800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
106000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
106200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
106300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1064c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
106500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1066593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1067593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
107400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
107500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
107600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
107700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
108200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1088c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1090593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1091593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
11007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
110100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1116593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1117593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
111800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
112200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
112500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
11267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1139593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1140593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
11547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
115500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
115700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
11617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
116200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
11737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
11807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
118500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
118600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
119100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11952bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Only valid when radio state is "RADIO_STATE_ON"
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1197c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1198c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
120300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
120400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
121100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
121300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
121506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
121606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
12177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1218f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
122100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
122500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
122600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
122700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
122800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
122900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
123100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
123200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
123400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
123606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
123706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
123800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
123900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
124000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
124300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
124400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
124500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
124600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
124800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
125100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
125300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
125506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
125606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
125900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
126500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
126700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
126900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
127200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
127400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
127600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
127900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
128000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
128600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
128700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
129100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
129400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
129600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
129900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
130200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
130300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
130700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
131200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
131900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
132000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
132400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
133200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
13351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
133603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
133703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
133803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
134134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
134234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1353f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
135500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
135900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
13651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
13661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
137100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
13733d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1375c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1381f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
13821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
13831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1384f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
13851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
13861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1387f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1388f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1389f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
13907f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
13917f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
13927f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
13937f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
13947f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
13957f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
13967f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
13977f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
13987f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
13991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
14001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
14011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
14021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
14031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
14041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
14051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
14061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
14071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
14084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
14094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
14101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
14111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
141229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
14131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
14141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
141536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
141636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
141736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
141836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
14194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
14201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
14211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
142236b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
142336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
142436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
142536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
14264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
14271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
14281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
14291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
14301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
14311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
14321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
14331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
14341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
14351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
143603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
14371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
14381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
143903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
14401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
14411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
144203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
14431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
14441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
14451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1446602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1447602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1448602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1449602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1450602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1451602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1452602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1453602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1454602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1455602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1456602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1457602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
145829be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1459c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1460c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1461c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1462c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1463c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1464c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1465c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1466c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1467c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1468c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1469c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1470c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1471c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1472c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1473c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1474c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1475c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1476c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1477c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1478c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1479c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1480c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1481c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1482ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1483ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1484ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1485ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
14861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
14871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
148900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
14901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
14911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
14921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
14931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
149400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
149600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
149700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
149800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1499c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
150000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
150100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1502c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
150300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1504c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
15083a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
150900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
15114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
15124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1513c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1514c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1515c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1516c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1517c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1518c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1519c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1520c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1521c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1522c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1523c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1524c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1525c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1527ae67953e93218859806918f20175693015fd8eccWink Saville * The values at offsets 6..10 are optional LTE location information in decimal.
1528ae67953e93218859806918f20175693015fd8eccWink Saville * If a value is unknown that value may be NULL. If all values are NULL,
1529ae67953e93218859806918f20175693015fd8eccWink Saville * none need to be present.
1530ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[6] is TAC, a 16-bit Tracking Area Code.
1531ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[7] is CID, a 0-503 Physical Cell Identifier.
1532ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[8] is ECI, a 28-bit E-UTRAN Cell Identifier.
1533ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[9] is CSGID, a 27-bit Closed Subscriber Group Identity.
1534ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[10] is TADV, a 6-bit timing advance value.
1535ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
153700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
153800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
15397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
15407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
154200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
154500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
154700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1548c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
155000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
155100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
155400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
15577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
155800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
15647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
157300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
157629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * If the radio is is turned off/on the radio modem subsystem
157729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is expected return to an initialized state. For instance,
157829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * any voice and data calls will be terminated and all associated
157929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * lists emptied.
158029487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1606602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
16087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
16247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
16377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1644602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
16547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
16697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1683f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Setup a packet data connection. If RIL_Data_Call_Response_v6.status
168629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * return success it is added to the list of data calls and a
168729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is sent. The call remains in the
168829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * list until RIL_REQUEST_DEACTIVATE_DATA_CALL is issued or the
168929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * radio is powered off/on. This list is returned by RIL_REQUEST_DATA_CALL_LIST
169029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED.
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
16924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
16934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
16944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
16954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
16964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
16974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
16984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
16994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1700c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
17014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
17024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1704c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1705c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1706602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
17077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1708f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1709f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1710f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1711920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1712920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1713920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1714920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1715920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1716c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1717c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
17184f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1719c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1721c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
17243d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
172500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1727c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1728c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
17294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
17304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
17314380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
17324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1734f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1736f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
173700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
174000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
174400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
174500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
174600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1747fd7293711394c422711ff07d15a357955ff2194fWink Saville * "data" is a const RIL_SIM_IO_v6 *
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
174900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
175000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
175900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
176500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1788602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
17987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
18077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
18127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
183800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
18547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
18747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
18977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
19317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1934b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1936b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1938b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1939b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1940b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1941b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
194900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
195100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1955f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1959f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1974f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1978f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2014f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Deactivate packet data connection and remove from the
201729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * data call list if SUCCESS is returned. Any other return
201829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * values should also try to remove the call from the list,
201929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * but that may not be possible. In any event a
202029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_RADIO_POWER off/on must clear the list. An
202129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is not expected to be
202229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * issued because of an RIL_REQUEST_DEACTIVATE_DATA_CALL.
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
2025f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
2026d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
2027d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
2028d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
20297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2037f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2039f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
20477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
2052c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2053fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2054fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
20587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
20607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
2084c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2085fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2086fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2088593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
2089593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
209200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
212900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
21557553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21587553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
21597553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
21607553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
21617553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
21627553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
216300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
216600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
216700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
217000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
217300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
217500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
217600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
217800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
217900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
21807553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21837553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
21847553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
21857553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
21867553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
21877553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
218900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
219200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
22027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
220300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
220400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
220500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
220600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
220800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
221100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
221400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
221700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
222000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
22257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
22297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
22337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
22477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
22507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
225300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
22657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
22687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
22817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
22897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
22907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2291f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2292f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
229900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
23507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
23527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2363c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2364c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
23657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
23667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2367f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2368f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
23777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
23784380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
238100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2388c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2389c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
23907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2392f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2395f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
239600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Returns the data call list. An entry is added when a
239829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_SETUP_DATA_CALL is issued and removed on a
239929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL. The list is emptied
240029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * when RIL_REQUEST_RADIO_POWER off/on is issued.
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2403c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
24067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
240700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
240800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
240929487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
241029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * See also: RIL_UNSOL_DATA_CALL_LIST_CHANGED
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
241200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
241500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2416f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
241700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
241900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
242000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
242100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2422f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2423f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
242400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
242600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
24287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
242900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
243000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2431f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
243200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
243300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
243400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
243500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
243600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
243700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
243800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
244000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
244100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
244300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
244400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
244600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
24477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
244900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
24517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
245300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
245400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
245600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
245700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
245900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
246000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
246100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
246200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
246300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
246500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
246600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
246800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
246900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
247100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
247200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
247300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
247800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
24807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
248100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
248200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
248300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
248500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
248600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
248700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
248800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
248900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
249000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2495432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2496432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2497432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
249800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
250000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
251000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
251100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
251300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
251400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
251700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
252100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
252200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
252300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
252700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
252800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
253400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
253900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
254100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
257700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
257800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
257900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
258000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2581f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2582f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2583f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2584f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2585f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2586f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2587f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2588f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2589f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2590f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2591f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2592f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2593f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
259600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
259800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
259900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
260000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
260100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
260200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
260300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
260400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
260500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
260600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
260800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
261000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
261200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
261300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
261400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
261600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
261700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
261800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
261900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
262000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2621f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2622f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2623f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2624f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2625f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2626f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2627f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2628f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2629f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2630f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2631f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2632f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2633f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
263400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
263600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
263700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
263800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
263900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
264100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
264200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
264300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
264400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
264500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
264600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
264800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
264900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
265000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
265200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
265400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
265500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
265700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
265800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
265900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
266000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
266100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
266200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
266300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
266400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
266500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
266700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
266800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
267000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
267100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
267300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
267500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
267600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
267700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
267800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
267900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
268000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
268100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
268200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
268300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
268500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
268600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
268800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
268900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
269000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
269100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
269200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
269300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
269400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
269500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
269600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
269700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
269800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
269900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
270000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
270100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
270200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
270300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
270500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
270600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
270800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
270900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
271000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
271100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
271200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
271300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
271400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
271500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
271600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
271700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
271800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
271900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
272000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
272100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
272300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
272400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
272500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
272600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
272800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
272900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
273000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
273200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
273400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
273500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
273600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
273700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
273800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
273900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
274000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
274100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
274200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
27447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
274500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
274600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
274700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
27497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
275000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
275100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
275200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
275300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
275400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
275500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
275600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
275700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
275900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
276000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2761c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
276200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
276400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2766f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2768f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2769f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
277000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
277100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
277200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
277300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
277400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
277500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
277700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
277800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
278000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2782c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
278300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
278500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
278600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
278700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
278800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
279000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
279100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
279200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
279300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
279400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
279500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
279700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
279900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
280000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
280100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
280200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
280300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
280400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
280500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
280600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
280700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
280800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
280900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
28103d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
281100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2812432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2813432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
281400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
281600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
281700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
281900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
282000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
282100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
28233d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
282400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
282500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
282600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
282700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
282800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
283000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
283100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
283200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2833f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2834c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
28357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2836f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2837f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2838f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2839f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2840c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
2841f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2842f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2843f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2844f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2845f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2846f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2847f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2848f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2849f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2850c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2851c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
2852f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2853c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2856f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
28577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2858f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2859f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2860f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2861f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2862f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2863f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
28647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2865f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2867f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2868f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2869f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2870f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2871f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2872f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2873f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2874f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
28767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2878f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
28807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2881f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2882f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2883f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2884f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
28857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2886f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2888f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2889f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2890f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2891f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2892f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2893f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2894f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2895f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2896f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
28977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2898f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2899f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2900f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
29021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
29031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
29041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
29057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2906f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2908f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2909f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2910f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2911f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2912f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2913f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2914f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2915f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2916f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
29177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2918f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2919f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2920f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2922f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2923f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
29241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
29251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
29261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2927f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2928f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2930f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2931f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2932f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2933f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2934f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2935f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2936f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2937f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2938f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2939f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2940f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2941f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2942f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2943f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2944f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2945f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
29467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2947f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2949f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2950f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2952f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2953f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2954f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2955f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2956f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2957f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
29587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2959f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2960f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2961f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2963f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2964f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2965f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
29667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2967f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2969f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2970f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2971f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2972f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2974f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2976f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2977f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2979f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2980f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2981f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
2982f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
29837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2984f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2986f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2987f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2988f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2989f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2990f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2991f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
2993f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2994f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
2996f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2997f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2999602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
3000602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
3001602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
3002602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
3003602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
3004602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
30057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3006f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3008f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3009f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3011f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3012f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3013f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3014f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
3015f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3016f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
301703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
3018f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
301903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
302003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
302103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
3022f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3023f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
302403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
302503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
302603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
302703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
302803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
30297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3030f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3032f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3033f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3034f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3035f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3036f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3037f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
303803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
3039f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3040f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3041f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
3042f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3043f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
3044f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3045f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
30467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3047f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
30487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3049bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
3050bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
3051bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
3052bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
3053bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
3054bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
3055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3056f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3057f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
30581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
3059f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3060f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3061f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3062f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
3063f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3064f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3065f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
3066f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3067f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
3068f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
3069f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
30717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3072f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3074f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3075f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3076f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3077f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3078f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3079f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3080f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
3081f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3082f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3083a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
3084a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3085a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
3086f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3087f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3088a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3089a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
3090a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
3091a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3096f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3097f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3098a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
3099f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3100f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3101a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
3102f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3103f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
3104f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3105a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
3106a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
3107a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3108f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3109a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3110f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3111f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3112f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3113f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3114f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3115f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3116a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
3117f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3118f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3119a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
3120f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3121a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
3122f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3123f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3124f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3125f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
3126f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3127a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3128f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3129a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3130f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3132f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3133f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3134f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3135f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3136a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
3137f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3138f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3139a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
3140f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3141f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
3142f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3143f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3144a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3145a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
3146a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
3147a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3148f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3149f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3150f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3151f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3152f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3153f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3154a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
3155f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3156f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3157a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
3158f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3159f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
3160f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3161a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
3162a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
3163a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3164f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3165a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3166f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3167f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3168f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3169f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3170f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3171f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3172a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
3173f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3174f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3175a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
3176f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3177f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
3178f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3179f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3180f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3181f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
3182f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3183a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3184f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3185a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3186f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3187f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3188f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3189f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3190f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3191f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3192a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
3193f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3194f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3195f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
3196f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3197f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
3198f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3199f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
3200f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
3201f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
3202f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3203f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
3204f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3205f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3206f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
320829be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
320929be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
321029be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
321129be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
32121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
3213d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
3214f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3215f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3216f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3217f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
3218f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3219f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3220eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
3221f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3222f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3223f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
3224f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3225f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
3226f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3227f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3228f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3229f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3230f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3231f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3232f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3233f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3234f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3235f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3236f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3237f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3238eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3239f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3240f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3241f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3242f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3243f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3244f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3245f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3246f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3247f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3248f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3249f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3250f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3251f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3252f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3253f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3254f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3255f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3256eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3257f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3258f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3259f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3260eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3261eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3262eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3263f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3264eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3265f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3266eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3267eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3268f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3269eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3270eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3271f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3272eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3273f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3274eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3275eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3276eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3277eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3278eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3279f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3280f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3281f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3282f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3283f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3284eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3285f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
32861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
32871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
32881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
32901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
32911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
32921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
32947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
32951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
32967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
32971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
32981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
32991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
33001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
33011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3304f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3305000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3306000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3307000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3308000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3309000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3310000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3311000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3312000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3313000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3314000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3315000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3316000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3317000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3318000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3319000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3320000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3321000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3322000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3323000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3324000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3325000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3326000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3327000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3328000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3329000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3330000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3331000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3332000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3333000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3334000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3335000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3336000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3337000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3338000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3339b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3340b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3341b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3342b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3343b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3344b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3345b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3346b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3347b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3348b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3349b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3350b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3351b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3352b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3353b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3354b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3355b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3356b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3357b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
33582641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
33592641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
33602641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33612641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
33622641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
33632641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33642641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
33652641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
33662641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33672641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
33682641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
33692641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
33702641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
33712641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33722641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
33732641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
33742641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3375c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3376c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3377c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3378c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3379c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3380c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3381c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3382c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3383c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3384c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3385c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3386c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3387c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3388c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3389c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3390c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3391c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3392c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3393c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3394c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3395c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3396fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby/**
3397fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * RIL_REQUEST_ISIM_AUTHENTICATION
3398fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3399fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Request the ISIM application on the UICC to perform AKA
3400fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * challenge/response algorithm for IMS authentication
3401fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3402fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "data" is a const char * containing the challenge string in Base64 format
3403fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "response" is a const char * containing the response in Base64 format
3404fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3405fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Valid errors:
3406fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  SUCCESS
3407fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  RADIO_NOT_AVAILABLE
3408fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  GENERIC_FAILURE
3409fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby */
3410fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby#define RIL_REQUEST_ISIM_AUTHENTICATION 105
3411fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby
3412300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3413300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU
3414300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3415300105d1487f5238940c18792b879793826b61f4Jake Hamby * Acknowledge successful or failed receipt of SMS previously indicated
3416300105d1487f5238940c18792b879793826b61f4Jake Hamby * via RIL_UNSOL_RESPONSE_NEW_SMS, including acknowledgement TPDU to send
3417300105d1487f5238940c18792b879793826b61f4Jake Hamby * as the RP-User-Data element of the RP-ACK or RP-ERROR PDU.
3418300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3419300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is const char **
3420300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[0] is "1" on successful receipt (send RP-ACK)
3421300105d1487f5238940c18792b879793826b61f4Jake Hamby *                          is "0" on failed receipt (send RP-ERROR)
3422300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[1] is the acknowledgement TPDU in hexadecimal format
3423300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3424300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is NULL
3425300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3426300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3427300105d1487f5238940c18792b879793826b61f4Jake Hamby *  SUCCESS
3428300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RADIO_NOT_AVAILABLE
3429300105d1487f5238940c18792b879793826b61f4Jake Hamby *  GENERIC_FAILURE
3430300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3431300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU 106
3432300105d1487f5238940c18792b879793826b61f4Jake Hamby
3433300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3434300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS
3435300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3436300105d1487f5238940c18792b879793826b61f4Jake Hamby * Requests to send a SAT/USAT envelope command to SIM.
3437300105d1487f5238940c18792b879793826b61f4Jake Hamby * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111.
3438300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3439300105d1487f5238940c18792b879793826b61f4Jake Hamby * This request has one difference from RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND:
3440300105d1487f5238940c18792b879793826b61f4Jake Hamby * the SW1 and SW2 status bytes from the UICC response are returned along with
3441300105d1487f5238940c18792b879793826b61f4Jake Hamby * the response data, using the same structure as RIL_REQUEST_SIM_IO.
3442300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3443300105d1487f5238940c18792b879793826b61f4Jake Hamby * The RIL implementation shall perform the normal processing of a '91XX'
3444300105d1487f5238940c18792b879793826b61f4Jake Hamby * response in SW1/SW2 to retrieve the pending proactive command and send it
3445300105d1487f5238940c18792b879793826b61f4Jake Hamby * as an unsolicited response, as RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND does.
3446300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3447300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is a const char * containing the SAT/USAT command
3448300105d1487f5238940c18792b879793826b61f4Jake Hamby * in hexadecimal format starting with command tag
3449300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3450300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is a const RIL_SIM_IO_Response *
3451300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3452300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3453300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_SUCCESS
3454300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
3455300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_GENERIC_FAILURE
3456300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3457300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS 107
3458300105d1487f5238940c18792b879793826b61f4Jake Hamby
34592bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
34602bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_REQUEST_VOICE_RADIO_TECH
34612bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34622bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
34632bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * when radio state is RADIO_STATE_ON
34642bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34652bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is NULL
34662bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "response" is int *
34672bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *) response)[0] is of type const RIL_RadioTechnology
34682bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34692bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Valid errors:
34702bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  SUCCESS
34712bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  RADIO_NOT_AVAILABLE
34722bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  GENERIC_FAILURE
34732bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
34742bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_REQUEST_VOICE_RADIO_TECH 108
34752bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
34768a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
34778a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_GET_CELL_INFO_LIST
34788a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
34798a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Request all of the current cell information known to the radio. The radio
34808a9e02161271505de274db0c3a88087056dd5dfcWink Saville * must a list of all current cells, including the neighboring cells. If for a particular
34818a9e02161271505de274db0c3a88087056dd5dfcWink Saville * cell information isn't known then the appropriate unknown value will be returned.
34828a9e02161271505de274db0c3a88087056dd5dfcWink Saville * This does not cause or change the rate of RIL_UNSOL_CELL_INFO_LIST.
34838a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
34848a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
34858a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
34868a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of  RIL_CellInfo.
34878a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
34888a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_GET_CELL_INFO_LIST 109
34898a9e02161271505de274db0c3a88087056dd5dfcWink Saville
34908a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
34918a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE
34928a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
34938a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Sets the minimum time between when RIL_UNSOL_CELL_INFO_LIST should be invoked.
3494c57b3eb525db241bd3e6092453f48388bc880447Wink Saville * A value of 0, means invoke RIL_UNSOL_CELL_INFO_LIST when any of the reported
34958a9e02161271505de274db0c3a88087056dd5dfcWink Saville * information changes. Setting the value to INT_MAX(0x7fffffff) means never issue
34968a9e02161271505de274db0c3a88087056dd5dfcWink Saville * a RIL_UNSOL_CELL_INFO_LIST.
34978a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
34988a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is int *
34998a9e02161271505de274db0c3a88087056dd5dfcWink Saville * ((int *)data)[0] is minimum time in milliseconds
35008a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35018a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is NULL
35028a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35038a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Valid errors:
35048a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  SUCCESS
35058a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  RADIO_NOT_AVAILABLE
35068a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  GENERIC_FAILURE
35078a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
35088a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE 110
3509300105d1487f5238940c18792b879793826b61f4Jake Hamby
351075697538e485ea2981960dcd4878bfdd032731acSungmin Choi/**
351175697538e485ea2981960dcd4878bfdd032731acSungmin Choi * RIL_REQUEST_SET_INITIAL_ATTACH_APN
351275697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
351375697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Set an apn to initial attach network
351475697538e485ea2981960dcd4878bfdd032731acSungmin Choi * "response" is NULL
351575697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
351675697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Valid errors:
351775697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUCCESS
351875697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  RADIO_NOT_AVAILABLE (radio resetting)
351975697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  GENERIC_FAILURE
352075697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUBSCRIPTION_NOT_AVAILABLE
352175697538e485ea2981960dcd4878bfdd032731acSungmin Choi */
352275697538e485ea2981960dcd4878bfdd032731acSungmin Choi#define RIL_REQUEST_SET_INITIAL_ATTACH_APN 111
352375697538e485ea2981960dcd4878bfdd032731acSungmin Choi
3524a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3525a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_REGISTRATION_STATE
3526a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3527a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Request current IMS registration state
3528a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3529a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is NULL
3530a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3531a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is int *
3532a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[0] is registration state:
3533a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              0 - Not registered
3534a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              1 - Registered
3535a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3536865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * If ((int*)response)[0] is = 1, then ((int *) response)[1]
3537a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * must follow with IMS SMS format:
3538a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3539865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * ((int *) response)[1] is of type RIL_RadioTechnologyFamily
3540865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *
3541865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * Valid errors:
3542865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  SUCCESS
3543865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  RADIO_NOT_AVAILABLE
3544865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  GENERIC_FAILURE
3545a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3546a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_REGISTRATION_STATE 112
3547a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
3548a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3549a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_SEND_SMS
3550a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3551a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Send a SMS message over IMS
3552a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3553a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is const RIL_IMS_SMS_Message *
3554a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3555a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is a const RIL_SMS_Response *
3556a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3557a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Based on the return error, caller decides to resend if sending sms
3558a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
3559a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * In case of retry, data is encoded based on Voice Technology available.
3560a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3561a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Valid errors:
3562a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SUCCESS
3563a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  RADIO_NOT_AVAILABLE
3564a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SMS_SEND_FAIL_RETRY
3565a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  FDN_CHECK_FAILURE
3566a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  GENERIC_FAILURE
3567a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3568a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3569a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_SEND_SMS 113
3570a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
357100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
357200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3573f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
357400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
357500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
357600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
357700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
357800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
357900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
358000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
358100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
358200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
358300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
358400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
358500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
358600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
358700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
358800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
358900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
359000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
359100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
359200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
359300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
359400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
359500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
359600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
359700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
35987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
359900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
360000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
360100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
360200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
360300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
360400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
360500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
360600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
360700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3608c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
360900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3610c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
361100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
361200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
361300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3614c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
361500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
361600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
361700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
361800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
361900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
362000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
362100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3622c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
362300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
362400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
362500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
362600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
362700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
36287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
362900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
363000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
363100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
363200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
363300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
363400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
363500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
363600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
36377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
363800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
363900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
364000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
364100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
364200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
364300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
364400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
364500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
364600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
364700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
36487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
364900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
365000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
365100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
365200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
365300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
365400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
365500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
365600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
36577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
365800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
365900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
366000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
366100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
366200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
366300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
366400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
366500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
366600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
366700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
36687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
366900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
367000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
367100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
367200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
367300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
367500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
367700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
367800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
367900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
368000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
368100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
36827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
368300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
368400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
368500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
368600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
368700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
368800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
368900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
369000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
369100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
369200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
369300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
369400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
369500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
369600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
369700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
369800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
369900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
370100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
370200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
370300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
370400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
37057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
370600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
370900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
371000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
371100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
371200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
371300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
371400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
371500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
371600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
371700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
371800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
371900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
372000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
372100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
372200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
372400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
372500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
372600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3729f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
373000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3731c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
373229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST. It is the complete list
373329487ef2685e5ee38f0348ab031cb96a608296baWink Saville * of current data contexts including new contexts that have been
373429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * activated. A data call is only removed from this list when the
373529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * framework sends a RIL_REQUEST_DEACTIVATE_DATA_CALL or the radio
373629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is powered off/on.
373700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3738f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
373900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
374000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3741f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
374200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
374300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
374400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
374500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
374600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
374700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
374800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
374900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
375000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
375100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
375300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
375500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
375600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
375700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
375800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
375900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
376000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
376100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
376200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
376400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
376500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
376600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
376700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
376800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
376900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
377000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
377200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
377300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
377400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
377500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
377600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
377800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
377900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
378000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
378200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
378300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
378400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
378600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
378700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
378800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
378900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
379000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
379200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
379400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
379500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
379600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
379700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
379900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
380000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
380200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
380300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
380400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
380500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
380700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
380900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
381000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
381100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
381200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
381300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
381400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
381500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
381600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
381745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 6 or older:
381800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
381900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
382000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
382145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * SIM_FILE_UPDATE or NULL for any other result.
382245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *
382345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 7:
382445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * "data" is a RIL_SimRefreshResponse_v7 *
382500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38262bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Note: If the SIM state changes as a result of the SIM refresh (eg,
38272bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
382800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
382900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
383000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
383100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
383200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
383300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
383400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
383500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
38366453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
38376453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
38386453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
38396453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
38406453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
38416453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
38426453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
38436453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
38446453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
384500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38463d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
38473d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
384800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
384900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
385000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
385134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
385234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
385334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
385434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
38553d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
385634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3857f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
385834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
385934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
386034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
386134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
386234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
386334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
386434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
386534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
38663d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
386734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
38683d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
386934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
387034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
38713d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
387234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
387334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
38743d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
387534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
387634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
387734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
387834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
387934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
388034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
388134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
38827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
38830eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
38840eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
38850eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
38860eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
38870eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
38880eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
38890eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
3890f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
389134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
389234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3893f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
389434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
389534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
389634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
389734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
389834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
389934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
390034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
390234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3903f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3904f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
390534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
390634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
390734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
390834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
390934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
391034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
391134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
391234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
391334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
391434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
391534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
391634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
39171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
39181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
39191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
39211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
39221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
39241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
39261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
39271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
39281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
39291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
39301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
39321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
39347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
39351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
39361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
393734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
39381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
39391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
39401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
39421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
39431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
39451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
39461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
39471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
39491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
39501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
39511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
39521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
39531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
39551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
39571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
39581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
39591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
396034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
3961af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
3962af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
3963af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3964af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
3965af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3966af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
3967af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
3968af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
3969af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
39705d621da539abea83309d77317ede40126f47d5f0John Wang/**
39715d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
39725d621da539abea83309d77317ede40126f47d5f0John Wang *
39735d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
39745d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
39755d621da539abea83309d77317ede40126f47d5f0John Wang *
39765d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
39775d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
39785d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
39795d621da539abea83309d77317ede40126f47d5f0John Wang */
39805d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
39815d621da539abea83309d77317ede40126f47d5f0John Wang
39825909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
39835909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
39845909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
39855909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
39865909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
39875909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
39885909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
39895909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
39905909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
39915909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
39925909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
3993c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3994c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3995c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
3996c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3997c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
3998c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3999c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4000c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
4001c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
400229487ef2685e5ee38f0348ab031cb96a608296baWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED 1031
4003c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4004c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4005c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
4006c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4007c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
4008c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4009c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4010c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
4011c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4012c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
4013c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4014c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4015c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
4016c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4017c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
4018c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4019c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
4020c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
4021c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4022c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
4023c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4024c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4025c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
4026c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
40275b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville/**
40285b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * RIL_UNSOL_RIL_CONNECTED
40295b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
40305b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * Called the ril connects and returns the version
40315b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
40325b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * "data" is int *
40335b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * ((int *)data)[0] is RIL_VERSION
40345b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville */
40355b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville#define RIL_UNSOL_RIL_CONNECTED 1034
40365b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville
40372bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
40382bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_UNSOL_VOICE_RADIO_TECH_CHANGED
40392bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
40402bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Indicates that voice technology has changed. Contains new radio technology
40412bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * as a data in the message.
40422bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
40432bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is int *
40442bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *)data)[0] is of type const RIL_RadioTechnology
40452bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
40462bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
40472bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_UNSOL_VOICE_RADIO_TECH_CHANGED 1035
40482bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
40498a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
40508a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_UNSOL_CELL_INFO_LIST
40518a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
40528a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Same information as returned by RIL_REQUEST_GET_CELL_INFO_LIST, but returned
40538a9e02161271505de274db0c3a88087056dd5dfcWink Saville * at the rate no greater than specified by RIL_REQUEST_SET_UNSOL_CELL_INFO_RATE.
40548a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
40558a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
40568a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
40578a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of RIL_CellInfo.
40588a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
40598a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_UNSOL_CELL_INFO_LIST 1036
40602bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
4061865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville/**
4062a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED
4063a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4064a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Called when IMS registration state has changed
4065a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4066865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * To get IMS registration state and IMS SMS format, callee needs to invoke the
4067865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * following request on main thread:
4068a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4069865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * RIL_REQUEST_IMS_REGISTRATION_STATE
4070865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *
4071865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * "data" is NULL
4072a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4073a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
4074a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED 1037
4075a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
407600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
407700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
407800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
407900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
408000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
408100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
408200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
408300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
408400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
408500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
408600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
408700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
408800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
40897f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
409000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
409100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
409200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
409300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
409400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
409500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
409600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
409700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
409800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
409900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
410000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
410100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
410200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
410300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
410400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
410500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
410600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
41077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
410800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
410900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
41107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
411100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
411200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
411300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
411400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
411500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
411600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
411700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
411800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
411900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
412100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
412200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
412300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
412400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
412500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
412600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
412700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
412800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
412900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
413000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
413100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
413200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
413300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
413400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
413500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
413600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
413700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
413800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
413900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
414000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
414100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
414200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
414300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
414475697538e485ea2981960dcd4878bfdd032731acSungmin Choitypedef struct {
414575697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *apn;
414675697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *protocol;
414775697538e485ea2981960dcd4878bfdd032731acSungmin Choi    int authtype;
414875697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *username;
414975697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *password;
415075697538e485ea2981960dcd4878bfdd032731acSungmin Choi} RIL_InitialAttachApn;
415175697538e485ea2981960dcd4878bfdd032731acSungmin Choi
415200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
415300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
415400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
415500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
415600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
415700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
415800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
415900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
41607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
416100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
416200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
416300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
416400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
41657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
416600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
416700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
416800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
416900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
417000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
417100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
417200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
417300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
417400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
41757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
417600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
417700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
417800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
41797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
418000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
418100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
418200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
418300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
418400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
418500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
41860d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
41877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
418800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
418900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
419000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
41917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
41927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
419300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
419400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
419500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
419600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
419700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
419800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
419900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
420000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
420100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
420200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
420300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
420400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
420500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
420600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
420700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
420800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
420900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
421000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
421100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
421200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
421300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
421400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
421500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
421600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
421700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
42183d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
421900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
422000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
422100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
422200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
422300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
422400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
42257f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
422600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
422700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
422800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
422900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
423000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
423100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
423200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
423300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
423400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42357f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
423600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
423700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
423800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
423900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
42407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
424100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
424200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
424300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
424400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
424500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
424600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
424700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
424800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
424900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
425000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42510d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
42520d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
425300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
425400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
425500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
425600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
425700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
425800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
425900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
426000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
426100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
4262