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>
21f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#ifndef FEATURE_UNIT_TEST
2200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
23f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#endif /* !FEATURE_UNIT_TEST */
2400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
2600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
2700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
2800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
292bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_VERSION 7     /* Current version */
3045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka#define RIL_VERSION_MIN 6 /* Minimum RIL_VERSION supported */
3100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
32a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
33a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
34a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville
3500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
3600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
3900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
4000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
4100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
4200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
4300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
4400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
4500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
4600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
4700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
4800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
4900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
503d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SMS_SEND_FAIL_RETRY = 10,             /* fail to send sms and need retry */
513d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SIM_ABSENT = 11,                      /* fail to set the location where CDMA subscription
523d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                                   shall be retrieved because of SIM or RUIM
53f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   card absent */
543d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SUBSCRIPTION_NOT_AVAILABLE = 12,      /* fail to find CDMA subscription from specified
55f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   location */
56602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_MODE_NOT_SUPPORTED = 13,              /* HW does not support preferred network type */
577553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_FDN_CHECK_FAILURE = 14,               /* command failed because recipient is not on FDN list */
587553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_ILLEGAL_SIM_OR_ME = 15                /* network selection failed due to
597553447d44bb3f494b00d573215d81398f61cfcdJohn Wang                                                   illegal SIM or ME */
6000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
6100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
6200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
6300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
6400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
6500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
6600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
6700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
6800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
6900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
7000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
72f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
73f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
742bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    /* States 2-9 below are deprecated. Just leaving them here for backward compatibility. */
75f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
77f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
78f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
79f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
80f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
82f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
83f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
842bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_NV_READY = 9,              /* Radio is on and the NV interface is available */
852bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_ON = 10                    /* Radio is on */
8600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
8700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
884380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef enum {
894380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UNKNOWN = 0,
904380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_GPRS = 1,
914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EDGE = 2,
924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UMTS = 3,
934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95A = 4,
944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95B = 5,
954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_1xRTT =  6,
964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_0 = 7,
974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_A = 8,
984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSDPA = 9,
994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSUPA = 10,
1004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSPA = 11,
1014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_B = 12,
1024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EHRPD = 13,
103c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_LTE = 14,
1042bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_HSPAP = 15, // HSPA+
1052bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_GSM = 16 // Only supports voice
1064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_RadioTechnology;
1074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
108c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// Do we want to split Data from Voice and the use
109c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// RIL_RadioTechnology for get/setPreferredVoice/Data ?
110c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
111c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA                = 0, /* GSM/WCDMA (WCDMA preferred) */
112c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_ONLY                 = 1, /* GSM only */
113c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_WCDMA                    = 2, /* WCDMA  */
114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_AUTO           = 3, /* GSM/WCDMA (auto mode, according to PRL) */
115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_EVDO_AUTO           = 4, /* CDMA and EvDo (auto mode, according to PRL) */
116c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_ONLY                = 5, /* CDMA only */
117c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_EVDO_ONLY                = 6, /* EvDo only */
118c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_CDMA_EVDO_AUTO = 7, /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CDMA_EVDO            = 8, /* LTE, CDMA and EvDo */
120c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_GSM_WCDMA            = 9, /* LTE, GSM/WCDMA */
121c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CMDA_EVDO_GSM_WCDMA  = 10, /* LTE, CDMA, EvDo, GSM/WCDMA */
122c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_ONLY                 = 11  /* LTE only */
123c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_PreferredNetworkType;
124c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
125c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Source for cdma subscription */
126c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
127c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_RUIM_SIM = 0,
128c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_NV = 1
129c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CdmaSubscriptionSource;
130c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
13174fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
13274fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
13374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
13474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
13574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
13674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
13774fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
13874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
13974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
14074fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
14174fa38884320698c1623764850e3131b9769dff0Wink Saville
14274fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
14374fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
14474fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
14574fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
14674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
14774fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
14874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
14974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
15074fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
15174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
15274fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
15374fa38884320698c1623764850e3131b9769dff0Wink Saville
15474fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
15574fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
15674fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
15774fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
15874fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
15974fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
16074fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
16174fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
16274fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
16374fa38884320698c1623764850e3131b9769dff0Wink Saville
16474fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
1651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
18674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
18700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
18800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_Data_Call_Response_v6 */
19000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
1921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
1934f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
1944f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
1954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          apn;        /* ignored */
196c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          address;    /* An address, e.g., "192.0.1.3" or "2001:db8::1". */
197c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v4;
1984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
1994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville/*
2004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * Returned by RIL_REQUEST_SETUP_DATA_CALL, RIL_REQUEST_DATA_CALL_LIST
2014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED, on error status != 0.
2024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville */
2034380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef struct {
2044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
205beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
206beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           back-off timer value RIL wants to override the one
207beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           pre-configured in FW.
208beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The unit is miliseconds.
209beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value < 0 means no value is suggested.
21016157587c02b83a93f4e02f83a934442aa0e3e6aKazuhiro Ondo                                           The value 0 means retry should be done ASAP.
21116157587c02b83a93f4e02f83a934442aa0e3e6aKazuhiro Ondo                                           The value of MAX_INT(0x7fffffff) means no retry. */
2124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2144380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2184380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
219c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
220c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
222c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
223c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
224c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2254380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2274380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
228c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
229c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
230c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
231c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
232c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
23300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
23400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2358e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
2368e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
2378e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
23800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
239920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
240920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
241920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
24200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
24300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
24400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
24500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
24600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
24700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
24800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
24900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
25000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
251f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
252f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
25300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
25400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
25500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
25600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
25700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
25800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
25900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
26000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
26100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
26200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
26300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
26400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
26674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
26800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
27000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
27100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
27200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
2741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
27600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
27700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
27800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
27900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
28000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
281c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
282c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
283c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
284c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
285c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
286c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
287c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
288c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
289c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
290c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
291c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
292c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
293c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
294c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
295c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
296c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
29900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
30100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
30300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
30600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
30700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
30800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
30900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
31000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
31100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
31200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
31300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
31400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
31500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
31600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
31700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
31800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
31900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3203d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
3213d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
3223d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
3233d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
3243d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
3253d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
3263d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
3273d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
32800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
32900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
33000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
331e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
332e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
333e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
33400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
3357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
336e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
33700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
338e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
339e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
34000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
34100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
34200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3451b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
34600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
34700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
34800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
34900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
35000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
35100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
352602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
353602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
3541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
3551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
3561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
3571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
3581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
3591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
3601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
3611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
3621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
3631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
36403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
36500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
36600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
36700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
368f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
36900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3704380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
3714380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3724380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
3734380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
3744380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
3754380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
3764380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
3774380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
378d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
379d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
380d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
381d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
382d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
383d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
384d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
385d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
386d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
387d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
3884380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
3894380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
3904380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
3914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
392d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
3934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
394d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
395c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
396c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
3974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
399c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_SIGNAL_LOST = -3,            /* no retry */
4004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
4014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
4024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
4034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
4044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
4054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
4064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
4074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
4094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
41000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
411602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
412602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
413602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
414602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
415602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
416602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
417602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
41800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
41900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
42000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
42100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
42200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
42300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
42400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
42500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
42600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
42700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
42800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
42900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
43000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
43100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
43200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
434f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
435f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
436f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
440f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
441f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
442f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
443f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
4447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
4457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
446f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
447f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
448f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
449f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
451f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
452f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
453f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
454f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
455f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
456f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
457f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
458f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
470f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
472f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
4767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
491f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
492f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
495c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
496c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
498f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
499f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
5027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
5037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
504f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
5057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
506f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
508c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
5097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
5107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
513c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
514c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
515c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
516c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
517c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
518c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
519c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
520c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
521c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
522c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
523c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
525f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
527f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
528c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
529c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
530c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
531f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
532f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
533c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
534f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
53545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka/** The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH
53645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *      or as part of RIL_SimRefreshResponse_v7
53745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka */
53800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
53900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
54000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
54145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    /* SIM initialized.  All files should be re-read. */
54200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
54300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
54400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
54500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
54600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
54745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenkatypedef struct {
54845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    RIL_SimRefreshResult result;
54945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    int                  ef_id; /* is the EFID of the updated file if the result is */
55045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* SIM_FILE_UPDATE or 0 for any other result. */
55145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    char *               aid;   /* is AID(application ID) of the card application */
55245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* See ETSI 102.221 8.1 and 101.220 4 */
55345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_FILE_UPDATE result it can be set to AID of */
55445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application in which updated EF resides or it can be */
55545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         NULL if EF is outside of an application. */
55645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_INIT result this field is set to AID of */
55745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application that caused REFRESH */
55845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_RESET result it is NULL. */
55945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka} RIL_SimRefreshResponse_v7;
56045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka
561c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
5621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
5641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
5651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
5663d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
567c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
568c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
569c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
570c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
571c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
572c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
573c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
574c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
575c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
576c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
577c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
578c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
5791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
580a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
581a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
582a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
583a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
584a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
585a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
586a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
587a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
588a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
589a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
590a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
591a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
592a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
593a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
594a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
595a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
596a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
597a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
598a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
599f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
600a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
601a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
602a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
603a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
604a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
605a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
60734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
60834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
60934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
61034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
61134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
61234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
613a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
61434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
61534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
61634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
61734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
6181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
6191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
6211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
6221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
6231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
6241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
6251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
6261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
6271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
6281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
6291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
6301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
6311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
6321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
6331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
6361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
6371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
6381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
6501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
6621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
6631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
664c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
665c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
666473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
667473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 44 to 140 dBm
668473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
669473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
670473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
671473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 20 to 3 dB.
672473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
673473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
674473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
675473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
676473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
677473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
678473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int cqi;             /* The current Channel Quality Indicator.
679473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 0 to 15.
680473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
681473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
682c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
683c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
684c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
685c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
686c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
687c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
688c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
689c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
6901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
6931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
6941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
695c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
696c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
6971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
6991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
7001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
7011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
7021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
7031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
7041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
7051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
7061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
7071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
7081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
7091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
7101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
7111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
7121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
7141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
7151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
7161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
7171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
7181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
7191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
7201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
7211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
724a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
7251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
7261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
7281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
7291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
7301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
7311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
734a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
7351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
7361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
7371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
7381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
7391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
7401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
7421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
7431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
7441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
7451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
7461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
7471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
7481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
7491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
7501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
7511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
7541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
7551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
7561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
7571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
7591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
7611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
7621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
7631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
7641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
7651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
7671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
7691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
7701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
7721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
7741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
7751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
7761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
7801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
7821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
7831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
7841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
7861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
7871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
7891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
7901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
7921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
7931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
7951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
7961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
7981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
7991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
8011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
8021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
8031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
8041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
8061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
8081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
8091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
8101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
8111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
81300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
81400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
8167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
81700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
81800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
819fd7293711394c422711ff07d15a357955ff2194fWink Saville * "response" is const RIL_CardStatus_v6 *
82000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
82100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
82200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
82300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
82400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
82500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
82700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
82800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
829309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
83000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
83200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
833c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
83400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
835593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
836593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
83700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
84100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
84200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
84300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
84400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
84500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
84600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
84700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
84800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
84900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
85000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
85100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
85300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
85500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
85600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
857c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
85800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
859593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
860593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
86100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
86500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
86600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
86700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
86800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
86900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
87000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
87100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
87200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
87300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
87400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
87500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
87700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
87800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
88000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
881c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
88200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
883593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
884593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
88500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
88900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
89000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
89100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
89200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
89300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
89400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
89500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
89600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
89700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
89800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
90000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
90200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
90300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
904c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
90500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
906593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
907593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
90800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
91200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
91300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
91400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
91500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
91600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
91700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
91900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
92000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
92100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
92200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
92400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
92600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
92700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
928c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
92900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
930593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
931593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
93200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
93600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
93700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
93800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
93900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
9407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
94100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
94200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
94400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
94700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
94800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
95000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
95200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
95300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
954c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
95500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
956593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
957593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
95800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
96200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
96300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
96400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
96500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
9667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
96700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
96800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
96900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
97000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
97100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
97200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
97300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
97700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
979593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
980593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
98100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
98500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
98600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
98700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
98800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
98900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
99200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
99300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
9947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
99500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
99700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
99900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
10017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
100200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
100600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
100700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
101100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
10137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
101700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
101900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
10207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
102200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
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 */
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
103400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10352bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Only valid when radio state is "RADIO_STATE_ON"
103600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1037c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1038c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
103900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
104000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
104300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
104400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
104600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
104700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
104800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
105000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
105100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
105506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
105606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
10577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1058f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
105900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
106100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
106400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
106500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
106600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
106700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
107400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
107606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
107706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
107800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
108800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
109000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
109300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
109506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
109606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
110900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
111400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
111800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
111900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
112100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
112200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
112600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
113900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
114400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
115700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
11751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
117603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
117703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
117803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
118134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
118234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
118500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
118600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
119100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1193f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
119500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
119800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
12001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
120300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
12051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
12061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
121100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
12133d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1215c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
121600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
121800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1221f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
12221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
12231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1224f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
12251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
12261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1227f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1228f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1229f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
12307f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
12317f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12327f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
12337f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12347f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
12357f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12367f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
12377f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12387f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
12391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
12401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
12411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
12421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
12431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
12441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
12451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
12461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
12471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
12484380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
12494380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
12501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
12511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
125229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
12531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
12541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
125536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
125636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
125736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
125836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
12594380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
12601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
12611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
126236b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
126336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
126436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
126536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
12664380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
12671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
12681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
12691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
12701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
12711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
12721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
12731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
12741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
12751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
127603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
12771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
12781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
127903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
12801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
12811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
128203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
12831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
12841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
12851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1286602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1287602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1288602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1289602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1290602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1291602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1292602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1293602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1294602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1295602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1296602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1297602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
129829be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1299c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1300c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1301c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1302c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1303c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1304c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1305c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1306c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1307c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1308c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1309c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1310c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1311c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1312c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1313c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1314c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1315c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1316c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1317c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1318c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1319c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1320c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1321c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1322ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1323ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1324ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1325ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
13261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
13271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
13311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
13321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
13331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1339c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
134100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1342c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1344c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
13483a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
13514380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
13524380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1353c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1354c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1355c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1356c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1357c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1358c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1359c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1360c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1361c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1362c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1363c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1364c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1365c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1367ae67953e93218859806918f20175693015fd8eccWink Saville * The values at offsets 6..10 are optional LTE location information in decimal.
1368ae67953e93218859806918f20175693015fd8eccWink Saville * If a value is unknown that value may be NULL. If all values are NULL,
1369ae67953e93218859806918f20175693015fd8eccWink Saville * none need to be present.
1370ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[6] is TAC, a 16-bit Tracking Area Code.
1371ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[7] is CID, a 0-503 Physical Cell Identifier.
1372ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[8] is ECI, a 28-bit E-UTRAN Cell Identifier.
1373ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[9] is CSGID, a 27-bit Closed Subscriber Group Identity.
1374ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[10] is TADV, a 6-bit timing advance value.
1375ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
13797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1388c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
139100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
139600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
13977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
14007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
14047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
140600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
141200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
141400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
141629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * If the radio is is turned off/on the radio modem subsystem
141729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is expected return to an initialized state. For instance,
141829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * any voice and data calls will be terminated and all associated
141929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * lists emptied.
142029487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
142900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
143100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
143400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
143500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
143600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
143700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
143800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
143900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
144400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1446602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
144700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
14487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
144900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
145000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
145300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
145500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
14647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
146500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
146800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
146900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
147000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
147200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
147300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
147500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
14777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
147800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
147900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
148100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
148200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
148300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1484602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
148500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
148600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
148900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
149000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
149300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
14947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
149600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
149700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
149800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
150000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
150100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
150200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
150300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
150400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
15097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
151100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
151300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
151500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
151600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
151700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
151900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Setup a packet data connection. If RIL_Data_Call_Response_v6.status
152629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * return success it is added to the list of data calls and a
152729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is sent. The call remains in the
152829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * list until RIL_REQUEST_DEACTIVATE_DATA_CALL is issued or the
152929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * radio is powered off/on. This list is returned by RIL_REQUEST_DATA_CALL_LIST
153029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED.
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
15334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
15344380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
15354380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
15364380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
15374380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
15384380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
15394380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1540c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
15414380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
15424380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1544c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1545c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1546602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
15477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1548f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1549f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1550f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1551920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1552920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1553920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1554920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1555920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1556c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1557c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
15584f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1559c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1561c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
15643d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15664380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1567c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1568c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
15694380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
15704380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
15714380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
15724380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
157300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1574f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1576f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1587fd7293711394c422711ff07d15a357955ff2194fWink Saville * "data" is a const RIL_SIM_IO_v6 *
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1628602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
16387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
16477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
16527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
168500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
168700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
16947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
170000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
170800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
17147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
171600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
171700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
171800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
171900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
172300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
172400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
172500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
173100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
173200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
173400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
173600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
174000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
174400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
174500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
174600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
174700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
174900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
175000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
175900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
176500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
17717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1774b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1776b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1778b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1779b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1780b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1781b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1795f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1799f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1814f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1818f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Deactivate packet data connection and remove from the
185729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * data call list if SUCCESS is returned. Any other return
185829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * values should also try to remove the call from the list,
185929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * but that may not be possible. In any event a
186029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_RADIO_POWER off/on must clear the list. An
186129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is not expected to be
186229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * issued because of an RIL_REQUEST_DEACTIVATE_DATA_CALL.
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
1865f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
1866d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
1867d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
1868d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
18697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
18877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
1892c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
1893fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
1894fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
18987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
19007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
1924c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
1925fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
1926fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1928593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1929593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
194900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
195900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
196200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
19957553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19987553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
19997553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
20007553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
20017553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
20027553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
20207553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20237553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
20247553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
20257553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
20267553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
20277553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
20427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
20657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
20697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
20737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
20877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
20907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
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 * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
21057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
21087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
21217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
21297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
21307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2132f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
216300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
216600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
217000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
217500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
217600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
217700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
217800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
217900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
218000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
218900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
21907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
21927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
220100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2203c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2204c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
22057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
22067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
221100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
221400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
22177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
22184380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
222000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
222400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2228c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2229c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
22307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2232f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2235f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Returns the data call list. An entry is added when a
223829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_SETUP_DATA_CALL is issued and removed on a
223929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL. The list is emptied
224029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * when RIL_REQUEST_RADIO_POWER off/on is issued.
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2243c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
224929487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
225029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * See also: RIL_UNSOL_DATA_CALL_LIST_CHANGED
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2253f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2256f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2262f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2263f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2271f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
22877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
22917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
229900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
23077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
23197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
23207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2335432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2336432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2337432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
236500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
238100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
239400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
239600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
239800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
239900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
240300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
240700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
240800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
240900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
241000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
241300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
241500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
241600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
241700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
241800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
241900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
242000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2421f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2422f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2423f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2424f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2425f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2426f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2427f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2428f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2429f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2430f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2432f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
243400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
243600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
243800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
243900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
244000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
244100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
244200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
244300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
244400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
244600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
245000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
245300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
245400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
245600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
245700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
245900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
246000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2470f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2472f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
247800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
247900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
248100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
248200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
248300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
248400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
248500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
248600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
248800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
248900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
249000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
249500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
249700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
249800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
250000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
251000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
251100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
251300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
251500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
251700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
252100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
252200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
252300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
252600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
252800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
253900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
254000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
254100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
254200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
254900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
255500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
256000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
256600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
257200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
257700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
257800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
257900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
258000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
258100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
258200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
25847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
258500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
258600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
258700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
259000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
259100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
259200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
259300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
259500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
259600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
259700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
259900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
260000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2601c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
260200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
260400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2607f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2608f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2609f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
261000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
261100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
261200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
261300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
261400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
261500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
261700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
261800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
262000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2622c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
262300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
262500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
262600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
262700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
262800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
263000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
263100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
263200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
263300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
263400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
263500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
263700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
263900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
264000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
264200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
264300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
264400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
264500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
264600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
264700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
264800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
264900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
26503d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
265100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2652432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2653432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
265400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
265600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
265700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
265900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
266000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
266100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
26633d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
266400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
266500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
266600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
266700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
266800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
267000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
267100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
267200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2673f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2674c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
26757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2676f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2677f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2678f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2679f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2680c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
2681f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2682f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2683f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2684f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2685f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2686f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2687f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2688f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2689f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2690c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2691c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
2692f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2693c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
2694f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2695f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2696f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
26977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2698f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2699f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2700f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2701f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2702f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2703f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
27047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2705f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2707f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2708f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2709f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2710f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2711f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2712f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2713f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2714f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2715f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
27167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2717f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2718f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2719f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
27207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2721f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2722f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2723f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2724f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
27257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2726f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2728f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2729f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2730f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2731f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2732f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2733f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2734f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2735f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2736f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
27377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2738f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2739f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2740f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2741f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
27421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
27431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
27441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
27457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2746f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2748f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2749f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2750f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2751f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2752f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2753f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2754f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2755f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2756f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
27577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2758f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2759f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2760f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
27617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2762f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2763f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
27641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
27651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
27661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2768f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2770f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2771f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2772f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2773f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2774f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2775f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2776f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2777f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2778f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2779f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2780f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2781f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2782f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2783f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2784f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2785f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
27867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2787f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2789f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2790f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2791f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2792f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2793f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2794f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2795f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2796f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2797f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
27987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2800f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2801f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
28027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2803f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2804f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2805f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
28067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2807f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2809f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2810f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2811f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2812f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2813f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2814f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2815f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2816f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2817f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2818f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2819f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2820f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2821f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
2822f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
28237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2824f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2826f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2827f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2828f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2829f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2830f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2831f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2832f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
2833f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2834f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2835f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
2836f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2837f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
2838f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2839602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
2840602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
2841602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
2842602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
2843602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
2844602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
28457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2846f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2848f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2849f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2850f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2851f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2852f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2853f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2856f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
285703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
2858f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
285903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
286003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
286103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
2862f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2863f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
286403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
286503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
286603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
286703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
286803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
28697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2870f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2872f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2873f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2874f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
287803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
2879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2880f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2881f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
2882f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2883f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
2884f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2885f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
28867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2887f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
28887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2889bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
2890bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
2891bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
2892bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
2893bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
2894bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
2895f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2896f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2897f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
28981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
2899f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2900f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2902f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
2903f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2904f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2905f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
2906f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2907f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
2908f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
2909f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2910f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
29117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2912f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2914f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2915f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2916f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2917f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2918f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2919f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2920f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
2921f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2922f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2923a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
2924a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2925a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
2926f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2927f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2928a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2929a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
2930a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
2931a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2932f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2933f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2934f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2935f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2936f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2937f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2938a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
2939f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2940f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2941a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
2942f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2943f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
2944f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2945a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
2946a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
2947a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2948f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2949a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2950f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2952f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2953f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2954f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2955f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2956a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
2957f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2958f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2959a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
2960f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2961a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
2962f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2963f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2964f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2965f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
2966f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2967a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2968f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2969a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2970f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2971f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2972f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2974f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2976a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
2977f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2979a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
2980f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2981f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
2982f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2983f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2984a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2985a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
2986a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
2987a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2988f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2989f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2990f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2991f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2993f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2994a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
2995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2996f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2997a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2999f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
3000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3001a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
3002a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
3003a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3004f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3005a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3006f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3007f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3008f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3009f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3011f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3012a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
3013f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3014f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3015a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
3016f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3017f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
3018f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3019f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3020f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3021f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
3022f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3023a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3024f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3025a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3026f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3027f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3028f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3029f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3030f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3031f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3032a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
3033f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3034f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3035f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
3036f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3037f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
3038f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3039f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
3040f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
3041f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
3042f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3043f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
3044f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3045f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3046f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3047f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
304829be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
304929be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
305029be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
305129be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
30521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
3053d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
3054f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3056f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3057f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
3058f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3059f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3060eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
3061f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3062f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3063f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
3064f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3065f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
3066f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3067f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3068f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3069f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3071f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3072f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3073f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3074f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3075f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3076f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3077f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3078eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3079f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3080f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3081f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3082f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3083f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3084f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3085f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3086f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3087f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3088f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3089f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3090f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3091f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3096eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3097f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3098f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3099f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3100eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3101eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3102eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3103f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3104eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3105f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3106eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3107eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3108f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3109eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3110eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3111f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3112eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3113f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3114eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3115eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3116eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3117eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3118eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3119f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3120f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3121f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3122f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3123f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3124eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3125f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
31261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
31271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
31281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
31291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
31301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
31311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
31321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
31331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
31347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
31351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
31367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
31371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
31381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
31391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
31401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
31411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
31421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
31431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3144f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3145000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3146000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3147000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3148000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3149000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3150000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3151000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3152000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3153000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3154000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3155000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3156000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3157000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3158000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3159000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3160000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3161000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3162000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3163000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3164000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3165000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3166000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3167000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3168000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3169000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3170000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3171000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3172000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3173000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3174000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3175000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3176000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3177000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3178000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3179b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3180b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3181b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3182b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3183b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3184b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3185b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3186b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3187b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3188b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3189b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3190b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3191b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3192b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3193b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3194b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3195b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3196b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3197b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
31982641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
31992641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
32002641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
32012641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
32022641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
32032641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
32042641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
32052641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
32062641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
32072641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
32082641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
32092641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
32102641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
32112641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
32122641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
32132641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
32142641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3215c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3216c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3217c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3218c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3219c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3220c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3221c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3222c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3223c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3224c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3225c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3226c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3227c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3228c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3229c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3230c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3231c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3232c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3233c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3234c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3235c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3236fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby/**
3237fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * RIL_REQUEST_ISIM_AUTHENTICATION
3238fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3239fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Request the ISIM application on the UICC to perform AKA
3240fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * challenge/response algorithm for IMS authentication
3241fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3242fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "data" is a const char * containing the challenge string in Base64 format
3243fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "response" is a const char * containing the response in Base64 format
3244fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3245fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Valid errors:
3246fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  SUCCESS
3247fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  RADIO_NOT_AVAILABLE
3248fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  GENERIC_FAILURE
3249fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby */
3250fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby#define RIL_REQUEST_ISIM_AUTHENTICATION 105
3251fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby
3252300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3253300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU
3254300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3255300105d1487f5238940c18792b879793826b61f4Jake Hamby * Acknowledge successful or failed receipt of SMS previously indicated
3256300105d1487f5238940c18792b879793826b61f4Jake Hamby * via RIL_UNSOL_RESPONSE_NEW_SMS, including acknowledgement TPDU to send
3257300105d1487f5238940c18792b879793826b61f4Jake Hamby * as the RP-User-Data element of the RP-ACK or RP-ERROR PDU.
3258300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3259300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is const char **
3260300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[0] is "1" on successful receipt (send RP-ACK)
3261300105d1487f5238940c18792b879793826b61f4Jake Hamby *                          is "0" on failed receipt (send RP-ERROR)
3262300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[1] is the acknowledgement TPDU in hexadecimal format
3263300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3264300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is NULL
3265300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3266300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3267300105d1487f5238940c18792b879793826b61f4Jake Hamby *  SUCCESS
3268300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RADIO_NOT_AVAILABLE
3269300105d1487f5238940c18792b879793826b61f4Jake Hamby *  GENERIC_FAILURE
3270300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3271300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU 106
3272300105d1487f5238940c18792b879793826b61f4Jake Hamby
3273300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3274300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS
3275300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3276300105d1487f5238940c18792b879793826b61f4Jake Hamby * Requests to send a SAT/USAT envelope command to SIM.
3277300105d1487f5238940c18792b879793826b61f4Jake Hamby * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111.
3278300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3279300105d1487f5238940c18792b879793826b61f4Jake Hamby * This request has one difference from RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND:
3280300105d1487f5238940c18792b879793826b61f4Jake Hamby * the SW1 and SW2 status bytes from the UICC response are returned along with
3281300105d1487f5238940c18792b879793826b61f4Jake Hamby * the response data, using the same structure as RIL_REQUEST_SIM_IO.
3282300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3283300105d1487f5238940c18792b879793826b61f4Jake Hamby * The RIL implementation shall perform the normal processing of a '91XX'
3284300105d1487f5238940c18792b879793826b61f4Jake Hamby * response in SW1/SW2 to retrieve the pending proactive command and send it
3285300105d1487f5238940c18792b879793826b61f4Jake Hamby * as an unsolicited response, as RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND does.
3286300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3287300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is a const char * containing the SAT/USAT command
3288300105d1487f5238940c18792b879793826b61f4Jake Hamby * in hexadecimal format starting with command tag
3289300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3290300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is a const RIL_SIM_IO_Response *
3291300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3292300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3293300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_SUCCESS
3294300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
3295300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_GENERIC_FAILURE
3296300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3297300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS 107
3298300105d1487f5238940c18792b879793826b61f4Jake Hamby
32992bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
33002bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_REQUEST_VOICE_RADIO_TECH
33012bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
33022bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
33032bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * when radio state is RADIO_STATE_ON
33042bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
33052bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is NULL
33062bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "response" is int *
33072bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *) response)[0] is of type const RIL_RadioTechnology
33082bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
33092bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Valid errors:
33102bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  SUCCESS
33112bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  RADIO_NOT_AVAILABLE
33122bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  GENERIC_FAILURE
33132bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
33142bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_REQUEST_VOICE_RADIO_TECH 108
33152bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
3316300105d1487f5238940c18792b879793826b61f4Jake Hamby
331700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
331800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3319f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
332000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
332100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
332200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
332300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
332400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
332500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
332600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
332700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
332800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
332900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
333000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
333100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
333200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
333300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
333400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
333500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
333600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
333700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
333800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
333900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
334100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
334300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
334500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
334600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
334700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
334900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
335000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
335100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3354c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
335500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3356c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
335700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
335800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
335900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3360c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
336100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
336200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
336300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
336400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
336500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
336600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
336700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3368c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
336900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
337000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
337100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
337200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
337300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
33747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
337500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
337600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
337700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
337800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
337900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
338000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
338100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
338200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
338400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
338500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
338600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
338700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
338800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
338900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
339000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
339100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
339200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
33947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
339500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
339600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
339700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
339800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
339900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
340000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
340100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
340200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
340400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
340500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
340600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
340700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
340800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
340900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
341000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
341100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
341200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
34147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
341500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
341600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
341700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
341800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
341900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
342100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
342300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
342400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
342600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
34287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
342900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
343000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
343100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
343200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
343300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
343400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
343500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
343600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
343700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
343800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
343900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
344000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
344100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
344200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
344300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
344400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
344500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
344600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
344700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
344800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
344900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
345000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
34517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
345200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
345300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
345400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
345500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
345600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
345700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
345800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
345900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
346000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
346100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
346200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
346300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
346400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
346500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
346600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
346700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
346800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
347000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
347100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
347200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
347600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3477c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
347829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST. It is the complete list
347929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * of current data contexts including new contexts that have been
348029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * activated. A data call is only removed from this list when the
348129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * framework sends a RIL_REQUEST_DEACTIVATE_DATA_CALL or the radio
348229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is powered off/on.
348300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
348500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
348600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
348800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
348900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
349000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
349100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
349200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
349300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
349400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
349500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
349600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
349700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
349800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
349900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
350000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
350100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
350200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
350300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
350400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
350500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
350600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
350700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
350800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
350900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
351000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
351100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
351200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
351300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
351400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
351500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
351600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
351700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
351800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
351900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
352000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
352100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
352200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
352300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
352400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
352500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
352600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
352700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
352800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
352900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
353000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
353100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
353200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
353300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
353400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
353500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
353600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
353700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
353800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
353900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
354000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
354100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
354200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
354300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
354400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
354500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
354600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
354700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
354800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
354900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
355000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
355100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
355200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
355300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
355400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
355500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
355600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
355700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
355800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
355900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
356000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
356100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
356200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
356345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 6 or older:
356400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
356500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
356600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
356745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * SIM_FILE_UPDATE or NULL for any other result.
356845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *
356945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 7:
357045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * "data" is a RIL_SimRefreshResponse_v7 *
357100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
35722bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Note: If the SIM state changes as a result of the SIM refresh (eg,
35732bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
357400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
357500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
357600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
357700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
357800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
357900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
358000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
358100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
35826453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
35836453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
35846453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
35856453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
35866453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
35876453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
35886453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
35896453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
35906453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
359100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
35923d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
35933d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
359400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
359500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
359600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
359734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
359834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
359934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
360034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
36013d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
360234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3603f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
360434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
360534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
360634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
360734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
360834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
360934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
361034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
361134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
36123d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
361334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
36143d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
361534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
361634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
36173d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
361834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
361934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
36203d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
362134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
362234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
362334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
362434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
362534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
362634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
362734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
36287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
36290eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
36300eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
36310eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
36320eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
36330eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
36340eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
36350eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
3636f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
363734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
363834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3639f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
364034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
364134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
364234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
364334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
364434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
364534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
364634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3647f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
364834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3649f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
365134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
365234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
365334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
365434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
365534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
365634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
365734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
365834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
365934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
366034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
366134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
366234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
36631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
36641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
36651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
36671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
36681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
36701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
36721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
36731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
36741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
36751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
36761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
36781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
36807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
36811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
36821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
368334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
36841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
36851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
36861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
36881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
36891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
36911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
36921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
36931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
36941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
36951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
36961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
36971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
36981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
36991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
37001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
37011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
37021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
37031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
37041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
37051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
370634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
3707af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
3708af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
3709af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3710af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
3711af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3712af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
3713af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
3714af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
3715af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
37165d621da539abea83309d77317ede40126f47d5f0John Wang/**
37175d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
37185d621da539abea83309d77317ede40126f47d5f0John Wang *
37195d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
37205d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
37215d621da539abea83309d77317ede40126f47d5f0John Wang *
37225d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
37235d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
37245d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
37255d621da539abea83309d77317ede40126f47d5f0John Wang */
37265d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
37275d621da539abea83309d77317ede40126f47d5f0John Wang
37285909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
37295909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
37305909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
37315909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
37325909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
37335909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
37345909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
37355909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
37365909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
37375909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
37385909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
3739c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3740c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3741c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
3742c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3743c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
3744c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3745c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
3746c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3747c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
374829487ef2685e5ee38f0348ab031cb96a608296baWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED 1031
3749c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3750c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3751c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
3752c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3753c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
3754c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3755c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
3756c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
3757c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3758c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
3759c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3760c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3761c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
3762c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3763c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
3764c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3765c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
3766c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
3767c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3768c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3769c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3770c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3771c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
3772c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
37735b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville/**
37745b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * RIL_UNSOL_RIL_CONNECTED
37755b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
37765b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * Called the ril connects and returns the version
37775b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
37785b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * "data" is int *
37795b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * ((int *)data)[0] is RIL_VERSION
37805b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville */
37815b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville#define RIL_UNSOL_RIL_CONNECTED 1034
37825b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville
37832bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
37842bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_UNSOL_VOICE_RADIO_TECH_CHANGED
37852bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
37862bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Indicates that voice technology has changed. Contains new radio technology
37872bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * as a data in the message.
37882bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
37892bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is int *
37902bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *)data)[0] is of type const RIL_RadioTechnology
37912bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
37922bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
37932bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_UNSOL_VOICE_RADIO_TECH_CHANGED 1035
37942bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
37952bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
379600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
379700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
380000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
380100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
380300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
380400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
380500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
380600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
380700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
38097f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
381000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
381100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
381200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
381300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
381400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
381500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
381600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
381700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
381800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
381900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
382000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
382100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
382200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
382300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
382500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
38277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
382800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
382900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
38307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
383100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
383200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
383300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
383400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
383500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
383600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
383700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
383800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
383900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
384100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
384200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
384300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
384400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
384500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
384700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
384900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
385000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
385100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
385200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
385300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
385400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
385500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
385600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
385700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
385800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
385900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
386000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
386100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
386200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
386300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
386400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
386500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
386600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
386700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
386800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
386900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
387000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
387100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
38727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
387300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
387400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
387500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
387600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
38777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
387800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
387900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
388000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
388100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
388200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
388300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
388400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
388500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
388600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
388800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
388900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
389000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
38917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
389200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
389300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
389400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
389500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
389600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
389700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38980d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
38997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
390000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
390100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
390200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
39037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
39047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
390500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
390600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
390700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
390800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
390900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
391000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
391100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
391200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
391300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
391400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
391500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
391600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
391700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
391800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
391900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
392000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
392100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
392200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
392300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
392400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
392500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
392600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
392700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
392800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
392900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
39303d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
393100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
393200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
393300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
393400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
393500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
393600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
39377f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
393800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
393900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
394000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
394100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
394200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
394300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
394400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
394500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
394600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
39477f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
394800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
394900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
395000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
395100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
39527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
395300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
395400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
395500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
395600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
395700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
395800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
395900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
396000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
396100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
396200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
39630d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
39640d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
396500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
396600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
396700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
396800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
396900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
397000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
397100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
397200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
397300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
3974