ril.h revision beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8
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
29c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_VERSION 6     /* Current version */
304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville#define RIL_VERSION_MIN 2 /* 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) */
74f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
76f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
77f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
78f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
79f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
81f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
82f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
83f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_READY = 9               /* Radio is on and the NV interface is available */
8400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
8500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
864380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef enum {
874380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UNKNOWN = 0,
884380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_GPRS = 1,
894380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EDGE = 2,
904380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UMTS = 3,
914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95A = 4,
924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95B = 5,
934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_1xRTT =  6,
944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_0 = 7,
954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_A = 8,
964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSDPA = 9,
974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSUPA = 10,
984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSPA = 11,
994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_B = 12,
1004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EHRPD = 13,
101c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_LTE = 14,
102c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_HSPAP = 15 // HSPA+
1034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_RadioTechnology;
1044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
105c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// Do we want to split Data from Voice and the use
106c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// RIL_RadioTechnology for get/setPreferredVoice/Data ?
107c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
108c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA                = 0, /* GSM/WCDMA (WCDMA preferred) */
109c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_ONLY                 = 1, /* GSM only */
110c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_WCDMA                    = 2, /* WCDMA  */
111c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_AUTO           = 3, /* GSM/WCDMA (auto mode, according to PRL) */
112c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_EVDO_AUTO           = 4, /* CDMA and EvDo (auto mode, according to PRL) */
113c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_ONLY                = 5, /* CDMA only */
114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_EVDO_ONLY                = 6, /* EvDo only */
115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_CDMA_EVDO_AUTO = 7, /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
116c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CDMA_EVDO            = 8, /* LTE, CDMA and EvDo */
117c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_GSM_WCDMA            = 9, /* LTE, GSM/WCDMA */
118c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CMDA_EVDO_GSM_WCDMA  = 10, /* LTE, CDMA, EvDo, GSM/WCDMA */
119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_ONLY                 = 11  /* LTE only */
120c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_PreferredNetworkType;
121c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
122c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Source for cdma subscription */
123c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
124c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_RUIM_SIM = 0,
125c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_NV = 1
126c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CdmaSubscriptionSource;
127c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
12874fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
12974fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
13074fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
13174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
13274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
13374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
13474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
13574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
13674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
13774fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
13874fa38884320698c1623764850e3131b9769dff0Wink Saville
13974fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
14074fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
14174fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
14274fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
14374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
14474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
14574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
14674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
14774fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
14874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
14974fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
15074fa38884320698c1623764850e3131b9769dff0Wink Saville
15174fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
15274fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
15374fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
15474fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
15574fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
15674fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
15774fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
15874fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
15974fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
16074fa38884320698c1623764850e3131b9769dff0Wink Saville
16174fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
1621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
18374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
18400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
18500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_Data_Call_Response_v6 */
18700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1884380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
1891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
1904f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
1914f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
1924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          apn;        /* ignored */
193c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          address;    /* An address, e.g., "192.0.1.3" or "2001:db8::1". */
194c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v4;
1954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
1964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville/*
1974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * Returned by RIL_REQUEST_SETUP_DATA_CALL, RIL_REQUEST_DATA_CALL_LIST
1984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED, on error status != 0.
1994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville */
2004380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef struct {
2014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
202beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
203beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           back-off timer value RIL wants to override the one
204beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           pre-configured in FW.
205beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The unit is miliseconds.
206beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value < 0 means no value is suggested.
207beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value 0 means retry should be done ASAP. */
2084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2104380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2144380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
215c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
216c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
218c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
219c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
220c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2224380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
224c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
225c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
226c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
227c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
228c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
22900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
23000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2318e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
2328e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
2338e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
23400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
235920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
236920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
237920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
23800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
23900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
24000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
24100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
24200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
24300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
24400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
24500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
24600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
247f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
248f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
24900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
25000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
25100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
25200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
25300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
25400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
25500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
25600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
25700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
25800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
25900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
26000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
26100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
26274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
26300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
26400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
26600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
26800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
2701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
27100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
27200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
27400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
27600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
277c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
278c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
279c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
280c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
281c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
282c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
283c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
284c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
285c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
286c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
287c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
288c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
289c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
290c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
291c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
292c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
29300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
29500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
29600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
29900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
30100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
30300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
30600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
30700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
30800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
30900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
31000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
31100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
31200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
31300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
31400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
31500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3163d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
3173d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
3183d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
3193d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
3203d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
3213d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
3223d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
3233d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
32400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
32500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
32600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
327e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
328e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
329e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
33000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
3317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
332e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
33300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
334e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
335e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
33600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
33700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
33800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
33900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
34000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3411b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
34200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
34500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
34600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
34700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
348602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
349602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
3501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
3511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
3521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
3531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
3541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
3551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
3561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
3571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
3581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
3591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
36003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
36100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
36200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
36300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
364f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
36500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3664380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
3674380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3684380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
3694380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
3704380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
3714380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
3724380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
3734380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
374d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
375d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
376d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
377d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
378d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
379d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
380d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
381d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
382d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
383d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
3844380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
3854380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
3864380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
3874380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
388d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
3894380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
390d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
391c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
392c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
3934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
395c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_SIGNAL_LOST = -3,            /* no retry */
3964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
3974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
3984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
3994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
4004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
4014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
4024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
4034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
4054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
40600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
407602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
408602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
409602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
410602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
411602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
412602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
413602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
41400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
41500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
41600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
41700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
41800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
41900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
42000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
42100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
42200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
42300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
42400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
42500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
42600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
42700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
42800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
429f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
430f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
432f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
434f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
435f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
436f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
4407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
4417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
442f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
443f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
444f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
445f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
446f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
447f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
448f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
449f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
451f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
452f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
453f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
454f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
455f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
456f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
457f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
458f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
470f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
4727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
476f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
491c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
492c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
4977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
4987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
4997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
5017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
502f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
503f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
504c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
5057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
5067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
509c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
510c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
511c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
512c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
513c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
514c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
515c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
516c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
517c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
518c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
519c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
520f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
521f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
524c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
525c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
526c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
527f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
528f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
529c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
530f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
53100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH */
53200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
53300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
53400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
535c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* SIM initialized.  All files should be re-read. data[1] contains AID that caused REFRESH */
53600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
53700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
53800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
53900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
54000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
541c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
5421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
5441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
5451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
5463d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
547c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
548c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
549c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
550c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
551c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
552c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
553c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
554c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
555c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
556c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
557c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
558c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
5591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
560a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
561a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
562a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
563a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
564a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
565a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
566a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
567a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
568a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
569a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
570a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
571a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
572a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
573a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
574a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
575a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
576a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
577a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
578a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
579f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
580a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
581a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
582a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
583a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
584a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
585a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
586f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
58734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
58834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
58934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
59034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
59134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
59234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
593a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
59434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
59534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
59634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
59734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
5981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
5991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
6011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
6021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
6031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
6041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
6051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
6061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
6071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
6081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
6091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
6101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
6111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
6121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
6131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
6161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
6171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
6181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
6301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
6421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
6431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
644c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
645c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
646473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
647473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 44 to 140 dBm
648473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
649473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
650473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
651473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 20 to 3 dB.
652473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
653473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
654473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
655473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
656473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
657473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
658473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int cqi;             /* The current Channel Quality Indicator.
659473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 0 to 15.
660473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
661473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
662c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
663c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
664c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
665c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
666c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
667c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
668c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
669c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
6701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
6731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
6741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
675c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
676c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
6771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
6791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
6811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
6821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
6831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
6841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
6851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
6861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
6871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
6881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
6891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
6901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
6911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
6921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
6941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
6951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
6961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
6971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
6981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
6991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
7001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
7011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
704a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
7051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
7061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
7081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
7091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
7101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
7111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
714a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
7151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
7161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
7171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
7181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
7191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
7201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
7221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
7231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
7241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
7251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
7261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
7271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
7281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
7291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
7301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
7311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
7341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
7351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
7361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
7371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
7391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
7411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
7421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
7431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
7441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
7451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
7471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
7491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
7501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
7521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
7541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
7551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
7561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
7601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
7621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
7631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
7641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
7661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
7671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
7691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
7701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
7721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
7731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
7751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
7761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
7781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
7791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
7811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
7821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
7831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
7841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
7861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
7891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
7901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
7911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
79300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
79400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
7967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
79700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
79800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
799fd7293711394c422711ff07d15a357955ff2194fWink Saville * "response" is const RIL_CardStatus_v6 *
80000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
80100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
80200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
80300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
80400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
80500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
80600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
80700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
80800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
809309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
81000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
81200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
813c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
81400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
815593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
816593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
81700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
82100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
82200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
82300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
82400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
82500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
82700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
83000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
83100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
83300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
83500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
83600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
837c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
83800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
839593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
840593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
84100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
84500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
84600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
84700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
84800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
84900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
85000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
85100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
85200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
85300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
85400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
85500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
85700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
85800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
86000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
861c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
86200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
863593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
864593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
86500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
86900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
87000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
87100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
87200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
87300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
87400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
87500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
87600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
87700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
87800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
88000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
88200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
88300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
884c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
88500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
886593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
887593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
88800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
89200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
89300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
89400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
89500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
89600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
89700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
89800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
89900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
90100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
90200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
90400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
90600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
90700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
908c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
90900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
910593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
911593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
91200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
91300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
91600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
91700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
91800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
91900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
9207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
92100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
92200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
92300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
92400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
92500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
92600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
92700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
92800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
93000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
93200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
93300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
934c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
93500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
936593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
937593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
93800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
94200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
94300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
94400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
94500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
9467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
94700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
94800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
95000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
95100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
95200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
95300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
95500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
95700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
95800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
959593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
960593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
96100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
96500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
96600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
96700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
96800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
96900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
97000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
97100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
97200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
97300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
9747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
97700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
97900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
9817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
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 *      (request will be made again in a few hundred msec)
98800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
98900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
99200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
9937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
99400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
99500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
99700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
99900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
10007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
100100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
100200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
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 */
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
101100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only valid when radio state is "RADIO_STATE_SIM_READY"
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1017c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1018c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
101900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
102000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
102400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
102600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
102700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
103000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
103506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
103606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
10377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1038f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
103900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
104100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
104400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
104600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
104700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
104800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
105000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
105100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
105400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
105606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
105706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
105800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
105900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
106000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
106300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
106400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
106500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
106600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
106700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
107506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
107606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
107700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
107800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
108200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
109000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
109400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
110100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
111400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
111800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
111900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
112100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
113900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
114000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
114400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
11551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
115603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
115703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
115803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
116134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
116234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1173f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
11851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
11861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
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 */
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
11933d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1195c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
119800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1201f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
12021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
12031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1204f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
12051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
12061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1209f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
12107f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
12117f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12127f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
12137f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12147f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
12157f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12167f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
12177f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12187f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
12191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
12201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
12211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
12221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
12231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
12241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
12251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
12261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
12271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
12284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
12294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
12301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
12311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
123229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
12331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
12341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
123536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
123636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
123736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
123836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
12394380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
12401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
12411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
124236b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
124336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
124436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
124536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
12464380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
12471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
12481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
12491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
12501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
12511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
12521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
12531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
12541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
12551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
125603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
12571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
12581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
125903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
12601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
12611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
126203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
12631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
12641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
12651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1266602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1267602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1268602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1269602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1270602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1271602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1272602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1273602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1274602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1275602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1276602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1277602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
127829be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1279c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1280c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1281c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1282c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1283c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1284c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1285c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1286c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1287c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1288c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1289c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1290c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1291c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1292c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1293c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1294c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1295c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1296c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1297c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1298c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1299c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1300c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1301c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1302ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1303ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1304ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1305ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
13061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
13071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
13111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
13121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
13131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
131500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1319c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
132000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1322c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1324c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
13283a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
13314380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
13324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1333c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1334c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1335c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1336c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1337c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1338c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1339c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1340c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1341c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1342c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1343c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1344c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1345c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
13507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
135300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
135500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1359c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
13687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
13757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
138729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * If the radio is is turned off/on the radio modem subsystem
138829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is expected return to an initialized state. For instance,
138929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * any voice and data calls will be terminated and all associated
139029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * lists emptied.
139129487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
139700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
140400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
140600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
141200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
141400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
141600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1417602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
141800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
14197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
142000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
142700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
142900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
143100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
143400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
14357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
143600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
143700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
143900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
144000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
144400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
144600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
14487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
144900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
145000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
145300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1455602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
145900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
146400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
14657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
146700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
146800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
146900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
147200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
147300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
147400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
147500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
147800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
14807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
148100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
148200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
148400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
148500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
148600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
148700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
149000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
149100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Setup a packet data connection. If RIL_Data_Call_Response_v6.status
149729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * return success it is added to the list of data calls and a
149829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is sent. The call remains in the
149929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * list until RIL_REQUEST_DEACTIVATE_DATA_CALL is issued or the
150029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * radio is powered off/on. This list is returned by RIL_REQUEST_DATA_CALL_LIST
150129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED.
150200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
15044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
15054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
15064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
15074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
15084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
15094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
15104380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1511c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
15124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
15134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1515c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1516c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1517602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
15187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1519f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1520f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1521f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1522920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1523920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1524920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1525920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1526920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1527c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1528c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
15294f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1530c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1532c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
153300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
15353d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15374380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1538c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1539c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
15404380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
15414380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
15424380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
15434380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1545f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1547f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
154800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
155000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
155100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
155400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1558fd7293711394c422711ff07d15a357955ff2194fWink Saville * "data" is a const RIL_SIM_IO_v6 *
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
157300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1599602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
16097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
16187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
16237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
16657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
16857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
168700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
168800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
170000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
171000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
171400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
171600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
171700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
171800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
171900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
172400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
172600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
173200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
173400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
173600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
173700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
174000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
17427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1745b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
174600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1747b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1749b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1750b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1751b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1752b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
175900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
176500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1766f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1770f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1785f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1789f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1825f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Deactivate packet data connection and remove from the
182829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * data call list if SUCCESS is returned. Any other return
182929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * values should also try to remove the call from the list,
183029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * but that may not be possible. In any event a
183129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_RADIO_POWER off/on must clear the list. An
183229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is not expected to be
183329487ef2685e5ee38f0348ab031cb96a608296baWink Saville * issued because of an RIL_REQUEST_DEACTIVATE_DATA_CALL.
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
1836f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
1837d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
1838d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
1839d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
18407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1848f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1850f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
18587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
1863c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
1864fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
1865fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
18697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
18717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
1895c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
1896fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
1897fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1899593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1900593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
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_SET_FACILITY_LOCK 43
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
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] = old password
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
195100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
195900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
196200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
19667553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19697553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
19707553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
19717553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
19727553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
19737553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
19917553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19947553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
19957553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
19967553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
19977553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
19987553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
20137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
20367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
20407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
20447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
20587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
20617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
20767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
20797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
20927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
21007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
21017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2102f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2103f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
212900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
21617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
21637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
216700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
217000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
217300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2174c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2175c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
21767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
21777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2178f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2179f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
218000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
218600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
21887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
21894380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
219200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2199c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2200c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
22017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
220200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2203f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
220400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2206f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Returns the data call list. An entry is added when a
220929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_SETUP_DATA_CALL is issued and removed on a
221029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL. The list is emptied
221129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * when RIL_REQUEST_RADIO_POWER off/on is issued.
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2214c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
222029487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
222129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * See also: RIL_UNSOL_DATA_CALL_LIST_CHANGED
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2224f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2227f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2233f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2234f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2242f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
22587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
22627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
226800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((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_STRINGS 60
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2306432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2307432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2308432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
236500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
238100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2392f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2393f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2394f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2395f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2396f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2397f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2398f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2399f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2400f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2401f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2402f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2403f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2404f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
240700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
240900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
241000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
241200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
241300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
241500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
241600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
241700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
241900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
242100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
242300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
242400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
242700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
242800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
242900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
243000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
243100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2432f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2434f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2435f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2436f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2440f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2441f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2442f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2443f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2444f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
244700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
244900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
245000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
245300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
245400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
245600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
245700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
245900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
246000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
246100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
246300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
246500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
246600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
246800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
246900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
247000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
247100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
247200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
247300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
247800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
247900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
248100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
248200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
248400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
248600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
248700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
248800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
248900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
249000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
249600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
249700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
250000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
251000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
251100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
251300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
251400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
251700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
252200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
252400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
252600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
252700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
252800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
253400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
253900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
254000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
254100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
254900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
25557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
256600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2572c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2577f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2578f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2579f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2580f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
258100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
258200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
258300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
258400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
258500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
258600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
258800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
258900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
259100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2593c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
259600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
259700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
259800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
259900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
260100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
260200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
260300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
260400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
260500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
260600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
260800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
261000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
261100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
261300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
261400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
261500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
261600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
261700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
261800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
261900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
262000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
26213d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
262200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2623432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2624432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
262500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
262700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
262800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
263000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
263100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
263200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
26343d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
263500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
263600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
263700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
263800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
263900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
264100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
264200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
264300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2644f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2645c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
26467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2647f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2648f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2649f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2651c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
2652f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2653f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2654f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2655f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2656f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2657f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2658f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2659f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2660f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2661c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2662c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
2663f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2664c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
2665f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2666f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2667f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
26687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2669f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2670f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2671f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2672f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2673f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2674f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
26757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2676f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2678f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2679f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2680f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2681f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2682f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2683f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2684f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2685f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2686f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
26877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2688f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2689f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2690f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
26917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2692f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2693f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2694f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2695f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
26967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2697f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2699f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2700f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2701f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2702f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2703f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2704f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2705f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2706f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2707f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
27087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2709f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2710f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2711f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2712f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
27131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
27141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
27151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
27167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2717f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2719f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2720f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2721f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2722f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2723f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2724f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2725f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2726f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2727f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
27287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2729f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2730f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2731f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
27327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2733f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2734f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
27351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
27361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
27371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2738f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2739f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2741f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2742f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2743f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2744f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2745f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2746f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2747f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2748f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2749f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2750f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2751f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2752f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2753f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2754f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2755f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2756f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
27577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2758f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2760f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2761f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2762f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2763f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2764f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2765f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2766f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2768f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
27697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2770f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2771f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2772f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
27737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2774f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2775f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2776f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
27777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2778f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2780f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2781f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2782f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2783f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2784f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2785f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2786f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2787f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2788f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2789f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2790f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2791f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2792f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
2793f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
27947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2795f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2797f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2798f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2800f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2801f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2802f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2803f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
2804f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2805f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2806f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
2807f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2808f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
2809f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2810602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
2811602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
2812602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
2813602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
2814602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
2815602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
28167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2817f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2819f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2820f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2821f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2822f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2823f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2824f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2825f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
2826f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2827f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
282803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
2829f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
283003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
283103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
283203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
2833f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2834f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
283503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
283603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
283703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
283803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
283903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
28407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2841f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2843f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2844f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2845f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2846f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2847f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2848f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
284903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
2850f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2851f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2852f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
2853f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2856f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
28577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2858f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
28597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2860bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
2861bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
2862bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
2863bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
2864bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
2865bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
2866f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2867f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2868f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
28691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
2870f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2871f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2872f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2873f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
2874f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2878f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
2879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
2880f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2881f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
28827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2883f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2885f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2886f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2887f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2888f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2889f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2890f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2891f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
2892f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2893f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2894a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
2895a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2896a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
2897f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2898f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2899a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2900a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
2901a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
2902a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2903f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2904f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2905f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2906f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2907f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2908f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2909a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
2910f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2911f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2912a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
2913f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2914f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
2915f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2916a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
2917a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
2918a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2919f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2920a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2921f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2922f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2923f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2924f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2925f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2926f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2927a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
2928f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2929f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2930a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
2931f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2932a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
2933f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2934f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2935f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2936f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
2937f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2938a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2939f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2940a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2941f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2942f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2943f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2944f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2945f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2946f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2947a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
2948f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2949f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2950a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
2951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2952f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
2953f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2954f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2955a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2956a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
2957a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
2958a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2959f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2960f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2961f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2962f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2963f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2964f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2965a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
2966f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2967f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2968a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
2969f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2970f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
2971f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2972a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
2973a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
2974a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2976a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2977f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2979f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2980f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2981f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2982f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2983a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
2984f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2985f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2986a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
2987f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2988f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
2989f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2990f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2991f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
2993f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2994a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2996a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2997f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2999f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3001f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3002f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3003a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
3004f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3005f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3006f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
3007f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3008f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
3009f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
3011f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
3012f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
3013f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3014f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
3015f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3016f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3017f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3018f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
301929be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
302029be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
302129be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
302229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
30231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
3024d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
3025f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3026f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3027f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3028f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
3029f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3030f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3031eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
3032f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3033f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3034f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
3035f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3036f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
3037f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3038f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3039f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3040f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3041f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3042f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3043f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3044f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3045f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3046f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3047f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3048f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3049eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3050f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3051f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3052f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3053f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3054f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3056f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3057f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3058f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3059f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3060f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3061f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3062f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3063f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3064f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3065f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3066f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3067eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3068f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3069f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3071eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3072eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3073eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3074f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3075eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3076f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3077eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3078eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3079f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3080eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3081eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3082f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3083eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3084f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3085eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3086eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3087eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3088eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3089eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3090f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3091f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3095eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3096f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
30971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
30981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
30991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
31001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
31011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
31021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
31031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
31041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
31057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
31061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
31077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
31081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
31091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
31101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
31111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
31121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
31131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
31141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3115f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3116000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3117000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3118000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3119000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3120000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3121000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3122000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3123000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3124000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3125000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3126000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3127000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3128000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3129000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3130000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3131000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3132000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3133000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3134000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3135000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3136000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3137000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3138000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3139000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3140000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3141000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3142000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3143000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3144000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3145000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3146000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3147000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3148000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3149000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3150b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3151b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3152b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3153b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3154b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3155b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3156b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3157b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3158b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3159b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3160b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3161b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3162b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3163b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3164b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3165b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3166b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3167b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3168b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
31692641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
31702641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
31712641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31722641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
31732641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
31742641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31752641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
31762641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
31772641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31782641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
31792641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
31802641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
31812641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
31822641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31832641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
31842641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
31852641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3186c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3187c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3188c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3189c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3190c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3191c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3192c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3193c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3194c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3195c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3196c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3197c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3198c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3199c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3200c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3201c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3202c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3203c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3204c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3205c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3206c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
320700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
320800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3209f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
321000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
321100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
321200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
321300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
321400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
321600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
321800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
322000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
322100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
322200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
322300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
322400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
322500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
322600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
322700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
322800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
322900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
323000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
323100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
323200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
323300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
323500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
323600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
323700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
323800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
323900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
324000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
324100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
324200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
324300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3244c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
324500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3246c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
324700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
324800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
324900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3250c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
325100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
325200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
325300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
325400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
325500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
325600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
325700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3258c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
325900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
326000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
326100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
326200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
326300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
32647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
326500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
326600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
326700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
326800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
326900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
327000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
327100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
327200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
327400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
327500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
327600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
327700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
327800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
327900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
328000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
328100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
328200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
328300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
32847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
328500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
328600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
328700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
328800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
328900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
329000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
329100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
329200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
329400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
329500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
329600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
329700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
329800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
329900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
330000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
330100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
330200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
330300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
33047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
330500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
330600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
330700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
330800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
330900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
331000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
331100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
331200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
331300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
331400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
331500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
331600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
331700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
33187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
331900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
332000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
332100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
332200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
332300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
332400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
332500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
332600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
332700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
332800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
332900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
333000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
333100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
333200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
333300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
333400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
333500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
333600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
333700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
333800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
333900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
334000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
33417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
334200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
334300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
334400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
334500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
334600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
334800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
335000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
335100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
335200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
335300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
335500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
335600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
335700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
335800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
336000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
336100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
336200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
336300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
336400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3365f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
336600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3367c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
336829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST. It is the complete list
336929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * of current data contexts including new contexts that have been
337029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * activated. A data call is only removed from this list when the
337129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * framework sends a RIL_REQUEST_DEACTIVATE_DATA_CALL or the radio
337229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is powered off/on.
337300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3374f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
337500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
337600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3377f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
337800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
337900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
338000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
338100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
338200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
338300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
338400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
338500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
338600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
338700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
338800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
338900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
339000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
339100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
339200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
339400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
339600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
339700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
339800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
339900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
340000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
340100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
340200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
340300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
340400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
340500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
340600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
340700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
340800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
340900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
341000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
341100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
341200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
341400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
341500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
341600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
341800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
341900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
342000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
342200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
342300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
342500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
342600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
342800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
343000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
343100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
343200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
343300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
343400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
343500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
343600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
343700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
343800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
343900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
344000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
344100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
344200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
344300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
344400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
344500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
344600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
344700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
344800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
344900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
345000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
345100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
345200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
345300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
345400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
345500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
3456c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * SIM_FILE_UPDATE, AID(application ID) of the card application
3457c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * triggering the REFRESH if the result is SIM_INIT, or NULL for any other result.
345800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
345900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note: If the radio state changes as a result of the SIM refresh (eg,
346000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
346100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
346200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
346300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
346400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
346500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
346600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
346700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
346800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
34696453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
34706453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
34716453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
34726453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
34736453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
34746453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
34756453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
34766453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
34776453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
347800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34793d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
34803d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
348100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
348200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
348300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
348434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
348534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
348634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
348734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
34883d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
348934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
349134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
349234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
349334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
349434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
349534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
349634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
349734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
349834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
34993d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
350034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
35013d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
350234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
350334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
35043d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
350534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
350634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
35073d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
350834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
350934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
351034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
351134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
351234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
351334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
351434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
35157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
35160eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
35170eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
35180eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
35190eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
35200eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
35210eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
35220eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
3523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
352434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
352534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3526f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
352734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
352834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
352934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
353034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
353134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
353234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
353334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3534f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
353534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3536f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3537f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
353834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
353934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
354034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
354134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
354234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
354334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
354434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
354534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
354634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
354734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
354834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
354934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
35501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
35521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
35541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
35551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
35571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
35601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
35611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
35631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
35651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
35677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
35681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
357034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
35711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
35731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
35751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
35761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
35781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
35791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
35801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
35831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
35841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
35861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
35881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
35901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
359334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
3594af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
3595af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
3596af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3597af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
3598af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3599af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
3600af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
3601af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
3602af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
36035d621da539abea83309d77317ede40126f47d5f0John Wang/**
36045d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
36055d621da539abea83309d77317ede40126f47d5f0John Wang *
36065d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
36075d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
36085d621da539abea83309d77317ede40126f47d5f0John Wang *
36095d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
36105d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
36115d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
36125d621da539abea83309d77317ede40126f47d5f0John Wang */
36135d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
36145d621da539abea83309d77317ede40126f47d5f0John Wang
36155909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
36165909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
36175909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
36185909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
36195909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
36205909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
36215909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
36225909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
36235909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
36245909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
36255909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
3626c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3627c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3628c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
3629c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3630c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
3631c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3632c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
3633c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3634c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
363529487ef2685e5ee38f0348ab031cb96a608296baWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED 1031
3636c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3637c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3638c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
3639c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3640c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
3641c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3642c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
3643c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
3644c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3645c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
3646c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3647c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3648c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
3649c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3650c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
3651c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3652c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
3653c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
3654c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3655c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3656c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3657c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3658c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
3659c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
36605b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville/**
36615b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * RIL_UNSOL_RIL_CONNECTED
36625b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
36635b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * Called the ril connects and returns the version
36645b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
36655b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * "data" is int *
36665b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * ((int *)data)[0] is RIL_VERSION
36675b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville */
36685b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville#define RIL_UNSOL_RIL_CONNECTED 1034
36695b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville
367000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
367100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
367400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
367500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
367600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
367700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
367800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
367900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
368000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
368100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
368200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
36837f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
368400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
368500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
368600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
368700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
368800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
368900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
369000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
369100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
369200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
369300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
369400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
369500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
369600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
369700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
369800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
369900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
37017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
370200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
370300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
37047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
370500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
370600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
370700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
370800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
370900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
371000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
371100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
371200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
371300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
371500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
371600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
371700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
371800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
371900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
372100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
372300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
372500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
372600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
372700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
372800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
373000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
373100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
373200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
373300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
373400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
373500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
373600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
373700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
373800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
373900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
374000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
374100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
374200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
374300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
374400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
374500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
37467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
374700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
374800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
374900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
375000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
37517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
375200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
375300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
375500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
375600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
375700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
375800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
375900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
376000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
376200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
376300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
37657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
376600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
376700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
376800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
376900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
377000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
377100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37720d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
37737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
377400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
377500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
377600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
37787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
377900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
378000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
378100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
378300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
378400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
378500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
378700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
378800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
378900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
379000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
379200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
379300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
379500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
379600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
379700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
380000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
380200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
38043d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
380500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
380600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
380700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
380800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
380900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
381000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
38117f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
381200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
381300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
381400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
381500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
381600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
381700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
381800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
381900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
382000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38217f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
382200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
382300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
38267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
382700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
382800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
382900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
383000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
383100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
383200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
383300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
383400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
383500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
383600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38370d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
38380d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
383900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
384200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
384400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
384500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
384600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
3848