ril.h revision 2458d8d1e56faae7b00511ceeab19730572c22d9
100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/*
200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project
300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * you may not use this file except in compliance with the License.
600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * You may obtain a copy of the License at
700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
1100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
1200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See the License for the specific language governing permissions and
1400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * limitations under the License.
1500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#ifndef ANDROID_RIL_H
1800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define ANDROID_RIL_H 1
1900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <stdlib.h>
218a9e02161271505de274db0c3a88087056dd5dfcWink Saville#include <stdint.h>
22a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#include <telephony/ril_cdma_sms.h>
23f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#ifndef FEATURE_UNIT_TEST
2400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
25f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#endif /* !FEATURE_UNIT_TEST */
2600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
2800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
2900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
3000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
312458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_VERSION 10     /* Current version */
3245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka#define RIL_VERSION_MIN 6 /* Minimum RIL_VERSION supported */
3300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
35a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
36a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville
3700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
3800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
4100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
4200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
4300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
4400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
4500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
4600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
4700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
4800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
4900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
5000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
5100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
523d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SMS_SEND_FAIL_RETRY = 10,             /* fail to send sms and need retry */
533d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SIM_ABSENT = 11,                      /* fail to set the location where CDMA subscription
543d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                                   shall be retrieved because of SIM or RUIM
55f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   card absent */
563d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SUBSCRIPTION_NOT_AVAILABLE = 12,      /* fail to find CDMA subscription from specified
57f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   location */
58602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_MODE_NOT_SUPPORTED = 13,              /* HW does not support preferred network type */
597553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_FDN_CHECK_FAILURE = 14,               /* command failed because recipient is not on FDN list */
602458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_ILLEGAL_SIM_OR_ME = 15,               /* network selection failed due to
617553447d44bb3f494b00d573215d81398f61cfcdJohn Wang                                                   illegal SIM or ME */
622458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_MISSING_RESOURCE = 16,                /* no logical channel available */
632458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_NO_SUCH_ELEMENT = 17,                 /* application not found on SIM */
6400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
6500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
6600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
6700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
6800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
6900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
7000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
7100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
7200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
7300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
7400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
76f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
77f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
782bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    /* States 2-9 below are deprecated. Just leaving them here for backward compatibility. */
79f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
81f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
82f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
83f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
84f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
86f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
87f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
882bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_NV_READY = 9,              /* Radio is on and the NV interface is available */
892bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_ON = 10                    /* Radio is on */
9000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
9100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
924380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef enum {
934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UNKNOWN = 0,
944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_GPRS = 1,
954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EDGE = 2,
964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UMTS = 3,
974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95A = 4,
984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95B = 5,
994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_1xRTT =  6,
1004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_0 = 7,
1014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_A = 8,
1024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSDPA = 9,
1034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSUPA = 10,
1044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSPA = 11,
1054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_B = 12,
1064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EHRPD = 13,
107c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_LTE = 14,
1082bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_HSPAP = 15, // HSPA+
1092bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_GSM = 16 // Only supports voice
1104380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_RadioTechnology;
1114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
112c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// Do we want to split Data from Voice and the use
113c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// RIL_RadioTechnology for get/setPreferredVoice/Data ?
114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA                = 0, /* GSM/WCDMA (WCDMA preferred) */
116c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_ONLY                 = 1, /* GSM only */
117c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_WCDMA                    = 2, /* WCDMA  */
118c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_AUTO           = 3, /* GSM/WCDMA (auto mode, according to PRL) */
119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_EVDO_AUTO           = 4, /* CDMA and EvDo (auto mode, according to PRL) */
120c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_ONLY                = 5, /* CDMA only */
121c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_EVDO_ONLY                = 6, /* EvDo only */
122c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_CDMA_EVDO_AUTO = 7, /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
123c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CDMA_EVDO            = 8, /* LTE, CDMA and EvDo */
124c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_GSM_WCDMA            = 9, /* LTE, GSM/WCDMA */
125c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CMDA_EVDO_GSM_WCDMA  = 10, /* LTE, CDMA, EvDo, GSM/WCDMA */
1260e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_ONLY                 = 11, /* LTE only */
1270e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_WCDMA                = 12  /* LTE/WCDMA */
128c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_PreferredNetworkType;
129c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
130c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Source for cdma subscription */
131c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
132c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_RUIM_SIM = 0,
133c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_NV = 1
134c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CdmaSubscriptionSource;
135c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
13674fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
13774fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
13874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
13974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
14074fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
14174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
14274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
14374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
14474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
14574fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
14674fa38884320698c1623764850e3131b9769dff0Wink Saville
14774fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
14874fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
14974fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
15074fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
15174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
15274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
15374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
15474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
15574fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
15674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
15774fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
15874fa38884320698c1623764850e3131b9769dff0Wink Saville
15974fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
16074fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
16174fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
16274fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
16374fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
16474fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
16574fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
16674fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
16774fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
16874fa38884320698c1623764850e3131b9769dff0Wink Saville
16974fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
1701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
19174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
19200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
19300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_Data_Call_Response_v6 */
19500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
1971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
1984f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
1994f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
2004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          apn;        /* ignored */
201c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          address;    /* An address, e.g., "192.0.1.3" or "2001:db8::1". */
202c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v4;
2034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
2044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville/*
2054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * Returned by RIL_REQUEST_SETUP_DATA_CALL, RIL_REQUEST_DATA_CALL_LIST
2064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED, on error status != 0.
2074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville */
2084380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef struct {
2094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
210beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
211beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           back-off timer value RIL wants to override the one
212beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           pre-configured in FW.
213beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The unit is miliseconds.
214beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value < 0 means no value is suggested.
21516157587c02b83a93f4e02f83a934442aa0e3e6aKazuhiro Ondo                                           The value 0 means retry should be done ASAP.
2168a9e02161271505de274db0c3a88087056dd5dfcWink Saville                                           The value of INT_MAX(0x7fffffff) means no retry. */
2174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2184380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2224380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
224c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
225c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
227c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
228c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
229c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2314380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
233c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
234c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
235c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
236c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
237c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
23800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef enum {
240a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP = 1, /* 3GPP Technologies - GSM, WCDMA */
241a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP2 = 2 /* 3GPP2 Technologies - CDMA */
242a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_RadioTechnologyFamily;
243a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
244a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef struct {
245a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RIL_RadioTechnologyFamily tech;
246a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    unsigned char             retry;       /* 0 == not retry, nonzero == retry */
247a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    int                       messageRef;  /* Valid field if retry is set to nonzero.
248a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              Contains messageRef from RIL_SMS_Response
249a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              corresponding to failed MO SMS.
250a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                            */
251a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
252a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    union {
253a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP2. See RIL_REQUEST_CDMA_SEND_SMS */
254a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        RIL_CDMA_SMS_Message* cdmaMessage;
255a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
256a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP. See RIL_REQUEST_SEND_SMS */
257a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        char**                gsmMessage;
258a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    } message;
259a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_IMS_SMS_Message;
260a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
26100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2628e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
2638e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
2648e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
266920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
267920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
268920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
27000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
27100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
27200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
27400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
27600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
27700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
278f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
279f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
28000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
28100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
28200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
28300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
28400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
28500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
28600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
28800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
28900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
29000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
29100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
29200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
29374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
29400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
29500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
29900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
3011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
30300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
30600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
30700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
308c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
309c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
310c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
311c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
312c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
313c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
314c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
315c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
316c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
317c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
318c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
319c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
320c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
321c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
322c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
323c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
32400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3252458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/* Used by RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL and
3262458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC. */
3272458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawaltypedef struct {
3282458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int sessionid;  /* "sessionid" from TS 27.007 +CGLA command. Should be
3292458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal                       ignored for +CSIM command. */
3302458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
3312458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    /* Following fields are used to derive the APDU ("command" and "length"
3322458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal       values in TS 27.007 +CSIM and +CGLA commands). */
3332458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int cla;
3342458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int instruction;
3352458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p1;
3362458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p2;
3372458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p3;         /* A negative P3 implies a 4 byte APDU. */
3382458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    char *data;     /* May be NULL. In hex string format. */
3392458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal} RIL_SIM_APDU;
3402458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
34100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
34200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
34500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
34600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
34800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
35000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
35100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
35200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
35300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
35400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
35500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
35600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
35700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
35800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
35900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
36000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
36100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
36200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3633d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
3643d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
3653d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
3663d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
3673d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
3683d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
3693d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
3703d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
37100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
37200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
374e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
375e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
376e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
37700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
3787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
379e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
38000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
381e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
382e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
38300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
38400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
38500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
38700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3881b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
38900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
39000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
39100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
39200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
39300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
39400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
395602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
396602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
3971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
3981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
3991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
4001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
4011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
4021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
4031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
4041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
4051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
4061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
40703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
40800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
40900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
41000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
411f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
41200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
4144380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
4164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
4174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
4184380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
4194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
4204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
421d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
422d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
423d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
424d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
425d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
426d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
427d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
428d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
429d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
430d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
4314380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
4323d14a71de78f2b0d02c7943e554c8726b1703935Wink Saville    PDP_FAIL_REGULAR_DEACTIVATION = 0x24,          /* restart radio */
4334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
4344380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
4354380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
436d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
4374380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
438d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
439c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
440c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
4414380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4424380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
4433492c6e5917828645feb3dba4618629929a43ab1Wink Saville    PDP_FAIL_SIGNAL_LOST = -3,
4444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
4454380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
4464380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
4474380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
4484380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
4494380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
4504380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
4514380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4524380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
4534380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
45400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
455602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
456602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
457602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
458602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
459602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
460602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
461602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
46200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
46300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
46400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
46500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
46600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
46700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
46800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
46900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
47000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
47100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
47200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
47300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
47400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
47500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
47600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
4887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
4897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
491f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
492f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
498f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
499f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
501f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
502f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
503f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
504f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
505f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
506f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
509f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
510f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
513f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
516f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
517f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
518f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
519f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
5207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
521f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
522f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
525f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
526f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
527f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
528f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
529f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
530f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
531f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
532f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
533f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
534f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
535f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
536f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
537f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
538f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
539c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
540c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
541f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
542f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
543f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
544f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
5467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
5477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
548f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
5497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
550f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
551f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
552c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
5537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
5547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
555f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
556f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
557c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
558c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
559c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
560c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
561c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
562c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
563c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
564c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
565c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
566c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
567c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
568f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
569f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
571f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
572c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
573c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
574c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
575f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
576f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
577c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
578f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
57945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka/** The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH
58045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *      or as part of RIL_SimRefreshResponse_v7
58145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka */
58200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
58300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
58400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
58545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    /* SIM initialized.  All files should be re-read. */
58600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
58700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
58800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
58900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
59000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
59145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenkatypedef struct {
59245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    RIL_SimRefreshResult result;
59345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    int                  ef_id; /* is the EFID of the updated file if the result is */
59445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* SIM_FILE_UPDATE or 0 for any other result. */
59545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    char *               aid;   /* is AID(application ID) of the card application */
59645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* See ETSI 102.221 8.1 and 101.220 4 */
59745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_FILE_UPDATE result it can be set to AID of */
59845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application in which updated EF resides or it can be */
59945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         NULL if EF is outside of an application. */
60045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_INIT result this field is set to AID of */
60145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application that caused REFRESH */
60245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_RESET result it is NULL. */
60345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka} RIL_SimRefreshResponse_v7;
60445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka
605c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
6061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
6081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
6091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
6103d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
611c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
612c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
613c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
614c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
615c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
616c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
617c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
618c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
619c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
620c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
621c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
622c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
6231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
624a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
625a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
626a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
627a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
628a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
629a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
630a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
631a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
632a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
633a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
634a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
635a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
636a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
637a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
638a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
639a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
640a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
641a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
642a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
643f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
644a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
645a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
646a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
647a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
648a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
649a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
65134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
65234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
65334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
65434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
65534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
65634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
657a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
65834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
65934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
66034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
66134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
6621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
6631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
6651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
6661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
6671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
6681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
6691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
6701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
6711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
6721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
6731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
6741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
6751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
6761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
6771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
6801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
6811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
6821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
683c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
684c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
685c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
686c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_SignalStrengthWcdma;
6871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
6981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
7021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
7031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
7041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
7061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
7071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
7081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
7101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
7111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
712c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
713c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
714473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
715473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 44 to 140 dBm
716473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
717473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
718473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
719473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 20 to 3 dB.
720473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
721473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
722473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
723473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
724473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
725473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
726473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int cqi;             /* The current Channel Quality Indicator.
727473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 0 to 15.
728473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
729473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
730c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
731c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
7328a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
7338a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
7348a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
7358a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 44 to 140 dBm
7368a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
7378a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
7388a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
7398a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 20 to 3 dB.
7408a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
7418a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
7428a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
7438a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
7448a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7458a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
7468a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int cqi;             /* The current Channel Quality Indicator.
7478a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 15.
7488a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7498a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
7508a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int timingAdvance;   /* timing advance in micro seconds for a one way trip from cell to device.
7518a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Approximate distance can be calculated using 300m/us * timingAdvance.
7528a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 0x7FFFFFFE
7538a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7548a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP 36.321 section 6.1.3.5
7558a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * also: http://www.cellular-planningoptimization.com/2010/02/timing-advance-with-calculation.html */
7568a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_LTE_SignalStrength_v8;
7578a9e02161271505de274db0c3a88087056dd5dfcWink Saville
758c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
759c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
760c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
761c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
762c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
763c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
7641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
7671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
7681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
769c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
770c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
7711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7728a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
7738a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_GW_SignalStrength       GW_SignalStrength;
7748a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CDMA_SignalStrength     CDMA_SignalStrength;
7758a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_EVDO_SignalStrength     EVDO_SignalStrength;
7768a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_LTE_SignalStrength_v8   LTE_SignalStrength;
7778a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_SignalStrength_v8;
7788a9e02161271505de274db0c3a88087056dd5dfcWink Saville
7798a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityGsm */
7808a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
781c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown */
782c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown */
783c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
784c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 16-bit GSM Cell Identity described in TS 27.007, 0..65535, INT_MAX if unknown  */
7858a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityGsm;
7868a9e02161271505de274db0c3a88087056dd5dfcWink Saville
787c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellIdentityWcdma */
788c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
789c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
790c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
791c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
792c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 28-bit UMTS Cell Identity described in TS 25.331, 0..268435455, INT_MAX if unknown  */
793c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int psc;    /* 9-bit UMTS Primary Scrambling Code described in TS 25.331, 0..511, INT_MAX if unknown */
794c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellIdentityWcdma;
795c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
7968a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityCdma */
7978a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
798c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int networkId;      /* Network Id 0..65535, INT_MAX if unknown */
799c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int systemId;       /* CDMA System Id 0..32767, INT_MAX if unknown  */
800c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int basestationId;  /* Base Station Id 0..65535, INT_MAX if unknown  */
8018a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int longitude;      /* Longitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
8028a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -2592000
8038a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 2592000, both values inclusive (corresponding to a range of -180
804c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +180 degrees). INT_MAX if unknown */
8058a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8068a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int latitude;       /* Latitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
8078a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -1296000
8088a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 1296000, both values inclusive (corresponding to a range of -90
809c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +90 degrees). INT_MAX if unknown */
8108a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityCdma;
8118a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8128a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityLte */
8138a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
814c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
815c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
816c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int ci;     /* 28-bit Cell Identity described in TS ???, INT_MAX if unknown */
817c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int pci;    /* physical cell id 0..503, INT_MAX if unknown  */
818c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int tac;    /* 16-bit tracking area code, INT_MAX if unknown  */
8198a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityLte;
8208a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8218a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoGsm */
8228a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8238a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityGsm   cellIdentityGsm;
8248a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_GW_SignalStrength signalStrengthGsm;
8258a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoGsm;
8268a9e02161271505de274db0c3a88087056dd5dfcWink Saville
827c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellInfoWcdma */
828c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
829c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CellIdentityWcdma cellIdentityWcdma;
830c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_SignalStrengthWcdma signalStrengthWcdma;
831c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellInfoWcdma;
832c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
8338a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoCdma */
8348a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8358a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityCdma      cellIdentityCdma;
8368a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CDMA_SignalStrength   signalStrengthCdma;
8378a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_EVDO_SignalStrength   signalStrengthEvdo;
8388a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoCdma;
8398a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8408a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoLte */
8418a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8428a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityLte        cellIdentityLte;
8438a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_LTE_SignalStrength_v8  signalStrengthLte;
8448a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoLte;
8458a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8468a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TYPE_XXX
8478a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
8488a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_GSM    = 1,
8498a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_CDMA   = 2,
8508a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_LTE    = 3,
851c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CELL_INFO_TYPE_WCDMA  = 4,
8528a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoType;
8538a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8548a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TIMESTAMP_TYPE_XXX
8558a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
8568a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_UNKNOWN = 0,
8578a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_ANTENNA = 1,
8588a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_MODEM = 2,
8598a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_OEM_RIL = 3,
8608a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_JAVA_RIL = 4,
8618a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_TimeStampType;
8628a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8638a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8648a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellInfoType  cellInfoType;   /* cell type for selecting from union CellInfo */
8658a9e02161271505de274db0c3a88087056dd5dfcWink Saville  int               registered;     /* !0 if this cell is registered 0 if not registered */
8668a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_TimeStampType timeStampType;  /* type of time stamp represented by timeStamp */
8678a9e02161271505de274db0c3a88087056dd5dfcWink Saville  uint64_t          timeStamp;      /* Time in nanos as returned by ril_nano_time */
8688a9e02161271505de274db0c3a88087056dd5dfcWink Saville  union {
8698a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoGsm     gsm;
8708a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoCdma    cdma;
8718a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoLte     lte;
872c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    RIL_CellInfoWcdma   wcdma;
8738a9e02161271505de274db0c3a88087056dd5dfcWink Saville  } CellInfo;
8748a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfo;
8758a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
8771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
8781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
8791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
8801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
8811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
8821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
8831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
8841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
8851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
8861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
8871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
8881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
8891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
8901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
8921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
8931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
8941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
8951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
8961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
8971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
8981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
8991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
902a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
9031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
9041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
9061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
9071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
9081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
9091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
912a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
9131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
9141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
9151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
9161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
9171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
9181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
9201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
9211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
9221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
9231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
9241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
9251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
9261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
9271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
9281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
9291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
9321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
9331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
9341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
9351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
9371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
9391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
9401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
9411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
9421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
9431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
9451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
9471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
9481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
9501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
9521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
9531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
9541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
9581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
9601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
9611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
9621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
9641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
9651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
9671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
9681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
9701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
9711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
9731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
9741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
9761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
9771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
9791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
9801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
9811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
9821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
9841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
9871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
9881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
9891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
99200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
9947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
99500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
99600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
997fd7293711394c422711ff07d15a357955ff2194fWink Saville * "response" is const RIL_CardStatus_v6 *
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
100000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
100100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
100200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
100300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
100600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1007309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
1011c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1013593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1014593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
101900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
102000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
102200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
102400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
102600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
102700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
103400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1035c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
103600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1037593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1038593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
103900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
104300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
104400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
104600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
104700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
104800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
105000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
105100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
105500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
105600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
105800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
1059c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
106000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1061593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1062593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
106300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
106700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
107500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
107600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
107800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1082c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1084593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1085593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
109000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
109300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
109400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
109500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1106c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1108593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1109593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
111400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
11187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
111900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
112200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
112500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
112600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1132c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1134593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1135593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
114000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
11447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
115500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1157593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1158593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
11727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
117300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
11797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
118000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
118500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
118600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
11917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
119300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
119500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
11987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
120300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
120400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
12132bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Only valid when radio state is "RADIO_STATE_ON"
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1215c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1216c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
121700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
121800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
122100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
122300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
122500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
122600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
122700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
122800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
122900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
123100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123206bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
123306bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
123406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
12357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1236f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
123700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
123900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
124200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
124300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
124400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
124500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
124700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
124900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
125200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125306bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
125406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
125506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
125600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
126100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
126600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
126800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
126900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127206bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
127306bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
127406bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
127500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
127600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
128000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
128500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
128600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
128700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
129400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
129600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
129900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
130200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
131200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
131500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
131900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
132000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
132200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
133200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
134100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
13531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
135403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
135503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
135603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
135934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
136034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1371f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
137500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
13831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
13841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
138800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
13913d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1393c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
139600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1399f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
14001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
14011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1402f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
14031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
14041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1405f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1406f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1407f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
14087f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
14097f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14107f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
14117f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14127f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
14137f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14147f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
14157f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14167f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
14171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
14181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
14191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
14201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
14211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
14221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
14231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
14241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
14251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
14264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
14274380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
14281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
14291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
143029be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
14311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
14321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
143336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
143436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
143536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
143636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
14374380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
14381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
14391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
144036b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
144136b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
144236b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
144336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
14444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
14451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
14461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
14471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
14481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
14491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
14501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
14511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
14521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
14531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
145403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
14551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
14561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
145703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
14581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
14591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
146003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
14611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
14621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
14631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1464602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1465602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1466602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1467602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1468602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1469602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1470602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1471602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1472602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1473602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1474602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1475602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
147629be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1477c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1478c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1479c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1480c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1481c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1482c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1483c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1484c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1485c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1486c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1487c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1488c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1489c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1490c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1491c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1492c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1493c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1494c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1495c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1496c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1497c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1498c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1499c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1500ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1501ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1502ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1503ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
15041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
15051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
15091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
15101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
15111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
151200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
151300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
151500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
151600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1517c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
151900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1520c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
152100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1522c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
152300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
15263a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
15294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
15304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1531c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1532c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1533c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1534c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1535c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1536c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1537c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1538c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1539c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1540c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1541c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1542c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1543c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1545ae67953e93218859806918f20175693015fd8eccWink Saville * The values at offsets 6..10 are optional LTE location information in decimal.
1546ae67953e93218859806918f20175693015fd8eccWink Saville * If a value is unknown that value may be NULL. If all values are NULL,
1547ae67953e93218859806918f20175693015fd8eccWink Saville * none need to be present.
1548ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[6] is TAC, a 16-bit Tracking Area Code.
1549ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[7] is CID, a 0-503 Physical Cell Identifier.
1550ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[8] is ECI, a 28-bit E-UTRAN Cell Identifier.
1551ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[9] is CSGID, a 27-bit Closed Subscriber Group Identity.
1552ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[10] is TADV, a 6-bit timing advance value.
1553ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *
155400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
15577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
15587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1566c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
15757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
15827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
159429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * If the radio is is turned off/on the radio modem subsystem
159529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is expected return to an initialized state. For instance,
159629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * any voice and data calls will be terminated and all associated
159729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * lists emptied.
159829487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1624602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
16267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
16427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
16557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1662602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
16727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
168500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
16877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
168800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
170000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1701f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170329487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Setup a packet data connection. If RIL_Data_Call_Response_v6.status
170429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * return success it is added to the list of data calls and a
170529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is sent. The call remains in the
170629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * list until RIL_REQUEST_DEACTIVATE_DATA_CALL is issued or the
170729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * radio is powered off/on. This list is returned by RIL_REQUEST_DATA_CALL_LIST
170829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED.
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17104380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
17114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
17124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
17134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
17144380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
17154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
17164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
17174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1718c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
17194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
17204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1722c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1723c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1724602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
17257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1726f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1727f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1728f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1729920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1730920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1731920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1732920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1733920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1734c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1735c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
17364f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1737c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1739c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
174000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
17423d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1745c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1746c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
17474380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
17484380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
17494380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
17504380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1752f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1754f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
175900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1765fd7293711394c422711ff07d15a357955ff2194fWink Saville * "data" is a const RIL_SIM_IO_v6 *
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1806602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
18167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
18257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
18307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
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#define RIL_REQUEST_GET_CLIR 31
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
18727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
18927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
19497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1952b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1954b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1956b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1957b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1958b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1959b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
196200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1977f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1996f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2032f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Deactivate packet data connection and remove from the
203529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * data call list if SUCCESS is returned. Any other return
203629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * values should also try to remove the call from the list,
203729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * but that may not be possible. In any event a
203829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_RADIO_POWER off/on must clear the list. An
203929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is not expected to be
204029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * issued because of an RIL_REQUEST_DEACTIVATE_DATA_CALL.
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
2043f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
2044d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
2045d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
2046d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
20477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2057f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
20657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
2070c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2071fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2072fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
20767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
20787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
209200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
2102c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2103fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2104fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2106593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
2107593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
216300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
216600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
21737553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
217400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
217500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21767553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
21777553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
21787553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
21797553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
21807553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
218600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
21987553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22017553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
22027553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
22037553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
22047553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
22057553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
220600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
220800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
221000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
221100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
221700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
22207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
222400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
22437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
22477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
22517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
225300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
22657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
22687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
22837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
22867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
229000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
22997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
23077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
23087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2309f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2310f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
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_SET_MUTE 53
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
236500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
23687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
23707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2381c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2382c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
23837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
23847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2385f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2386f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
239200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
23957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
23964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
239700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
239800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
239900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
240300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2406c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2407c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
24087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
240900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2410f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
241200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Returns the data call list. An entry is added when a
241629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_SETUP_DATA_CALL is issued and removed on a
241729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL. The list is emptied
241829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * when RIL_REQUEST_RADIO_POWER off/on is issued.
241900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2421c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
242200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
24247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
242600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
242729487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
242829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * See also: RIL_UNSOL_DATA_CALL_LIST_CHANGED
242900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
243000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
243200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
243300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2434f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
243500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
243700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
243800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
243900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2440f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2441f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
244200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
244300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
244400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
24467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
244700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2449f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
245000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
245100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
245300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
245400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
245600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
245900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
246100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
246200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
246300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
246400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
24657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
246600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
246700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
24697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
247000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
247100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
247200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
247800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
247900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
248000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
248100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
248300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
248400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
248600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
248700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
248900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
249000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
249600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
24987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
250000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
251000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2513432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2514432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2515432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
252200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
252400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
252600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
252700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
252800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
253400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
253900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
254000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
254100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
255500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
256600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
257200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
257700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
257900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
258100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
258200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
258300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
258500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
258600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
258700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
258800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
258900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
259100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
259300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
259500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
259600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
259700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
259800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2599f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2600f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2601f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2602f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2603f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2604f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2605f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2607f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2608f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2609f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2610f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2611f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
261200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
261400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
261600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
261700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
261800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
261900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
262000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
262100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
262200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
262300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
262400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
262600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
262800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
263000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
263100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
263200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
263400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
263500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
263600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
263700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
263800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2639f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2640f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2641f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2642f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2643f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2644f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2645f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2646f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2647f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2648f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2649f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2651f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
265200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
265400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
265500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
265600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
265700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
265900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
266000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
266100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
266200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
266300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
266400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
266600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
266700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
266800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
267000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
267200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
267300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
267500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
267600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
267700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
267800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
267900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
268000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
268100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
268200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
268300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
268500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
268600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
268800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
268900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
269000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
269100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
269200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
269300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
269400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
269500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
269600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
269700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
269800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
269900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
270000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
270100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
270300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
270400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
270600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
270700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
270900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
271000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
271100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
271200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
271300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
271400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
271500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
271600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
271700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
271800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
271900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
272000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
272100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
272300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
272400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
272600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
272700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
272900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
273100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
273200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
273300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
273400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
273500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
273600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
273700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
273800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
273900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
274100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
274200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
274300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
274400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
274600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
274700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
274800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
275000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
275200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
275300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
275400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
275500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
275600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
275700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
275800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
275900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
276000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
27627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
276300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
276400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
276500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
27677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
276800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
276900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
277000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
277100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
277200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
277300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
277400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
277500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
277700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
277800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2779c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
278000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
278200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2784f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2785f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2786f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2787f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
278800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
278900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
279000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
279100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
279200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
279300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
279500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
279600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
279800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2800c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
280100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
280200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
280300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
280400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
280500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
280600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
280700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
280800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
280900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
281000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
281100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
281200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
281300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
281500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
281700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
281800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
282000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
282100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
282200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
282300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
282400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
282500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
282600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
282700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
28283d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
282900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2830432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2831432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
283200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
283300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
283400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
283500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
283600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
283700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
283800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
283900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
28413d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
284200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
284300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
284400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
284500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
284600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
284800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
284900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
285000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2851f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2852c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
28537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2856f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2857f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2858c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
2859f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2860f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2861f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2862f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2863f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2864f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2865f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2866f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2867f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2868c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2869c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
2870f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2871c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
2872f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2873f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2874f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
28757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2878f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2880f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2881f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
28827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2883f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2885f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2886f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2887f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2888f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2889f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2890f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2891f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2892f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2893f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
28947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2895f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2896f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2897f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
28987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2899f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2900f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2902f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
29037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2904f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2906f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2907f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2908f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2909f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2910f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2911f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2912f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2913f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2914f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
29157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2916f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2917f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2918f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2919f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
29201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
29211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
29221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
29237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2924f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2926f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2927f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2928f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2929f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2930f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2931f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2932f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2933f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2934f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
29357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2936f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2937f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2938f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2940f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2941f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
29421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
29431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
29441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2945f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2946f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2948f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2949f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2950f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2952f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2953f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2954f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2955f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2956f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2957f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2958f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2959f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2960f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2961f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2962f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2963f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
29647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2965f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2967f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2968f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2969f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2970f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2971f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2972f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2974f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
29767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2977f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2979f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2981f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2982f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2983f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
29847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2985f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2987f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2988f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2989f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2990f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2991f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2993f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2994f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2996f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2997f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2999f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
3000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
30017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3002f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3004f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3005f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3006f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3007f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3008f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3009f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
3011f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3012f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3013f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
3014f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3015f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
3016f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3017602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
3018602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
3019602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
3020602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
3021602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
3022602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
30237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3024f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3026f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3027f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3028f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3029f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3030f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3031f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3032f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
3033f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3034f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
303503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
3036f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
303703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
303803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
303903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
3040f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3041f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
304203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
304303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
304403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
304503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
304603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
30477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3048f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3050f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3051f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3052f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3053f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3054f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
305603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
3057f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3058f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3059f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
3060f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3061f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
3062f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3063f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
30647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3065f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
30667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3067bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
3068bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
3069bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
3070bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
3071bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
3072bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
3073f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3074f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3075f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
30761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
3077f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3078f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3079f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3080f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
3081f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3082f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3083f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
3084f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3085f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
3086f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
3087f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3088f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
30897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3090f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3096f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3097f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3098f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
3099f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3100f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3101a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
3102a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3103a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
3104f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3105f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3106a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3107a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
3108a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
3109a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3110f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3111f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3112f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3113f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3114f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3115f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3116a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
3117f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3118f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3119a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
3120f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3121f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
3122f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3123a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
3124a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
3125a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3126f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3127a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3128f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3129f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3130f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3132f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3133f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3134a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
3135f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3136f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3137a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
3138f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3139a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
3140f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3141f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3142f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3143f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
3144f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3145a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3146f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3147a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3148f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3149f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3150f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3151f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3152f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3153f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3154a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
3155f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3156f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3157a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
3158f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3159f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
3160f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3161f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3162a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3163a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
3164a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
3165a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3166f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3167f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3168f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3169f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3170f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3171f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3172a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
3173f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3174f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3175a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
3176f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3177f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
3178f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3179a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
3180a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
3181a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3182f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3183a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3184f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3185f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3186f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3187f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3188f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3189f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3190a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
3191f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3192f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3193a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
3194f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3195f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
3196f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3197f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3198f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3199f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
3200f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3201a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3202f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3203a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3204f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3205f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3206f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3209f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3210a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
3211f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3212f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3213f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
3214f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3215f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
3216f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3217f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
3218f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
3219f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
3220f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3221f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
3222f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3223f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3224f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3225f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
322629be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
322729be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
322829be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
322929be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
32301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
3231d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
3232f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3233f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3234f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3235f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
3236f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3237f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3238eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
3239f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3240f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3241f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
3242f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3243f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
3244f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3245f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3246f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3247f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3248f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3249f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3250f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3251f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3252f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3253f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3254f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3255f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3256eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3257f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3258f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3259f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3260f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3261f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3262f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3263f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3264f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3265f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3266f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3267f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3268f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3269f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3270f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3271f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3272f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3273f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3274eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3275f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3276f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3277f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3278eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3279eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3280eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3281f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3282eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3283f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3284eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3285eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3286f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3287eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3288eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3289f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3290eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3291f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3292eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3293eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3294eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3295eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3296eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3297f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3298f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3299f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3300f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3301f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3302eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3303f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
33041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
33051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
33061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
33081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
33091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
33101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
33127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
33131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
33147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
33151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
33161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
33171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
33181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
33191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3322f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3323000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3324000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3325000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3326000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3327000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3328000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3329000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3330000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3331000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3332000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3333000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3334000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3335000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3336000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3337000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3338000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3339000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3340000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3341000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3342000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3343000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3344000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3345000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3346000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3347000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3348000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3349000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3350000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3351000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3352000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3353000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3354000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3355000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3356000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3357b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3358b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3359b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3360b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3361b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3362b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3363b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3364b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3365b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3366b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3367b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3368b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3369b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3370b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3371b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3372b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3373b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3374b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3375b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
33762641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
33772641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
33782641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33792641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
33802641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
33812641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33822641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
33832641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
33842641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33852641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
33862641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
33872641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
33882641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
33892641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33902641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
33912641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
33922641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3393c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3394c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3395c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3396c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3397c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3398c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3399c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3400c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3401c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3402c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3403c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3404c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3405c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3406c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3407c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3408c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3409c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3410c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3411c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3412c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3413c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3414fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby/**
3415fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * RIL_REQUEST_ISIM_AUTHENTICATION
3416fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3417fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Request the ISIM application on the UICC to perform AKA
3418fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * challenge/response algorithm for IMS authentication
3419fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3420fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "data" is a const char * containing the challenge string in Base64 format
3421fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "response" is a const char * containing the response in Base64 format
3422fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3423fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Valid errors:
3424fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  SUCCESS
3425fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  RADIO_NOT_AVAILABLE
3426fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  GENERIC_FAILURE
3427fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby */
3428fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby#define RIL_REQUEST_ISIM_AUTHENTICATION 105
3429fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby
3430300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3431300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU
3432300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3433300105d1487f5238940c18792b879793826b61f4Jake Hamby * Acknowledge successful or failed receipt of SMS previously indicated
3434300105d1487f5238940c18792b879793826b61f4Jake Hamby * via RIL_UNSOL_RESPONSE_NEW_SMS, including acknowledgement TPDU to send
3435300105d1487f5238940c18792b879793826b61f4Jake Hamby * as the RP-User-Data element of the RP-ACK or RP-ERROR PDU.
3436300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3437300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is const char **
3438300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[0] is "1" on successful receipt (send RP-ACK)
3439300105d1487f5238940c18792b879793826b61f4Jake Hamby *                          is "0" on failed receipt (send RP-ERROR)
3440300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[1] is the acknowledgement TPDU in hexadecimal format
3441300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3442300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is NULL
3443300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3444300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3445300105d1487f5238940c18792b879793826b61f4Jake Hamby *  SUCCESS
3446300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RADIO_NOT_AVAILABLE
3447300105d1487f5238940c18792b879793826b61f4Jake Hamby *  GENERIC_FAILURE
3448300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3449300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU 106
3450300105d1487f5238940c18792b879793826b61f4Jake Hamby
3451300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3452300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS
3453300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3454300105d1487f5238940c18792b879793826b61f4Jake Hamby * Requests to send a SAT/USAT envelope command to SIM.
3455300105d1487f5238940c18792b879793826b61f4Jake Hamby * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111.
3456300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3457300105d1487f5238940c18792b879793826b61f4Jake Hamby * This request has one difference from RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND:
3458300105d1487f5238940c18792b879793826b61f4Jake Hamby * the SW1 and SW2 status bytes from the UICC response are returned along with
3459300105d1487f5238940c18792b879793826b61f4Jake Hamby * the response data, using the same structure as RIL_REQUEST_SIM_IO.
3460300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3461300105d1487f5238940c18792b879793826b61f4Jake Hamby * The RIL implementation shall perform the normal processing of a '91XX'
3462300105d1487f5238940c18792b879793826b61f4Jake Hamby * response in SW1/SW2 to retrieve the pending proactive command and send it
3463300105d1487f5238940c18792b879793826b61f4Jake Hamby * as an unsolicited response, as RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND does.
3464300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3465300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is a const char * containing the SAT/USAT command
3466300105d1487f5238940c18792b879793826b61f4Jake Hamby * in hexadecimal format starting with command tag
3467300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3468300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is a const RIL_SIM_IO_Response *
3469300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3470300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3471300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_SUCCESS
3472300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
3473300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_GENERIC_FAILURE
3474300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3475300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS 107
3476300105d1487f5238940c18792b879793826b61f4Jake Hamby
34772bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
34782bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_REQUEST_VOICE_RADIO_TECH
34792bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34802bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
34812bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * when radio state is RADIO_STATE_ON
34822bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34832bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is NULL
34842bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "response" is int *
34852bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *) response)[0] is of type const RIL_RadioTechnology
34862bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34872bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Valid errors:
34882bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  SUCCESS
34892bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  RADIO_NOT_AVAILABLE
34902bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  GENERIC_FAILURE
34912bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
34922bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_REQUEST_VOICE_RADIO_TECH 108
34932bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
34948a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
34958a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_GET_CELL_INFO_LIST
34968a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
34978a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Request all of the current cell information known to the radio. The radio
34988a9e02161271505de274db0c3a88087056dd5dfcWink Saville * must a list of all current cells, including the neighboring cells. If for a particular
34998a9e02161271505de274db0c3a88087056dd5dfcWink Saville * cell information isn't known then the appropriate unknown value will be returned.
35008a9e02161271505de274db0c3a88087056dd5dfcWink Saville * This does not cause or change the rate of RIL_UNSOL_CELL_INFO_LIST.
35018a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35028a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
35038a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35048a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of  RIL_CellInfo.
35058a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
35068a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_GET_CELL_INFO_LIST 109
35078a9e02161271505de274db0c3a88087056dd5dfcWink Saville
35088a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
35098a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE
35108a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35118a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Sets the minimum time between when RIL_UNSOL_CELL_INFO_LIST should be invoked.
3512c57b3eb525db241bd3e6092453f48388bc880447Wink Saville * A value of 0, means invoke RIL_UNSOL_CELL_INFO_LIST when any of the reported
35138a9e02161271505de274db0c3a88087056dd5dfcWink Saville * information changes. Setting the value to INT_MAX(0x7fffffff) means never issue
35148a9e02161271505de274db0c3a88087056dd5dfcWink Saville * a RIL_UNSOL_CELL_INFO_LIST.
35158a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35168a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is int *
35178a9e02161271505de274db0c3a88087056dd5dfcWink Saville * ((int *)data)[0] is minimum time in milliseconds
35188a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35198a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is NULL
35208a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35218a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Valid errors:
35228a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  SUCCESS
35238a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  RADIO_NOT_AVAILABLE
35248a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  GENERIC_FAILURE
35258a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
35268a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE 110
3527300105d1487f5238940c18792b879793826b61f4Jake Hamby
352875697538e485ea2981960dcd4878bfdd032731acSungmin Choi/**
352975697538e485ea2981960dcd4878bfdd032731acSungmin Choi * RIL_REQUEST_SET_INITIAL_ATTACH_APN
353075697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
353175697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Set an apn to initial attach network
353275697538e485ea2981960dcd4878bfdd032731acSungmin Choi * "response" is NULL
353375697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
353475697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Valid errors:
353575697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUCCESS
353675697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  RADIO_NOT_AVAILABLE (radio resetting)
353775697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  GENERIC_FAILURE
353875697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUBSCRIPTION_NOT_AVAILABLE
353975697538e485ea2981960dcd4878bfdd032731acSungmin Choi */
354075697538e485ea2981960dcd4878bfdd032731acSungmin Choi#define RIL_REQUEST_SET_INITIAL_ATTACH_APN 111
354175697538e485ea2981960dcd4878bfdd032731acSungmin Choi
3542a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3543a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_REGISTRATION_STATE
3544a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3545a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Request current IMS registration state
3546a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3547a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is NULL
3548a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3549a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is int *
3550a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[0] is registration state:
3551a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              0 - Not registered
3552a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              1 - Registered
3553a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[1] is bitmap of the supported services:
3554a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *          & 0x1 - SMS supported
3555a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3556a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * If IMS is registered and supports SMS, then ((int *) response)[2]
3557a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * must follow with IMS SMS format:
3558a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3559a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *) response)[2] is of type const RIL_IMS_SMS_Format
3560a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3561a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_REGISTRATION_STATE 112
3562a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
3563a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3564a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_SEND_SMS
3565a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3566a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Send a SMS message over IMS
3567a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3568a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is const RIL_IMS_SMS_Message *
3569a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3570a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is a const RIL_SMS_Response *
3571a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3572a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Based on the return error, caller decides to resend if sending sms
3573a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
3574a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * In case of retry, data is encoded based on Voice Technology available.
3575a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3576a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Valid errors:
3577a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SUCCESS
3578a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  RADIO_NOT_AVAILABLE
3579a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SMS_SEND_FAIL_RETRY
3580a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  FDN_CHECK_FAILURE
3581a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  GENERIC_FAILURE
3582a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3583a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3584a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_SEND_SMS 113
3585a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
35862458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
35872458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC
35882458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
35892458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Request APDU exchange on the basic channel. This command reflects TS 27.007
35902458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "generic SIM access" operation (+CSIM). The modem must ensure proper function
35912458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * of GSM/CDMA, and filter commands appropriately. It should filter
35922458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * channel management and SELECT by DF name commands.
35932458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
35942458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is a const RIL_SIM_APDU *
35952458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "sessionid" field should be ignored.
35962458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
35972458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is a const RIL_SIM_IO_Response *
35982458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
35992458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36002458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36012458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36022458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36032458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36042458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC 114
36052458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36062458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36072458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_OPEN_CHANNEL
36082458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36092458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Open a new logical channel and select the given application. This command
36102458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * reflects TS 27.007 "open logical channel" operation (+CCHO).
36112458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36122458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is const char * and set to AID value, See ETSI 102.221 and 101.220.
36132458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36142458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is int *
36152458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * ((int *)data)[0] contains the session id of the logical channel.
36162458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * A value of 0 indicates an invalid session id.
36172458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36182458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36192458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36202458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36212458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36222458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  MISSING_RESOURCE
36232458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  NO_SUCH_ELEMENT
36242458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36252458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_OPEN_CHANNEL 115
36262458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36272458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36282458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_CLOSE_CHANNEL
36292458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36302458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Close a previously opened logical channel. This command reflects TS 27.007
36312458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "close logical channel" operation (+CCHC).
36322458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36332458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is int *
36342458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * ((int *)data)[0] is the session id of logical the channel to close.
36352458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36362458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is NULL
36372458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36382458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36392458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36402458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36412458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36422458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36432458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_CLOSE_CHANNEL 116
36442458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36452458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36462458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL
36472458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36482458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Exchange APDUs with a UICC over a previously opened logical channel. This
36492458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * command reflects TS 27.007 "generic logical channel access" operation
36502458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * (+CGLA). The modem should filter channel management and SELECT by DF name
36512458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * commands.
36522458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36532458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is a const RIL_SIM_APDU*
36542458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36552458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is a const RIL_SIM_IO_Response *
36562458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36572458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36582458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36592458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36602458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36612458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36622458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL 117
36632458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36642458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
366500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
366600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3667f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
366800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
366900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
367000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
367100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
367200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
367300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
367400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
367500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
367600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
367700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
367800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
367900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
368000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
368100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
368200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
368300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
368400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
368500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
368600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
368700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
368800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
368900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
369000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
369100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
36927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
369300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
369400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
369500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
369600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
369700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
369800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
369900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
370100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3702c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
370300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3704c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
370500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
370600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
370700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3708c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
370900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
371000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
371100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
371200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
371300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
371400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
371500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3716c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
371700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
371800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
371900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
372000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
372100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
37227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
372300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
372400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
372500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
372600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
372700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
372800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
372900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
373000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
373200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
373300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
373400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
373500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
373600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
373700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
373800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
373900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
374000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
374100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
37427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
374300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
374400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
374500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
374600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
374700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
374800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
374900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
375000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
375200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
375300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
375400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
375500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
375700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
375900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
376000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
376100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
37627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
376300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
376400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
376500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
376600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
376700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
376900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
377000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
377100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
377200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
377400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
37767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
377700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
377800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
377900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
378000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
378100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
378200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
378300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
378400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
378600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
378700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
378900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
379000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
379100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
379200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
379300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
379400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
379500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
379600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
379800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
37997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
380000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
380100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
380200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
380300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
380400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
380600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
380800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
380900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
381000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
381100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
381200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
381300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
381400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
381500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
381600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
381800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
381900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
382000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3823f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
382400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3825c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
382629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST. It is the complete list
382729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * of current data contexts including new contexts that have been
382829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * activated. A data call is only removed from this list when the
382929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * framework sends a RIL_REQUEST_DEACTIVATE_DATA_CALL or the radio
383029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is powered off/on.
383100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3832f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
383300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
383400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3835f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
383600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
383700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
383800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
383900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
384000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
384100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
384200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
384300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
384400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
384500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
384700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
384900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
385000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
385100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
385200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
385300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
385400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
385500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
385600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
385700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
385800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
385900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
386000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
386100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
386200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
386300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
386400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
386500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
386600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
386700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
386800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
386900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
387000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
387100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
387200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
387300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
387400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
387500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
387600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
387700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
387800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
387900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
388000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
388100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
388200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
388300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
388400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
388500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
388600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
388700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
388800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
388900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
389000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
389100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
389200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
389300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
389400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
389500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
389600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
389700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
389800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
389900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
390000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
390100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
390200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
390300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
390400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
390500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
390600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
390700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
390800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
390900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
391000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
391145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 6 or older:
391200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
391300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
391400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
391545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * SIM_FILE_UPDATE or NULL for any other result.
391645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *
391745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 7:
391845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * "data" is a RIL_SimRefreshResponse_v7 *
391900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39202bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Note: If the SIM state changes as a result of the SIM refresh (eg,
39212bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
392200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
392300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
392400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
392500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
392600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
392700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
392800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
392900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
39306453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
39316453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
39326453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
39336453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
39346453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
39356453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
39366453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
39376453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
39386453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
393900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39403d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
39413d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
394200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
394300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
394400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
394534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
394634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
394734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
394834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
39493d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
395034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
395234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
395334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
395434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
395534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
395634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
395734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
395834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
395934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
39603d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
396134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
39623d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
396334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
396434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
39653d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
396634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
396734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
39683d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
396934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
397034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
397134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
397234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
397334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
397434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
397534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
39767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
39770eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
39780eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
39790eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
39800eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
39810eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
39820eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
39830eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
3984f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
398534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
398634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3987f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
398834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
398934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
399034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
399134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
399234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
399334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
399434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
399634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3997f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
399934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
400034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
400134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
400234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
400334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
400434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
400534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
400634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
400734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
400834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
400934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
401034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
40111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
40121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
40131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
40151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
40161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
40181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
40201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
40211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
40221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
40231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
40241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
40261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
40287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
40291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
40301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
403134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
40321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
40331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
40341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
40361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
40371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
40391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
40401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
40411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
40431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
40441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
40451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
40461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
40471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
40491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
40511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
40521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
40531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
405434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
4055af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
4056af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
4057af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
4058af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
4059af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
4060af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
4061af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
4062af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
4063af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
40645d621da539abea83309d77317ede40126f47d5f0John Wang/**
40655d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
40665d621da539abea83309d77317ede40126f47d5f0John Wang *
40675d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
40685d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
40695d621da539abea83309d77317ede40126f47d5f0John Wang *
40705d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
40715d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
40725d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
40735d621da539abea83309d77317ede40126f47d5f0John Wang */
40745d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
40755d621da539abea83309d77317ede40126f47d5f0John Wang
40765909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
40775909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
40785909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
40795909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
40805909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
40815909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
40825909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
40835909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
40845909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
40855909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
40865909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
4087c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4088c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4089c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
4090c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4091c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
4092c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4093c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4094c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
4095c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
409629487ef2685e5ee38f0348ab031cb96a608296baWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED 1031
4097c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4098c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4099c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
4100c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4101c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
4102c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4103c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4104c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
4105c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4106c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
4107c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4108c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4109c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
4110c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4111c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
4112c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4113c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
4114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
4115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4116c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
4117c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4118c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
4120c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
41215b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville/**
41225b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * RIL_UNSOL_RIL_CONNECTED
41235b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
41245b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * Called the ril connects and returns the version
41255b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
41265b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * "data" is int *
41275b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * ((int *)data)[0] is RIL_VERSION
41285b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville */
41295b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville#define RIL_UNSOL_RIL_CONNECTED 1034
41305b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville
41312bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
41322bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_UNSOL_VOICE_RADIO_TECH_CHANGED
41332bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
41342bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Indicates that voice technology has changed. Contains new radio technology
41352bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * as a data in the message.
41362bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
41372bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is int *
41382bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *)data)[0] is of type const RIL_RadioTechnology
41392bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
41402bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
41412bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_UNSOL_VOICE_RADIO_TECH_CHANGED 1035
41422bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
41438a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
41448a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_UNSOL_CELL_INFO_LIST
41458a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
41468a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Same information as returned by RIL_REQUEST_GET_CELL_INFO_LIST, but returned
41478a9e02161271505de274db0c3a88087056dd5dfcWink Saville * at the rate no greater than specified by RIL_REQUEST_SET_UNSOL_CELL_INFO_RATE.
41488a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
41498a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
41508a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
41518a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of RIL_CellInfo.
41528a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
41538a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_UNSOL_CELL_INFO_LIST 1036
41542bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
4155a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/*
4156a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED
4157a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4158a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Called when IMS registration state has changed
4159a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4160a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is int *
4161a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[0] is registration state:
4162a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              0 - Not registered
4163a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              1 - Registered
4164a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[1] is bitmap of the services supported:
4165a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *          & 0x1 - SMS supported
4166a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4167a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * If IMS is registered and supports SMS, then ((int *) response)[2]
4168a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * must follow with IMS SMS format:
4169a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4170a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *) response)[2] is of type const RIL_IMS_SMS_Format
4171a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
4172a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED 1037
4173a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
417400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
417500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
417600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
417700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
417800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
417900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
418000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
418100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
418200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
418300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
418400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
418500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
418600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
41877f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
418800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
418900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
419000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
419100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
419200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
419300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
419400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
419500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
419600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
419700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
419800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
419900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
420000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
420100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
420200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
420300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
420400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
42057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
420600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
420700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
42087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
420900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
421000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
421100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
421200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
421300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
421400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
421500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
421600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
421700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
42187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
421900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
422000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
422100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
422200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
422300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
422400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
422500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
422600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
422700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
422800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
422900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
423000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
423100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
423200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
423300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
423400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
423500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
423600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
423700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
423800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
423900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
424000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
424100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
424275697538e485ea2981960dcd4878bfdd032731acSungmin Choitypedef struct {
424375697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *apn;
424475697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *protocol;
424575697538e485ea2981960dcd4878bfdd032731acSungmin Choi    int authtype;
424675697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *username;
424775697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *password;
424875697538e485ea2981960dcd4878bfdd032731acSungmin Choi} RIL_InitialAttachApn;
424975697538e485ea2981960dcd4878bfdd032731acSungmin Choi
425000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
425100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
425200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
425300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
425400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
425500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
425600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
425700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
42587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
425900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
426000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
426100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
426200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
42637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
426400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
426500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
426600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
426700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
426800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
426900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
427000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
427100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
427200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
427400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
427500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
427600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
42777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
427800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
427900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
428000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
428100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
428200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
428300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42840d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
42857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
428600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
428700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
428800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
42907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
429100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
429200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
429300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
429500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
429600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
429700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
429900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
430000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
430100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
430200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
430300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
430400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
430500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
430600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
430700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
430800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
430900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
431000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
431100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
431200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
431300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
431400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
431500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
43163d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
431700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
431800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
431900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
432000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
432100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
432200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
43237f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
432400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
432500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
432600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
432700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
432800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
432900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
433000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
433100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
433200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
43337f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
433400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
433500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
433600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
433700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
43387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
433900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
434000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
434100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
434200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
434300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
434400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
434500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
434600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
434700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
434800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
43490d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
43500d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
435100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
435200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
435300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
435400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
435500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
435600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
435700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
435800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
435900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
4360