ril.h revision c0114b325877907fcdf7a5baa24e54a752e7e58b
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 */
2024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
209c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
210c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
212c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
213c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
214c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
218c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
219c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
220c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
221c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
222c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
22300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
22400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2258e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
2268e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
2278e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
22800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
229920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
230920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
231920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
23200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
23300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
23400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
23500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
23600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
23700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
23800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
23900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
24000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
241f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
242f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
24300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
24400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
24500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
24600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
24700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
24800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
24900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
25000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
25100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
25200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
25300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
25400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
25500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
25674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
25700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
25800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
25900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
26000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
26100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
26200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
26300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
2641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
26600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
26800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
27000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
271c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
272c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
273c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
274c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
275c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
276c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
277c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
278c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
279c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
280c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
281c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
282c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
283c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
284c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
285c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
286c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
28800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
28900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
29000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
29100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
29200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
29300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
29500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
29900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
30100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
30300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
30600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
30700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
30800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
30900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3103d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
3113d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
3123d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
3133d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
3143d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
3153d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
3163d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
3173d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
31800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
31900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
32000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
321e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
322e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
323e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
32400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
3257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
326e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
32700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
328e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
329e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
33000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
33100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
33200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
33300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
33400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3351b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
33600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
33700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
33800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
33900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
34000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
34100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
342602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
343602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
3441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
3451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
3461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
3471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
3481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
3491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
3501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
3511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
3521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
3531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
35403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
35500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
35600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
35700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
35900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3604380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
3614380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3624380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
3634380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
3644380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
3654380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
3664380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
3674380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
368d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
369d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
370d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
371d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
372d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
373d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
374d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
375d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
376d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
377d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
3784380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
3794380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
3804380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
3814380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
382d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
3834380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
384d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
385c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
386c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
3874380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3884380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
389c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_SIGNAL_LOST = -3,            /* no retry */
3904380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
3914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
3924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
3934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
3944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
3954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
3964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
3974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
3984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
3994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
40000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
401602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
402602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
403602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
404602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
405602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
406602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
407602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
40800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
40900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
41000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
41100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
41200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
41300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
41400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
41500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
41600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
41700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
41800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
41900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
42000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
42100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
42200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
423f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
424f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
425f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
426f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
427f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
428f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
429f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
430f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
432f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
4347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
4357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
436f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
440f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
441f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
442f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
443f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
444f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
445f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
446f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
447f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
448f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
449f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
451f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
452f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
453f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
454f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
455f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
456f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
457f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
458f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
4667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
470f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
472f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
476f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
485c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
486c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
4917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
4927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
4937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
4957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
498c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
4997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
5007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
501f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
502f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
503c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
504c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
505c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
506c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
507c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
508c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
509c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
510c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
511c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
512c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
513c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
517f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
518c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
519c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
520c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
521f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
522f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
523c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
52500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH */
52600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
52700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
52800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
529c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* SIM initialized.  All files should be re-read. data[1] contains AID that caused REFRESH */
53000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
53100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
53200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
53300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
53400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
535c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
5361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
5381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
5391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
5403d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
541c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
542c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
543c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
544c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
545c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
546c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
547c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
548c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
549c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
550c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
551c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
552c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
5531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
554a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
555a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
556a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
557a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
558a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
559a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
560a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
561a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
562a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
563a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
564a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
565a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
566a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
567a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
568a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
569a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
570a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
571a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
572a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
573f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
574a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
575a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
576a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
577a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
578a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
579a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
580f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
58134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
58234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
58334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
58434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
58534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
58634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
587a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
58834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
58934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
59034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
59134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
5921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
5931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
5941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
5951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
5961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
5971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
5981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
5991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
6001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
6011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
6021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
6031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
6041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
6051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
6061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
6071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
6101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
6111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
6121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
6241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
6361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
6371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
638c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
639c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
640c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm
641c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                          * multipled by -1. Range: 44 to 140 dBm, TODO: doc reference */
642c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB
643c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                          * multiplied by -1. Range: 20 to 3 dB. TODO: doc reference */
644c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int rssnr;           /* TODO: Need documentation and doc reference */
645c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int cqi;             /* TODO: Need documentation and doc reference */
646c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
647c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
648c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
649c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
650c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
651c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
652c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
653c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
6541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
6571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
6581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
659c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
660c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
6611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
6631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
6651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
6661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
6671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
6681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
6691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
6701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
6711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
6721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
6731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
6741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
6751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
6761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
6781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
6791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
6801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
6811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
6821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
6831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
6841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
6851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
688a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
6891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
6901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
6921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
6931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
6941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
6951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
698a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
6991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
7001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
7011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
7021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
7031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
7041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
7061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
7071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
7081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
7091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
7101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
7111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
7121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
7131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
7141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
7151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
7181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
7191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
7201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
7211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
7231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
7251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
7261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
7271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
7281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
7291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
7311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
7331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
7341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
7361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
7381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
7391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
7401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
7441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
7461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
7471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
7481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
7501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
7511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
7531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
7541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
7561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
7571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
7591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
7601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
7621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
7631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
7651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
7661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
7671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
7681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
7701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
7731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
7741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
7751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
77700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
77800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
77900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
7807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
78100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
78200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
783c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is const RIL_CardStatus_v5 *
78400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
78500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
78600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
78700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
78800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
78900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
79100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
79200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
793309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
79400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
79600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
797c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
79800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
799593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
800593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
80100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
80200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
80500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
80600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
80700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
80800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
80900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
81000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
81100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
81200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
81300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
81400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
81500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
81700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
81900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
82000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
821c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
82200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
823593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
824593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
82500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
82600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
82900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
83000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
83100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
83200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
83300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
83400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
83500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
83600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
83700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
83800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
83900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
84100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
84200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
84400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
845c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
84600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
847593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
848593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
84900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
85300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
85400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
85500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
85600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
85700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
85800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
85900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
86100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
86200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
86400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
86600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
86700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
868c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
86900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
870593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
871593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
87200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
87600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
87700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
87800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
87900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
88000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
88100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
88200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
88300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
88400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
88500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
88600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
88800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
89000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
89100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
892c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
89300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
894593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
895593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
89600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
90000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
90100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
90200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
90300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
9047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
90500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
90600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
90800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
91100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
91200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
91400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
91500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
91600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
91700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
918c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
91900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
920593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
921593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
92200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
92600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
92700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
92800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
92900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
9307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
93100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
93200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
93300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
93400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
93500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
93600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
93700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
93900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
94000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
94100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
94200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
943593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
944593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
94500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
94600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
94900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
95000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
95100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
95200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
95300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
95400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
95500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
95600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
95700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
9587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
95900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
96100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
96300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
9657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
96600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
9687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
96900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
97000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
97100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
97200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
97300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
97400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
97600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
9777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
97900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
98100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
98300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
9847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
98500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
98600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
98900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
99200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
99300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
99400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
99500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
99600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only valid when radio state is "RADIO_STATE_SIM_READY"
100000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1001c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1002c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
100300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
100400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
100700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
101100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
101300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
101700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101806bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
101906bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
102006bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
10217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1022f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
103000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
103500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
103600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
103800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103906bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
104006bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
104106bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
104200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
104300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
104400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
104700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
104800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
105000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
105100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
105400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
105500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
105700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105806bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
105906bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
106006bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
106100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
106200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
106300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
106600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
106700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
107400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
107600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
107800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
108200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
108800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
109000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
109400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
109500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
111400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
111800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
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_UDUB 17
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
11391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
114003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
114103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
114203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
114534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
114634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
115500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1157f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
116100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
116200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
11691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
11701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
117300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
11773d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1179c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
118000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1185f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
11861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
11871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1188f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
11891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
11901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1191f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1192f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1193f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
11947f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
11957f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
11967f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
11977f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
11987f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
11997f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12007f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
12017f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
12027f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
12031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
12041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
12051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
12061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
12071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
12081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
12091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
12101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
12111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
12124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
12134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
12141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
12151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
121629be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
12171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
12181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
121936b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
122036b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
122136b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
122236b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
12234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
12241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
12251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
122636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
122736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
122836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
122936b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
12304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
12311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
12321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
12331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
12341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
12351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
12361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
12371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
12381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
12391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
124003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
12411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
12421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
124303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
12441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
12451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
124603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
12471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
12481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
12491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1250602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1251602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1252602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1253602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1254602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1255602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1256602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1257602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1258602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1259602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1260602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1261602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
126229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1263c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1264c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1265c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1266c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1267c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1268c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1269c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1270c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1271c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1272c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1273c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1274c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1275c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1276c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1277c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1278c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1279c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1280c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1281c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1282c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1283c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1284c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1285c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1286ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1287ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1288ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1289ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
12901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
12911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
12941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
12951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
12961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
12971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
129900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
130200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1303c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1306c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
130700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1308c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
13123a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
13154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
13164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1317c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1318c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1319c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1320c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1321c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1322c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1323c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1324c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1325c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1326c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1327c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1328c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1329c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
133200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
13347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
134100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1343c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
13527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
135300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
13597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
137100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
138800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
139100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1396602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
139700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
13987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
140400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
140600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
141200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
14147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
141600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
141800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
141900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
142000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
14277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
142900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
143100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1434602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
143500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
143600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
143800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
143900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
144000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
14447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
144600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
144700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
144800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
145000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
145300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
145500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
14597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
146400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
146500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
146700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
146900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
147000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
147200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
147400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Setup a packet data connection
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
14774380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
14784380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
14794380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
14804380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
14814380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
14824380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
14834380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
14844380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1485c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
14864380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
14874380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1489c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1490c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1491602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
14927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1496920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1497920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1498920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1499920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1500920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1501c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1502c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
15034f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1504c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1506c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
15093d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1512c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1513c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
15144380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
15154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
15164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
15174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1519f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1521f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
152200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
152900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
153000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1532c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is a const RIL_SIM_IO_v5 *
153300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
153500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
153800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
154000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
154200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
154500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
154700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
154800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
155000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
155100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
155800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1573602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
15837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
15927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
15977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
16397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
16597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
16827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
168500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
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_QUERY_CALL_WAITING 35
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure 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 0 for "disabled" and 1 for "enabled"
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
170800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
171000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
171400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
17167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
171700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1719b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1721b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1723b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1724b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1725b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1726b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
173100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
173400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
173600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
173700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1740f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1744f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
174500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
174600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
174900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
175200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1759f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1763f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
176500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1801f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deactivate packet data connection
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
1804f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
1805d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
1806d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
1807d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
18087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1816f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1818f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
18267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
1831c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
18357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
18377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
183800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
1861c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1863593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1864593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
18867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
19307553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19337553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
19347553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
19357553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
19367553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
19377553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
195100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
19557553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19587553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
19597553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
19607553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
19617553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
19627553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
19777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
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
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
20007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
20047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
20087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
20227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
20257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
20407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
20437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
20567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
20647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
20657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2066f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2067f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
21257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
21277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2138c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2139c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
21407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
21417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2142f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2143f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
21527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
21534380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2163c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2164c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
21657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
216600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2167f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2170f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of PDP contexts, returning for each
217300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * its CID, whether or not it is active, and its PDP type,
217400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * APN, and PDP adddress.
2175f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_PDP_CONTEXT_LIST
217600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2178c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
217900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2186f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2189f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
219200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2195f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2196f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
220200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
220300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2204f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
220500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
220600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
220800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
221000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
221100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
221400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
221700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
22207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
22247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
22537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2268432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2269432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2270432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
229000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2354f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2355f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2356f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2357f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2359f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2360f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2361f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2362f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2363f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2364f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2365f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2366f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
238100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
239200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2394f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2395f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2396f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2397f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2398f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2399f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2400f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2401f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2402f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2403f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2404f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2405f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2406f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
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 * See also: RIL_REQUEST_SET_BAND_MODE
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
241500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
241600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
241700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
241800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
241900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
242100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
242200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
242300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
242700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
242800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
243000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
243100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
243200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
243300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
243400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
243500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
243600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
243700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
243800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
244000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
244100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
244300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
244400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
244600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
244900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
245000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
245100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
245300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
245400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
245600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
245900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
246100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
246200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
246400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
246500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
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_SEND_ENVELOPE_COMMAND 69
247300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
247800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
247900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
248100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
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_SEND_TERMINAL_RESPONSE 70
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
249600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
249700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
249800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
251000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
251100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
251300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
251400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
251500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
25177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
252300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
252400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
252600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
252700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
252800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2534c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2539f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2540f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2541f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2542f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2555c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
256000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
256600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
257200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
257700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
257800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
257900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
258000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
258100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
258200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
25833d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
258400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2585432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2586432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
258700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
258900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
259000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
259200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
259300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
25963d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
259700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
259800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
259900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
260000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
260100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
260300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
260400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
260500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2607c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
26087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2609f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2610f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2611f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2612f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2613c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
2614f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2615f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2616f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2617f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2618f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2620f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2621f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2622f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2623c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2624c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
2625f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2626c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
2627f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2628f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2629f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
26307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2631f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2632f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2633f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2634f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2635f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2636f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
26377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2638f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2640f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2641f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2642f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2643f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2644f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2645f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2646f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2647f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2648f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
26497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2651f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2652f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
26537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2654f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2655f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2656f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2657f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
26587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2659f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2661f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2662f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2663f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2664f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2665f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2666f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2667f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2668f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2669f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
26707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2671f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2672f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2673f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2674f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
26751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
26761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
26771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
26787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2679f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2681f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2682f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2683f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2684f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2685f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2686f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2687f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2688f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2689f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
26907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2691f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2692f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2693f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
26947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2695f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2696f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
26971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
26981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
26991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2700f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2701f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2703f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2704f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2705f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2706f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2707f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2708f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2709f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2710f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2711f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2712f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2713f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2714f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2715f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2716f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2717f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2718f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
27197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2720f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2722f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2723f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2724f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2725f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2726f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2727f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2728f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2729f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2730f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
27317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2732f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2733f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2734f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
27357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2736f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2737f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2738f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
27397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2740f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2742f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2743f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2744f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2745f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2746f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2747f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2748f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2749f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2750f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2751f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2752f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2753f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2754f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
2755f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
27567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2757f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2759f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2760f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2761f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2762f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2763f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2764f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2765f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
2766f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2768f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
2769f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2770f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
2771f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2772602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
2773602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
2774602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
2775602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
2776602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
2777602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
27787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2779f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
27807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2781f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2782f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2783f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2784f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2785f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2786f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2787f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
2788f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2789f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
279003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
2791f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
279203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
279303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
279403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
2795f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2796f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
279703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
279803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
279903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
280003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
280103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
28027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2803f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2805f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2806f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2807f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2808f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2809f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2810f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
281103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
2812f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2813f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2814f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
2815f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2816f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
2817f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2818f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
28197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2820f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
28217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2822bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
2823bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
2824bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
2825bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
2826bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
2827bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
2828f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2829f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2830f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
28311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
2832f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2833f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2834f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2835f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
2836f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2837f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2838f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
2839f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2840f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
2841f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
2842f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2843f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
28447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2845f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2847f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2848f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2849f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2850f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2851f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2852f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2853f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2856a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
2857a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2858a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
2859f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2860f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2861a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2862a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
2863a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
2864a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2865f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2866f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2867f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2868f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2869f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2870f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2871a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
2872f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2873f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2874a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
2875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2878a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
2879a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
2880a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2881f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2882a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2883f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2884f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2885f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2886f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2887f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2888f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2889a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
2890f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2891f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2892a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
2893f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2894a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
2895f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2896f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2897f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2898f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
2899f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2900a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
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_SMS_BROADCAST_ACTIVATION 91
2910f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2911f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2912a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
2913f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2914f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
2915f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2916f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2917a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2918a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
2919a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
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_CDMA_GET_BROADCAST_SMS_CONFIG 92
2928f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2929f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2930a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
2931f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2932f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
2933f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2934a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
2935a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
2936a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2937f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2938a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2939f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2940f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2941f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2942f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2943f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2944f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2945a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
2946f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2947f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2948a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
2949f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2950f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
2951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2952f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2953f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2954f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
2955f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2956a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2957f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
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_SMS_BROADCAST_ACTIVATION 94
2966f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2967f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2968f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
2969f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2970f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
2971f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2972f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
2973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
2974f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
2975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2976f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
2977f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
2978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2979f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
2980f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
298129be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
298229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
298329be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
298429be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
29851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
2986d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
2987f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2988f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2989f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2990f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
2991f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2993eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
2994f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2996f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
2997f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
2999f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3001f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3002f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3003f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3004f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3005f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3006f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3007f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3008f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3009f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3011eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3012f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3013f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3014f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3015f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3016f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3017f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3018f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3019f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3020f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3021f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3022f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3023f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3024f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3025f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3026f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3027f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3028f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3029eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3030f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3031f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3032f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3033eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3034eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3035eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3036f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3037eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3038f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3039eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3040eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3041f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3042eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3043eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3044f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3045eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3046f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3047eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3048eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3049eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3050eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3051eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3052f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3053f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3054f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3056f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3057eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3058f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
30591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
30601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
30611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
30621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
30631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
30641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
30651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
30661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
30677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
30681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
30697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
30701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
30711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
30721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
30731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
30741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
30751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
30761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3077f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3078000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3079000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3080000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3081000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3082000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3083000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3084000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3085000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3086000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3087000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3088000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3089000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3090000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3091000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3092000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3093000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3094000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3095000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3096000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3097000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3098000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3099000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3100000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3101000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3102000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3103000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3104000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3105000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3106000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3107000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3108000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3109000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3110000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3111000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3112b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3113b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3114b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3115b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3116b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3117b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3118b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3119b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3120b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3121b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3122b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3123b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3124b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3125b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3126b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3127b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3128b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3129b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3130b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
31312641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
31322641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
31332641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31342641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
31352641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
31362641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31372641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
31382641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
31392641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31402641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
31412641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
31422641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
31432641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
31442641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
31452641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
31462641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
31472641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3148c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3149c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3150c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3151c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3152c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3153c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3154c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3155c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3156c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3157c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3158c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3159c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3160c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3161c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3162c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3163c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3164c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3165c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3166c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3167c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3168c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
316900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
317000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3171f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
317200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
317300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
317400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
317500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
317600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
317700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
317800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
317900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
318000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
318100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
318200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
318300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
318400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
318500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
318600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
318700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
318800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
318900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
319000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
319100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
319200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
319300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
319400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
319500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
31967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
319700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
319800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
319900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
320000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
320100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
320200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
320300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
320400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
320500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3206c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
320700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3208c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
320900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
321100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3212c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
321300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
321400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
321600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
321800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
321900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3220c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
322100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
322200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
322300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
322400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
322500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
32267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
322700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
322800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
322900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
323000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
323100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
323200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
323300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
323400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
323600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
323700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
323800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
323900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
324000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
324100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
324200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
324300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
324400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
324500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
32467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
324700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
324800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
324900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
325000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
325100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
325200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
325300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
325400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
325600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
325700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
325800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
325900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
326000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
326100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
326200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
326300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
326400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
326500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
32667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
326700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
326800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
326900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
327000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
327100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
327200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
327300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
327400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
327500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
327600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
327700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
327800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
327900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
32807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
328100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
328200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
328300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
328400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
328500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
328600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
328700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
328800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
328900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
329000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
329100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
329200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
329300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
329400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
329500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
329600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
329700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
329800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
329900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
330000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
330100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
330200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
33037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
330400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
330500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
330600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
330700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
330800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
330900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
331000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
331100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
331200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
331300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
331400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
331500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
331600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
331700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
331800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
331900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
332000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
332200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
332300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
332400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
332500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
332600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3327f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
332800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
332900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate a PDP context state has changed, or a new context
333000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been activated or deactivated
3331f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_UNSOL_PDP_CONTEXT_LIST_CHANGED
333200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3333c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
3334f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST
333500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3336f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
333700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
333800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3339f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
334000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
334100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
334200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
334300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
334500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
334700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
334900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
335100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
335300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
335400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
335500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
335600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
335700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
335800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
335900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
336000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
336100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
336200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
336300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
336400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
336500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
336600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
336700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
336800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
336900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
337000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
337100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
337200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
337300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
337400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
337500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
337600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
337700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
337800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
337900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
338000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
338100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
338200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
338300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
338400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
338500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
338600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
338700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
338800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
338900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
339000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
339200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
339300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
339400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
339500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
339600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
339700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
339800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
340000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
340100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
340200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
340300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
340400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
340500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
340600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
340700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
340800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
340900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
341000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
341100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
341300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
341400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
341600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
341700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
3418c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * SIM_FILE_UPDATE, AID(application ID) of the card application
3419c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * triggering the REFRESH if the result is SIM_INIT, or NULL for any other result.
342000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note: If the radio state changes as a result of the SIM refresh (eg,
342200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
342300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
342400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
342500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
342600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
342800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
342900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
343000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
34316453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
34326453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
34336453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
34346453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
34356453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
34366453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
34376453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
34386453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
34396453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
344000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34413d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
34423d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
344300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
344400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
344500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
344634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
344734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
344834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
344934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
34503d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
345134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3452f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
345334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
345434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
345534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
345634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
345734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
345834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
345934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
346034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
34613d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
346234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
34633d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
346434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
346534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
34663d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
346734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
346834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
34693d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
347034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
347134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
347234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
347334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
347434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
347534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
347634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
34777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
34780eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
34790eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
34800eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
34810eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
34820eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
34830eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
34840eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
3485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
348634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
348734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
348934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
349034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
349134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
349234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
349334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
349434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
349534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
349734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3498f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3499f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
350034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
350134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
350234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
350334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
350434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
350534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
350634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
350734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
350834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
350934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
351034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
351134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
35121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
35141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
35161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
35171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
35191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
35221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
35231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
35251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
35271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
35297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
35301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
353234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
35331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
35351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
35371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
35381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
35401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
35411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
35421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
35451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
35461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
35481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
35501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
35521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
355534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
3556af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
3557af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
3558af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3559af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
3560af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3561af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
3562af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
3563af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
3564af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
35655d621da539abea83309d77317ede40126f47d5f0John Wang/**
35665d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
35675d621da539abea83309d77317ede40126f47d5f0John Wang *
35685d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
35695d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
35705d621da539abea83309d77317ede40126f47d5f0John Wang *
35715d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
35725d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
35735d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
35745d621da539abea83309d77317ede40126f47d5f0John Wang */
35755d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
35765d621da539abea83309d77317ede40126f47d5f0John Wang
35775909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
35785909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
35795909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
35805909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
35815909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
35825909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
35835909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
35845909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
35855909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
35865909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
35875909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
3588c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3589c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3590c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
3591c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3592c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
3593c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3594c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
3595c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3596c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3597c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_CHANGED 1031
3598c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3599c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3600c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
3601c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3602c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
3603c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3604c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
3605c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
3606c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3607c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
3608c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3609c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3610c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
3611c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3612c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
3613c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3614c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
3615c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
3616c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3617c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3618c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3619c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3620c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
3621c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
362200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
362300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
362400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
362500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
362600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
362700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
362800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
362900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
363000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
363100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
363200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
363300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
363400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
36357f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
363600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
363700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
363800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
363900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
364000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
364100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
364200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
364300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
364400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
364500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
364600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
364700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
364800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
364900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
365000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
365100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
365200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
36537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
365400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
365500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
36567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
365700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
365800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
365900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
366000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
366100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
366200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
366300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
366400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
366500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
36667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
366700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
366800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
366900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
367000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
367100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
367300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
367500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
367700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
367800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
367900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
368000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
368100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
368200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
368300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
368400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
368500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
368600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
368700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
368800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
368900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
369000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
369100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
369200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
369300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
369400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
369500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
369600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
369700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
36987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
369900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
370000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
370100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
370200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
37037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
370400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
370500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
370700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
370800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
370900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
371000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
371100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
371200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
371400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
371500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
371600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
37177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
371800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
371900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
372000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
372100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
372200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
372300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37240d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
37257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
372600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
372700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
372800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
37307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
373100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
373200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
373300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
373400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
373500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
373600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
373700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
373800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
373900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
374000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
374100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
374200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
374300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
374400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
374500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
374600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
374700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
374800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
374900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
375200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
375300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
375400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
375500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
37563d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
375700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
375800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
375900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
376000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
376100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
376200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
37637f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
376400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
376500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
376700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
376800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
376900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
377000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
377100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
377200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37737f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
377400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
377500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
377600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
377700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
37787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
377900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
378000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
378100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
378200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
378300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
378500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
378600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
378700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
378800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37890d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
37900d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
379100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
379400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
379600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
379700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
379800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
3800