ril.h revision d27c9d58a9fc1571427e903dcd3a8d048f083535
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>
238a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#include <telephony/ril_nv_items.h>
248a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
25f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#ifndef FEATURE_UNIT_TEST
2600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
27f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#endif /* !FEATURE_UNIT_TEST */
2800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
3000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
3100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
3200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
332458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_VERSION 10     /* Current version */
3445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka#define RIL_VERSION_MIN 6 /* Minimum RIL_VERSION supported */
3500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
36a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
37a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
38a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville
3900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
4000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
4300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
4400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
4500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
4600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
4700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
4800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
4900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
5000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
5100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
5200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
5300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
543d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SMS_SEND_FAIL_RETRY = 10,             /* fail to send sms and need retry */
553d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SIM_ABSENT = 11,                      /* fail to set the location where CDMA subscription
563d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                                   shall be retrieved because of SIM or RUIM
57f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   card absent */
583d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SUBSCRIPTION_NOT_AVAILABLE = 12,      /* fail to find CDMA subscription from specified
59f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   location */
60602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_MODE_NOT_SUPPORTED = 13,              /* HW does not support preferred network type */
617553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_FDN_CHECK_FAILURE = 14,               /* command failed because recipient is not on FDN list */
622458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_ILLEGAL_SIM_OR_ME = 15,               /* network selection failed due to
637553447d44bb3f494b00d573215d81398f61cfcdJohn Wang                                                   illegal SIM or ME */
642458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_MISSING_RESOURCE = 16,                /* no logical channel available */
652458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_NO_SUCH_ELEMENT = 17,                 /* application not found on SIM */
6600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
6700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
6800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
6900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
7000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
7100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
7200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
7300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
7400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
7500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
7600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
78f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
79f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
802bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    /* States 2-9 below are deprecated. Just leaving them here for backward compatibility. */
81f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
83f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
84f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
85f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
86f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
88f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
89f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
902bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_NV_READY = 9,              /* Radio is on and the NV interface is available */
912bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_ON = 10                    /* Radio is on */
9200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
9300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
944380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef enum {
954380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UNKNOWN = 0,
964380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_GPRS = 1,
974380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EDGE = 2,
984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UMTS = 3,
994380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95A = 4,
1004380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95B = 5,
1014380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_1xRTT =  6,
1024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_0 = 7,
1034380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_A = 8,
1044380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSDPA = 9,
1054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSUPA = 10,
1064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSPA = 11,
1074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_B = 12,
1084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EHRPD = 13,
109c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_LTE = 14,
1102bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_HSPAP = 15, // HSPA+
1112bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_GSM = 16 // Only supports voice
1124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_RadioTechnology;
1134380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
114c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// Do we want to split Data from Voice and the use
115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// RIL_RadioTechnology for get/setPreferredVoice/Data ?
116c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
117c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA                = 0, /* GSM/WCDMA (WCDMA preferred) */
118c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_ONLY                 = 1, /* GSM only */
119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_WCDMA                    = 2, /* WCDMA  */
120c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_AUTO           = 3, /* GSM/WCDMA (auto mode, according to PRL) */
121c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_EVDO_AUTO           = 4, /* CDMA and EvDo (auto mode, according to PRL) */
122c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_ONLY                = 5, /* CDMA only */
123c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_EVDO_ONLY                = 6, /* EvDo only */
124c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_CDMA_EVDO_AUTO = 7, /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
125c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CDMA_EVDO            = 8, /* LTE, CDMA and EvDo */
126c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_GSM_WCDMA            = 9, /* LTE, GSM/WCDMA */
127c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CMDA_EVDO_GSM_WCDMA  = 10, /* LTE, CDMA, EvDo, GSM/WCDMA */
1280e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_ONLY                 = 11, /* LTE only */
1290e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_WCDMA                = 12  /* LTE/WCDMA */
130c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_PreferredNetworkType;
131c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
132c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Source for cdma subscription */
133c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
134c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_RUIM_SIM = 0,
135c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_NV = 1
136c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CdmaSubscriptionSource;
137c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
13874fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
13974fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
14074fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
14174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
14274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
14374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
14474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
14574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
14674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
14774fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
14874fa38884320698c1623764850e3131b9769dff0Wink Saville
14974fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
15074fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
15174fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
15274fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
15374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
15474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
15574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
15674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
15774fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
15874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
15974fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
16074fa38884320698c1623764850e3131b9769dff0Wink Saville
16174fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
16274fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
16374fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
16474fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
16574fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
16674fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
16774fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
16874fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
16974fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
17074fa38884320698c1623764850e3131b9769dff0Wink Saville
17174fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
1721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
19374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
19400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
19500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_Data_Call_Response_v6 */
19700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1984380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
1991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2004f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2014f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
2024380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          apn;        /* ignored */
203c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          address;    /* An address, e.g., "192.0.1.3" or "2001:db8::1". */
204c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v4;
2054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
2064380897c6cdc99486a061b819943e3b290ebcf09Wink Saville/*
2074380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * Returned by RIL_REQUEST_SETUP_DATA_CALL, RIL_REQUEST_DATA_CALL_LIST
2084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED, on error status != 0.
2094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville */
2104380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef struct {
2114380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
212beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
213beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           back-off timer value RIL wants to override the one
214beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           pre-configured in FW.
215beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The unit is miliseconds.
216beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value < 0 means no value is suggested.
21716157587c02b83a93f4e02f83a934442aa0e3e6aKazuhiro Ondo                                           The value 0 means retry should be done ASAP.
2188a9e02161271505de274db0c3a88087056dd5dfcWink Saville                                           The value of INT_MAX(0x7fffffff) means no retry. */
2194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2224380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2244380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2254380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
226c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
227c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
229c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
230c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
231c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2344380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
235c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
236c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
237c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
238c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
239c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
24000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
241a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef enum {
242a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP = 1, /* 3GPP Technologies - GSM, WCDMA */
243a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP2 = 2 /* 3GPP2 Technologies - CDMA */
244a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_RadioTechnologyFamily;
245a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
246a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef struct {
247a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RIL_RadioTechnologyFamily tech;
248a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    unsigned char             retry;       /* 0 == not retry, nonzero == retry */
249a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    int                       messageRef;  /* Valid field if retry is set to nonzero.
250a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              Contains messageRef from RIL_SMS_Response
251a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              corresponding to failed MO SMS.
252a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                            */
253a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
254a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    union {
255a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP2. See RIL_REQUEST_CDMA_SEND_SMS */
256a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        RIL_CDMA_SMS_Message* cdmaMessage;
257a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
258a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP. See RIL_REQUEST_SEND_SMS */
259a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        char**                gsmMessage;
260a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    } message;
261a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_IMS_SMS_Message;
262a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
26300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2648e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
2658e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
2668e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
268920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
269920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
270920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
27100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
27200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
27400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
27600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
27700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
27800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
27900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
280f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
281f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
28200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
28300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
28400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
28500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
28600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
28800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
28900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
29000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
29100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
29200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
29300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
29400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
29574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
29600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
29900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
30100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
3031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
30600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
30700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
30800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
30900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
310c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
311c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
312c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
313c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
314c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
315c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
316c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
317c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
318c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
319c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
320c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
321c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
322c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
323c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
324c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
325c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
32600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3272458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/* Used by RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL and
3282458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC. */
3292458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawaltypedef struct {
3302458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int sessionid;  /* "sessionid" from TS 27.007 +CGLA command. Should be
3312458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal                       ignored for +CSIM command. */
3322458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
3332458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    /* Following fields are used to derive the APDU ("command" and "length"
3342458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal       values in TS 27.007 +CSIM and +CGLA commands). */
3352458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int cla;
3362458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int instruction;
3372458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p1;
3382458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p2;
3392458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p3;         /* A negative P3 implies a 4 byte APDU. */
3402458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    char *data;     /* May be NULL. In hex string format. */
3412458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal} RIL_SIM_APDU;
3422458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
34500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
34600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
34700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
34800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
35000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
35100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
35200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
35300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
35400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
35500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
35600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
35700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
35800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
35900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
36000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
36100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
36200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
36300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
36400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3653d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
3663d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
3673d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
3683d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
3693d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
3703d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
3713d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
3723d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
37300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
37400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
37500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
376e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
377e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
378e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
37900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
3807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
381e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
38200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
383e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
384e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
38500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
38600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
38700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
38900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
3901b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
39100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
39200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
39300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
39400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
39500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
39600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
397602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
398602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
3991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
4001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
4011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
4021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
4031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
4041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
4051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
4061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
4071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
4081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
40903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
41000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
41100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
41200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
41400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4154380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
4164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
4184380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
4194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
4204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
4214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
4224380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
423d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
424d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
425d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
426d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
427d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
428d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
429d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
430d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
431d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
432d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
4334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
4343d14a71de78f2b0d02c7943e554c8726b1703935Wink Saville    PDP_FAIL_REGULAR_DEACTIVATION = 0x24,          /* restart radio */
4354380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
4364380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
4374380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
438d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
4394380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
440d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
441c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
442c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
4434380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
4453492c6e5917828645feb3dba4618629929a43ab1Wink Saville    PDP_FAIL_SIGNAL_LOST = -3,
4464380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
4474380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
4484380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
4494380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
4504380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
4514380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
4524380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
4534380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4544380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
4554380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
45600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
457602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
458602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
459602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
460602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
461602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
462602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
463602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
46400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
46500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
46600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
46700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
46800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
46900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
47000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
47100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
47200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
47300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
47400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
47500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
47600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
47700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
47800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
4907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
4917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
492f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
498f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
499f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
501f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
502f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
503f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
504f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
505f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
506f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
509f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
510f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
513f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
516f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
517f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
518f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
519f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
520f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
521f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
5227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
525f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
526f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
527f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
528f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
529f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
530f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
531f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
532f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
533f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
534f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
535f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
536f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
537f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
538f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
539f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
540f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
541c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
542c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
543f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
544f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
545f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
546f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
5487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
5497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
550f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
5517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
552f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
553f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
554c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
5557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
5567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
557f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
558f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
559c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
560c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
561c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
562c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
563c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
564c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
565c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
566c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
567c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
568c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
569c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
570f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
571f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
5727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
573f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
574c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
575c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
576c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
577f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
578f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
579c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
580f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
58145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka/** The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH
58245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *      or as part of RIL_SimRefreshResponse_v7
58345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka */
58400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
58500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
58600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
58745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    /* SIM initialized.  All files should be re-read. */
58800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
58900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
59000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
59100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
59200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
59345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenkatypedef struct {
59445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    RIL_SimRefreshResult result;
59545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    int                  ef_id; /* is the EFID of the updated file if the result is */
59645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* SIM_FILE_UPDATE or 0 for any other result. */
59745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    char *               aid;   /* is AID(application ID) of the card application */
59845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* See ETSI 102.221 8.1 and 101.220 4 */
59945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_FILE_UPDATE result it can be set to AID of */
60045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application in which updated EF resides or it can be */
60145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         NULL if EF is outside of an application. */
60245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_INIT result this field is set to AID of */
60345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application that caused REFRESH */
60445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_RESET result it is NULL. */
60545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka} RIL_SimRefreshResponse_v7;
60645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka
607c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
6081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
6101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
6111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
6123d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
613c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
614c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
615c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
616c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
617c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
618c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
619c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
620c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
621c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
622c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
623c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
624c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
6251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
626a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
627a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
628a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
629a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
630a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
631a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
632a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
633a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
634a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
635a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
636a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
637a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
638a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
639a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
640a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
641a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
642a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
643a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
644a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
645f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
646a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
647a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
648a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
649a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
650a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
651a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
652f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
65334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
65434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
65534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
65634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
65734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
65834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
659a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
66034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
66134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
66234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
66334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
6641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
6651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
6661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
6671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
6681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
6691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
6701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
6711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
6721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
6731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
6741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
6751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
6761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
6771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
6781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
6791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
6821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
6831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
6841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
685c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
686c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
687c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
688c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_SignalStrengthWcdma;
6891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
6921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
6931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
6941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
6961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
6971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
6981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
6991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
7001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
7041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
7051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
7061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
7081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
7091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
7101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
7121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
7131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
714c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
715c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
716473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
717473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 44 to 140 dBm
718473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
719473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
720473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
721473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 20 to 3 dB.
722473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
723473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
724473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
725473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
726473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
727473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
728473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int cqi;             /* The current Channel Quality Indicator.
729473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 0 to 15.
730473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
731473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
732c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
733c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
7348a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
7358a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
7368a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
7378a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 44 to 140 dBm
7388a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
7398a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
7408a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
7418a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 20 to 3 dB.
7428a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
7438a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
7448a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
7458a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
7468a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7478a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
7488a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int cqi;             /* The current Channel Quality Indicator.
7498a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 15.
7508a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7518a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
7528a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int timingAdvance;   /* timing advance in micro seconds for a one way trip from cell to device.
7538a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Approximate distance can be calculated using 300m/us * timingAdvance.
7548a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 0x7FFFFFFE
7558a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
7568a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP 36.321 section 6.1.3.5
7578a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * also: http://www.cellular-planningoptimization.com/2010/02/timing-advance-with-calculation.html */
7588a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_LTE_SignalStrength_v8;
7598a9e02161271505de274db0c3a88087056dd5dfcWink Saville
760c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
761c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
762c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
763c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
764c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
765c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
7661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
7691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
7701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
771c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
772c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
7731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7748a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
7758a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_GW_SignalStrength       GW_SignalStrength;
7768a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CDMA_SignalStrength     CDMA_SignalStrength;
7778a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_EVDO_SignalStrength     EVDO_SignalStrength;
7788a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_LTE_SignalStrength_v8   LTE_SignalStrength;
7798a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_SignalStrength_v8;
7808a9e02161271505de274db0c3a88087056dd5dfcWink Saville
7818a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityGsm */
7828a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
783c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown */
784c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown */
785c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
786c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 16-bit GSM Cell Identity described in TS 27.007, 0..65535, INT_MAX if unknown  */
7878a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityGsm;
7888a9e02161271505de274db0c3a88087056dd5dfcWink Saville
789c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellIdentityWcdma */
790c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
791c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
792c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
793c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
794c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 28-bit UMTS Cell Identity described in TS 25.331, 0..268435455, INT_MAX if unknown  */
795c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int psc;    /* 9-bit UMTS Primary Scrambling Code described in TS 25.331, 0..511, INT_MAX if unknown */
796c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellIdentityWcdma;
797c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
7988a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityCdma */
7998a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
800c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int networkId;      /* Network Id 0..65535, INT_MAX if unknown */
801c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int systemId;       /* CDMA System Id 0..32767, INT_MAX if unknown  */
802c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int basestationId;  /* Base Station Id 0..65535, INT_MAX if unknown  */
8038a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int longitude;      /* Longitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
8048a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -2592000
8058a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 2592000, both values inclusive (corresponding to a range of -180
806c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +180 degrees). INT_MAX if unknown */
8078a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8088a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int latitude;       /* Latitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
8098a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -1296000
8108a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 1296000, both values inclusive (corresponding to a range of -90
811c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +90 degrees). INT_MAX if unknown */
8128a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityCdma;
8138a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8148a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityLte */
8158a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
816c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
817c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
818c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int ci;     /* 28-bit Cell Identity described in TS ???, INT_MAX if unknown */
819c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int pci;    /* physical cell id 0..503, INT_MAX if unknown  */
820c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int tac;    /* 16-bit tracking area code, INT_MAX if unknown  */
8218a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityLte;
8228a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8238a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoGsm */
8248a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8258a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityGsm   cellIdentityGsm;
8268a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_GW_SignalStrength signalStrengthGsm;
8278a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoGsm;
8288a9e02161271505de274db0c3a88087056dd5dfcWink Saville
829c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellInfoWcdma */
830c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
831c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CellIdentityWcdma cellIdentityWcdma;
832c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_SignalStrengthWcdma signalStrengthWcdma;
833c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellInfoWcdma;
834c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
8358a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoCdma */
8368a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8378a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityCdma      cellIdentityCdma;
8388a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CDMA_SignalStrength   signalStrengthCdma;
8398a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_EVDO_SignalStrength   signalStrengthEvdo;
8408a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoCdma;
8418a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8428a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoLte */
8438a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8448a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityLte        cellIdentityLte;
8458a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_LTE_SignalStrength_v8  signalStrengthLte;
8468a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoLte;
8478a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8488a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TYPE_XXX
8498a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
8508a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_GSM    = 1,
8518a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_CDMA   = 2,
8528a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_LTE    = 3,
853c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CELL_INFO_TYPE_WCDMA  = 4,
8548a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoType;
8558a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8568a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TIMESTAMP_TYPE_XXX
8578a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
8588a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_UNKNOWN = 0,
8598a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_ANTENNA = 1,
8608a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_MODEM = 2,
8618a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_OEM_RIL = 3,
8628a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_JAVA_RIL = 4,
8638a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_TimeStampType;
8648a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8658a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8668a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellInfoType  cellInfoType;   /* cell type for selecting from union CellInfo */
8678a9e02161271505de274db0c3a88087056dd5dfcWink Saville  int               registered;     /* !0 if this cell is registered 0 if not registered */
8688a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_TimeStampType timeStampType;  /* type of time stamp represented by timeStamp */
8698a9e02161271505de274db0c3a88087056dd5dfcWink Saville  uint64_t          timeStamp;      /* Time in nanos as returned by ril_nano_time */
8708a9e02161271505de274db0c3a88087056dd5dfcWink Saville  union {
8718a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoGsm     gsm;
8728a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoCdma    cdma;
8738a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoLte     lte;
874c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    RIL_CellInfoWcdma   wcdma;
8758a9e02161271505de274db0c3a88087056dd5dfcWink Saville  } CellInfo;
8768a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfo;
8778a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
8791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
8801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
8811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
8821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
8831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
8841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
8851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
8861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
8871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
8881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
8891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
8901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
8911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
8921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
8941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
8951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
8961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
8971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
8981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
8991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
9001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
9011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
904a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
9051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
9061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
9081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
9091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
9101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
9111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
914a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
9151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
9161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
9171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
9181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
9191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
9201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
9221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
9231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
9241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
9251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
9261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
9271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
9281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
9291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
9301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
9311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
9341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
9351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
9361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
9371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
9391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
9411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
9421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
9431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
9441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
9451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
9471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
9491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
9501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
9521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
9541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
9551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
9561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
9601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
9621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
9631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
9641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
9661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
9671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
9691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
9701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
9721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
9731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
9751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
9761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
9781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
9791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
9811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
9821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
9831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
9841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
9861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
9881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
9891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
9901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
9911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9928a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/* See RIL_REQUEST_NV_READ_ITEM */
9938a4a233bb9503eddee83569e647c25099a8e15b3Jake Hambytypedef struct {
9948a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby  RIL_NV_Item itemID;
9958a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby} RIL_NV_ReadItem;
9968a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
9978a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/* See RIL_REQUEST_NV_WRITE_ITEM */
9988a4a233bb9503eddee83569e647c25099a8e15b3Jake Hambytypedef struct {
9998a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby  RIL_NV_Item   itemID;
10008a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby  char *        value;
10018a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby} RIL_NV_WriteItem;
10028a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
10037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
100400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
10077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1010fd7293711394c422711ff07d15a357955ff2194fWink Saville * "response" is const RIL_CardStatus_v6 *
101100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
101300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
101700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
101800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
101900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1020309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
1024c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1026593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1027593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
103400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
103500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
103600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
103800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
104000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
104100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
104200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
104400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
104600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
104700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1048c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1050593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1051593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
105600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
105700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
105800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
105900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
106000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
106100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
106200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
106300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
106400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
106500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
106600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
1072c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1074593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1075593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
107600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
10787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
108200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
108800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
109300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
109400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1095c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1097593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1098593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
111800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1119c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1121593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1122593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
11317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
113900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
114400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1145c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1147593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1148593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
115500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
11577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
116100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
116200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1170593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1171593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
118000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
11857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
118600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
11927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
119300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
11947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
119800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
120200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
12047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
12117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
121300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
121600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
121700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
121800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
122100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
122300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
122500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
12262bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Only valid when radio state is "RADIO_STATE_ON"
122700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1228c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1229c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
123100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
123400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
123500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
123600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
123700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
123800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
123900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
124100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
124200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
124400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
124606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
124706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
12487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1249f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
125200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
125500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
125600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
125900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
126000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
126500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
126706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
126806bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
126900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
127400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
127500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
127600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
127900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
128000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128506bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
128606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
128706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
128900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
129400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
129600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
129900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
130300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
130700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
131200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
131500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
132200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
132400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
133200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
134100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
135500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
135900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
13661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
136703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
136803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
136903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
137234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
137334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
137500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1384f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
138800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
13961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
13971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
14043d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1406c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1412f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
14131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
14141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1415f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
14161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
14171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1418f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1419f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1420f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
14217f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
14227f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14237f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
14247f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14257f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
14267f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14277f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
14287f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
14297f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
14301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
14311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
14321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
14331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
14341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
14351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
14361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
14371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
14381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
14394380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
14404380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
14411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
14421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
144329be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
14441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
14451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
144636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
144736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
144836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
144936b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
14504380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
14511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
14521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
145336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
145436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
145536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
145636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
14574380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
14581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
14591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
14601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
14611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
14621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
14631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
14641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
14651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
14661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
146703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
14681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
14691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
147003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
14711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
14721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
147303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
14741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
14751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
14761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1477602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1478602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1479602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1480602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1481602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1482602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1483602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1484602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1485602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1486602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1487602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1488602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
148929be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1490c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1491c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1492c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1493c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1494c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1495c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1496c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1497c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1498c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1499c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1500c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1501c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1502c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1503c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1504c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1505c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1506c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1507c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1508c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1509c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1510c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1511c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1512c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1513ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1514ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1515ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1516ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
15171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
15181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
151900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
15221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
15231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
15241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
152900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1530c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
153200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1533c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1535c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
153800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
15393a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
154000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
15424380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
15434380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1544c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1545c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1546c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1547c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1548c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1549c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1550c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1551c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1552c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1553c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1554c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1555c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1556c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1558ae67953e93218859806918f20175693015fd8eccWink Saville * The values at offsets 6..10 are optional LTE location information in decimal.
1559ae67953e93218859806918f20175693015fd8eccWink Saville * If a value is unknown that value may be NULL. If all values are NULL,
1560ae67953e93218859806918f20175693015fd8eccWink Saville * none need to be present.
1561ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[6] is TAC, a 16-bit Tracking Area Code.
1562ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[7] is CID, a 0-503 Physical Cell Identifier.
1563ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[8] is ECI, a 28-bit E-UTRAN Cell Identifier.
1564ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[9] is CSGID, a 27-bit Closed Subscriber Group Identity.
1565ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[10] is TADV, a 6-bit timing advance value.
1566ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
15707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
15717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
157300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1579c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
15887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
15957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
160729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * If the radio is is turned off/on the radio modem subsystem
160829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is expected return to an initialized state. For instance,
160929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * any voice and data calls will be terminated and all associated
161029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * lists emptied.
161129487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1637602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
16397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
16557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
16687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1675602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
16857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
168700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
168800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
17007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
170800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
171000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1714f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Setup a packet data connection. If RIL_Data_Call_Response_v6.status
171729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * return success it is added to the list of data calls and a
171829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is sent. The call remains in the
171929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * list until RIL_REQUEST_DEACTIVATE_DATA_CALL is issued or the
172029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * radio is powered off/on. This list is returned by RIL_REQUEST_DATA_CALL_LIST
172129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED.
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
17244380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
17254380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
17264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
17274380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
17284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
17294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
17304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1731c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
17324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
17334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
173400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1735c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1736c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1737602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
17387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1739f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1740f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1741f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1742920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1743920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1744920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1745920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1746920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1747c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1748c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
17494f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1750c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1752c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
17553d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
17574380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1758c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1759c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
17604380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
17614380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
17624380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
17634380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1765f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1778fd7293711394c422711ff07d15a357955ff2194fWink Saville * "data" is a const RIL_SIM_IO_v6 *
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1819602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
18297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
18387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
18437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
18857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
19057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
194900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
195900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
19627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1965b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1967b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1969b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1970b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1971b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1972b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1986f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1990f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2005f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2009f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2045f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Deactivate packet data connection and remove from the
204829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * data call list if SUCCESS is returned. Any other return
204929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * values should also try to remove the call from the list,
205029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * but that may not be possible. In any event a
205129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_RADIO_POWER off/on must clear the list. An
205229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is not expected to be
205329487ef2685e5ee38f0348ab031cb96a608296baWink Saville * issued because of an RIL_REQUEST_DEACTIVATE_DATA_CALL.
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
2056f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
2057d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
2058d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
2059d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
20607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2068f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
20787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
2083c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2084fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2085fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
20897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
20917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
209200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
2115c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2116fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2117fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2119593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
2120593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
212900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
216300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
216600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
216700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
217000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
217300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
217400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
217600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
217800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
217900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
21867553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21897553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
21907553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
21917553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
21927553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
21937553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
220100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
220300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
220400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
220600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
221000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
22117553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22147553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
22157553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
22167553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
22177553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
22187553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
222000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
222400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
22337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
225300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
22557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
22567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
22607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
22647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
226800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
22787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
22817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
229000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
22967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
22997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
23127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
23207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
23217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2322f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2323f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
23817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
23837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
239200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2394c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2395c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
23967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
23977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2398f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2399f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
240000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
240600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
24087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
24094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
241000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
241200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
241500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
241600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
241700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2419c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2420c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
24217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
242200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2423f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
242400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2426f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
242700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Returns the data call list. An entry is added when a
242929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_SETUP_DATA_CALL is issued and removed on a
243029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL. The list is emptied
243129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * when RIL_REQUEST_RADIO_POWER off/on is issued.
243200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2434c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
243500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
243600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
24377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
243800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
243900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
244029487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
244129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * See also: RIL_UNSOL_DATA_CALL_LIST_CHANGED
244200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
244300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2444f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
244600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2447f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
245000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
245100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2453f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2454f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
245600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
245700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
24597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
246000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
246100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2462f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
246300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
246400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
246500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
246600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
246700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
246800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
246900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
247100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
247200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
24787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
247900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
248000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
24827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
248300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
248400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
248500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
248700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
248800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
248900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
249000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
249600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
249700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
250000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
25107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
25117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
251300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
251400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
251700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
252100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
252200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
252300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2526432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2527432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2528432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
253900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
254000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
254100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
254200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
256000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
256600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
257200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
257700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
257800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
257900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
258100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
258200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
258300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
258400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
258500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
258700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
258900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
259000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
259200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
259500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
259600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
259700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
259800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
259900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
260000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
260100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
260200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
260400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
260600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
260700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
260800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
260900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
261000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
261100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2612f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2613f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2614f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2615f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2616f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2617f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2618f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2620f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2621f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2622f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2623f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2624f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
262500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
262700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
262900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
263000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
263100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
263200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
263300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
263400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
263500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
263600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
263700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
263900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
264100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
264300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
264400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
264500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
264600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
264700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
264800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
264900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
265000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
265100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2652f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2653f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2654f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2655f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2656f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2657f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2658f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2659f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2660f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2661f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2662f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2663f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2664f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
266500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
266600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
266700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
266800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
266900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
267000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
267200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
267300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
267400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
267500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
267600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
267700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
267900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
268000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
268100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
268300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
268500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
268600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
268800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
268900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
269000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
269100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
269200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
269300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
269400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
269500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
269600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
269700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
269800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
269900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
270100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
270200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
270400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
270600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
270700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
270800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
270900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
271000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
271100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
271200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
271300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
271400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
271500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
271600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
271700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
271800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
271900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
272000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
272200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
272300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
272400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
272600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
272700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
272800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
272900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
273000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
273100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
273200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
273300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
273400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
273600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
273700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
273900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
274000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
274200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
274400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
274500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
274600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
274700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
274800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
274900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
275000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
275100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
275200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
275400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
275500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
275600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
275700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
275900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
276000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
276100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
276300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
276500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
276600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
276700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
276800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
276900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
277000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
277100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
277200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
277300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
27757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
277600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
277700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
277800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
27807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
278100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
278200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
278300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
278400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
278500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
278600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
278700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
278800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
279000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
279100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2792c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
279300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
279500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2797f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2798f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2800f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
280100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
280200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
280300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
280400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
280500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
280600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
280700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
280800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
280900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
281100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2813c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
281400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
281500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
281600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
281700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
281800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
281900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
282100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
282200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
282300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
282400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
282500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
282600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
282800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
283000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
283100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
283200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
283300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
283400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
283500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
283600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
283700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
283800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
283900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
284000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
28413d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
284200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2843432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2844432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
284500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
284700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
284800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
285000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
285100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
285200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
285300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
28543d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
285500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
285600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
285700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
285800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
285900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
286000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
286100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
286200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
286300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2864f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2865c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
28667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2867f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2868f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2869f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2870f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2871c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
2872f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2873f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2874f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2878f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2880f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2881c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2882c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
2883f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2884c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
2885f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2886f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2887f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
28887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2889f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2890f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2891f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2892f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2893f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2894f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
28957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2896f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
28977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2898f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2899f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2900f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2902f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2903f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2904f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2905f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2906f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
29077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2908f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2909f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2910f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2912f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2913f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2914f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2915f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
29167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2917f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2919f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2920f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2921f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2922f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2923f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2924f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2925f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2926f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2927f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
29287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2929f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2930f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2931f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2932f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
29331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
29341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
29351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
29367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2937f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2939f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2940f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2941f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2942f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2943f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2944f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2945f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2946f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2947f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
29487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2949f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2950f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2953f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2954f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
29551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
29561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
29571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2958f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2959f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2961f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2962f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2963f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2964f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2965f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2966f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2967f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2968f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2969f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2970f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2971f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2972f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2974f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2976f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
29777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2980f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2981f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2982f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2983f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2984f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2985f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2986f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2987f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2988f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
29897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2990f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2991f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
29937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2994f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2996f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
29977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
29997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3001f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3002f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3003f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3004f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3005f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
3006f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3007f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3008f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
3009f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
3011f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3012f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
3013f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
30147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3015f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3017f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3018f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3019f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3020f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3021f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3022f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3023f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
3024f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3025f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3026f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
3027f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3028f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
3029f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3030602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
3031602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
3032602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
3033602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
3034602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
3035602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
30367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3037f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3039f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3040f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3041f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3042f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3043f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3044f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3045f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
3046f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3047f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
304803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
3049f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
305003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
305103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
305203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
3053f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3054f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
305503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
305603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
305703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
305803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
305903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
30607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3061f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3063f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3064f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3065f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3066f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3067f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3068f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
306903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
3070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3071f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3072f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
3073f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3074f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
3075f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3076f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
30777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3078f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
30797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3080bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
3081bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
3082bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
3083bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
3084bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
3085bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
3086f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3087f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3088f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
30891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
3090f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3091f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
3094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3096f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
3097f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3098f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
3099f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
3100f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3101f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
31027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3103f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
31047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3105f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3106f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3107f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3108f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3109f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3110f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3111f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
3112f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3113f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3114a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
3115a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3116a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
3117f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3118f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3119a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3120a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
3121a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
3122a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3123f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3124f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3125f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3126f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3127f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3128f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3129a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
3130f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3132a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
3133f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3134f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
3135f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3136a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
3137a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
3138a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3139f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3140a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3141f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3142f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3143f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3144f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3145f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3146f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3147a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
3148f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3149f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3150a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
3151f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3152a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
3153f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3154f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3155f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3156f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
3157f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3158a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3159f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3160a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3161f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3162f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3163f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3164f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3165f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3166f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3167a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
3168f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3169f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3170a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
3171f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3172f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
3173f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3174f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3175a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3176a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
3177a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
3178a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3179f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3180f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3181f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3182f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3183f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3184f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3185a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
3186f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3187f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3188a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
3189f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3190f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
3191f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3192a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
3193a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
3194a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3195f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3196a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3197f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3198f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3199f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3200f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3201f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3202f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3203a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
3204f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3205f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3206a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
3207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
3209f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3210f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3211f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3212f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
3213f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3214a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3215f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3216a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3217f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3218f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3219f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3220f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3221f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3222f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3223a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
3224f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3225f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3226f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
3227f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3228f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
3229f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3230f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
3231f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
3232f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
3233f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3234f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
3235f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3236f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3237f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3238f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
323929be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
324029be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
324129be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
324229be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
32431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
3244d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
3245f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3246f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3247f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3248f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
3249f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3250f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3251eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
3252f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3253f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3254f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
3255f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3256f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
3257f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3258f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3259f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3260f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3261f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3262f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3263f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3264f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3265f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3266f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3267f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3268f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3269eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3270f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3271f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3272f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3273f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3274f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3275f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3276f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3277f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3278f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3279f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3280f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3281f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3282f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3283f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3284f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3285f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3286f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3287eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3288f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3289f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3290f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3291eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3292eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3293eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3294f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3295eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3296f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3297eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3298eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3299f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3300eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3301eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3302f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3303eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3304f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3305eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3306eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3307eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3308eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3309eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3310f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3311f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3312f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3313f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3314f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3315eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3316f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
33171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
33181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
33191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
33211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
33221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
33231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
33257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
33261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
33277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
33281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
33291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
33301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
33311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
33321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3335f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3336000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3337000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3338000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3339000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3340000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3341000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3342000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3343000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3344000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3345000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3346000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3347000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3348000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3349000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3350000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3351000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3352000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3353000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3354000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3355000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3356000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3357000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3358000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3359000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3360000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3361000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3362000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3363000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3364000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3365000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3366000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3367000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3368000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3369000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3370b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3371b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3372b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3373b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3374b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3375b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3376b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3377b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3378b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3379b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3380b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3381b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3382b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3383b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3384b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3385b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3386b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3387b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3388b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
33892641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
33902641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
33912641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33922641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
33932641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
33942641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33952641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
33962641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
33972641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
33982641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
33992641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
34002641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
34012641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
34022641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
34032641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
34042641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
34052641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3406c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3407c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3408c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3409c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3410c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3411c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3412c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3413c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3414c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3415c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3416c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3417c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3418c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3419c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3420c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3421c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3422c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3423c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3424c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3425c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3426c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3427fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby/**
3428fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * RIL_REQUEST_ISIM_AUTHENTICATION
3429fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3430fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Request the ISIM application on the UICC to perform AKA
3431fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * challenge/response algorithm for IMS authentication
3432fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3433fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "data" is a const char * containing the challenge string in Base64 format
3434fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "response" is a const char * containing the response in Base64 format
3435fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3436fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Valid errors:
3437fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  SUCCESS
3438fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  RADIO_NOT_AVAILABLE
3439fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  GENERIC_FAILURE
3440fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby */
3441fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby#define RIL_REQUEST_ISIM_AUTHENTICATION 105
3442fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby
3443300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3444300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU
3445300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3446300105d1487f5238940c18792b879793826b61f4Jake Hamby * Acknowledge successful or failed receipt of SMS previously indicated
3447300105d1487f5238940c18792b879793826b61f4Jake Hamby * via RIL_UNSOL_RESPONSE_NEW_SMS, including acknowledgement TPDU to send
3448300105d1487f5238940c18792b879793826b61f4Jake Hamby * as the RP-User-Data element of the RP-ACK or RP-ERROR PDU.
3449300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3450300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is const char **
3451300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[0] is "1" on successful receipt (send RP-ACK)
3452300105d1487f5238940c18792b879793826b61f4Jake Hamby *                          is "0" on failed receipt (send RP-ERROR)
3453300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[1] is the acknowledgement TPDU in hexadecimal format
3454300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3455300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is NULL
3456300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3457300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3458300105d1487f5238940c18792b879793826b61f4Jake Hamby *  SUCCESS
3459300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RADIO_NOT_AVAILABLE
3460300105d1487f5238940c18792b879793826b61f4Jake Hamby *  GENERIC_FAILURE
3461300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3462300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU 106
3463300105d1487f5238940c18792b879793826b61f4Jake Hamby
3464300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3465300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS
3466300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3467300105d1487f5238940c18792b879793826b61f4Jake Hamby * Requests to send a SAT/USAT envelope command to SIM.
3468300105d1487f5238940c18792b879793826b61f4Jake Hamby * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111.
3469300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3470300105d1487f5238940c18792b879793826b61f4Jake Hamby * This request has one difference from RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND:
3471300105d1487f5238940c18792b879793826b61f4Jake Hamby * the SW1 and SW2 status bytes from the UICC response are returned along with
3472300105d1487f5238940c18792b879793826b61f4Jake Hamby * the response data, using the same structure as RIL_REQUEST_SIM_IO.
3473300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3474300105d1487f5238940c18792b879793826b61f4Jake Hamby * The RIL implementation shall perform the normal processing of a '91XX'
3475300105d1487f5238940c18792b879793826b61f4Jake Hamby * response in SW1/SW2 to retrieve the pending proactive command and send it
3476300105d1487f5238940c18792b879793826b61f4Jake Hamby * as an unsolicited response, as RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND does.
3477300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3478300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is a const char * containing the SAT/USAT command
3479300105d1487f5238940c18792b879793826b61f4Jake Hamby * in hexadecimal format starting with command tag
3480300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3481300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is a const RIL_SIM_IO_Response *
3482300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3483300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3484300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_SUCCESS
3485300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
3486300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_GENERIC_FAILURE
3487300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3488300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS 107
3489300105d1487f5238940c18792b879793826b61f4Jake Hamby
34902bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
34912bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_REQUEST_VOICE_RADIO_TECH
34922bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34932bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
34942bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * when radio state is RADIO_STATE_ON
34952bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
34962bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is NULL
34972bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "response" is int *
34982bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *) response)[0] is of type const RIL_RadioTechnology
34992bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
35002bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Valid errors:
35012bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  SUCCESS
35022bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  RADIO_NOT_AVAILABLE
35032bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  GENERIC_FAILURE
35042bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
35052bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_REQUEST_VOICE_RADIO_TECH 108
35062bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
35078a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
35088a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_GET_CELL_INFO_LIST
35098a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35108a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Request all of the current cell information known to the radio. The radio
35118a9e02161271505de274db0c3a88087056dd5dfcWink Saville * must a list of all current cells, including the neighboring cells. If for a particular
35128a9e02161271505de274db0c3a88087056dd5dfcWink Saville * cell information isn't known then the appropriate unknown value will be returned.
35138a9e02161271505de274db0c3a88087056dd5dfcWink Saville * This does not cause or change the rate of RIL_UNSOL_CELL_INFO_LIST.
35148a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35158a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
35168a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35178a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of  RIL_CellInfo.
35188a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
35198a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_GET_CELL_INFO_LIST 109
35208a9e02161271505de274db0c3a88087056dd5dfcWink Saville
35218a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
35228a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE
35238a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35248a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Sets the minimum time between when RIL_UNSOL_CELL_INFO_LIST should be invoked.
3525c57b3eb525db241bd3e6092453f48388bc880447Wink Saville * A value of 0, means invoke RIL_UNSOL_CELL_INFO_LIST when any of the reported
35268a9e02161271505de274db0c3a88087056dd5dfcWink Saville * information changes. Setting the value to INT_MAX(0x7fffffff) means never issue
35278a9e02161271505de274db0c3a88087056dd5dfcWink Saville * a RIL_UNSOL_CELL_INFO_LIST.
35288a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35298a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is int *
35308a9e02161271505de274db0c3a88087056dd5dfcWink Saville * ((int *)data)[0] is minimum time in milliseconds
35318a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35328a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is NULL
35338a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
35348a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Valid errors:
35358a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  SUCCESS
35368a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  RADIO_NOT_AVAILABLE
35378a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  GENERIC_FAILURE
35388a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
35398a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE 110
3540300105d1487f5238940c18792b879793826b61f4Jake Hamby
354175697538e485ea2981960dcd4878bfdd032731acSungmin Choi/**
354275697538e485ea2981960dcd4878bfdd032731acSungmin Choi * RIL_REQUEST_SET_INITIAL_ATTACH_APN
354375697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
354475697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Set an apn to initial attach network
354575697538e485ea2981960dcd4878bfdd032731acSungmin Choi * "response" is NULL
354675697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
354775697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Valid errors:
354875697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUCCESS
354975697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  RADIO_NOT_AVAILABLE (radio resetting)
355075697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  GENERIC_FAILURE
355175697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUBSCRIPTION_NOT_AVAILABLE
355275697538e485ea2981960dcd4878bfdd032731acSungmin Choi */
355375697538e485ea2981960dcd4878bfdd032731acSungmin Choi#define RIL_REQUEST_SET_INITIAL_ATTACH_APN 111
355475697538e485ea2981960dcd4878bfdd032731acSungmin Choi
3555a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3556a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_REGISTRATION_STATE
3557a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3558a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Request current IMS registration state
3559a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3560a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is NULL
3561a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3562a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is int *
3563a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[0] is registration state:
3564a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              0 - Not registered
3565a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              1 - Registered
3566a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3567865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * If ((int*)response)[0] is = 1, then ((int *) response)[1]
3568a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * must follow with IMS SMS format:
3569a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3570865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * ((int *) response)[1] is of type RIL_RadioTechnologyFamily
3571865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *
3572865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * Valid errors:
3573865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  SUCCESS
3574865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  RADIO_NOT_AVAILABLE
3575865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  GENERIC_FAILURE
3576a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3577a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_REGISTRATION_STATE 112
3578a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
3579a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3580a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_SEND_SMS
3581a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3582a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Send a SMS message over IMS
3583a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3584a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is const RIL_IMS_SMS_Message *
3585a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3586a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is a const RIL_SMS_Response *
3587a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3588a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Based on the return error, caller decides to resend if sending sms
3589a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
3590a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * In case of retry, data is encoded based on Voice Technology available.
3591a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3592a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Valid errors:
3593a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SUCCESS
3594a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  RADIO_NOT_AVAILABLE
3595a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SMS_SEND_FAIL_RETRY
3596a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  FDN_CHECK_FAILURE
3597a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  GENERIC_FAILURE
3598a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3599a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3600a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_SEND_SMS 113
3601a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
36022458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36032458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC
36042458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36052458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Request APDU exchange on the basic channel. This command reflects TS 27.007
36062458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "generic SIM access" operation (+CSIM). The modem must ensure proper function
36072458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * of GSM/CDMA, and filter commands appropriately. It should filter
36082458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * channel management and SELECT by DF name commands.
36092458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36102458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is a const RIL_SIM_APDU *
36112458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "sessionid" field should be ignored.
36122458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36132458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is a const RIL_SIM_IO_Response *
36142458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36152458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36162458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36172458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36182458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36192458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36202458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC 114
36212458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36222458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36232458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_OPEN_CHANNEL
36242458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36252458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Open a new logical channel and select the given application. This command
36262458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * reflects TS 27.007 "open logical channel" operation (+CCHO).
36272458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36282458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is const char * and set to AID value, See ETSI 102.221 and 101.220.
36292458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36302458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is int *
36312458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * ((int *)data)[0] contains the session id of the logical channel.
36322458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36332458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36342458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36352458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36362458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36372458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  MISSING_RESOURCE
36382458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  NO_SUCH_ELEMENT
36392458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36402458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_OPEN_CHANNEL 115
36412458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36422458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36432458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_CLOSE_CHANNEL
36442458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36452458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Close a previously opened logical channel. This command reflects TS 27.007
36462458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "close logical channel" operation (+CCHC).
36472458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36482458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is int *
36492458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * ((int *)data)[0] is the session id of logical the channel to close.
36502458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36512458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is NULL
36522458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36532458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36542458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36552458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36562458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36572458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36582458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_CLOSE_CHANNEL 116
36592458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36602458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
36612458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL
36622458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36632458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Exchange APDUs with a UICC over a previously opened logical channel. This
36642458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * command reflects TS 27.007 "generic logical channel access" operation
36652458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * (+CGLA). The modem should filter channel management and SELECT by DF name
36662458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * commands.
36672458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36682458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is a const RIL_SIM_APDU*
36692458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36702458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is a const RIL_SIM_IO_Response *
36712458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
36722458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
36732458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
36742458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
36752458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
36762458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
36772458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL 117
36782458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
36798a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
36808a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_READ_ITEM
36818a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
36828a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Read one of the radio NV items defined in RadioNVItems.java / ril_nv_items.h.
36838a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
36848a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
36858a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is a const RIL_NV_ReadItem *
36868a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
36878a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is const char * containing the contents of the NV item
36888a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
36898a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
36908a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
36918a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
36928a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
36938a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
36948a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_READ_ITEM 118
36958a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
36968a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
36978a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_WRITE_ITEM
36988a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
36998a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Write one of the radio NV items defined in RadioNVItems.java / ril_nv_items.h.
37008a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
37018a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37028a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is a const RIL_NV_WriteItem *
37038a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37048a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is NULL
37058a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37068a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
37078a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
37088a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
37098a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
37108a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
37118a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_WRITE_ITEM 119
37128a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
37138a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
37148a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_WRITE_CDMA_PRL
37158a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37168a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Update the CDMA Preferred Roaming List (PRL) in the radio NV storage.
37178a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
37188a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37198a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is a const char * containing the PRL as a byte array
37208a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37218a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is NULL
37228a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37238a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
37248a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
37258a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
37268a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
37278a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
37288a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_WRITE_CDMA_PRL 120
37298a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
37308a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
37318a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_RESET_CONFIG
37328a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37338a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Reset the radio NV configuration to the factory state.
37348a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
37358a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37368a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is int *
3737d27c9d58a9fc1571427e903dcd3a8d048f083535Jake Hamby * ((int *)data)[0] is 1 to reload all NV items
3738d27c9d58a9fc1571427e903dcd3a8d048f083535Jake Hamby * ((int *)data)[0] is 2 for erase NV reset (SCRTN)
3739d27c9d58a9fc1571427e903dcd3a8d048f083535Jake Hamby * ((int *)data)[0] is 3 for factory reset (RTN)
37408a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37418a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is NULL
37428a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
37438a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
37448a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
37458a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
37468a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
37478a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
37488a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_RESET_CONFIG 121
37498a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
37502458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
375100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
375200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3753f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
375400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
375500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
375600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
375700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
375800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
375900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
376000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
376100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
376200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
376300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
376400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
376500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
376700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
376900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
377000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
377100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
377300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
377500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
377600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
377700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
377900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
378000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
378100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
378200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
378300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
378400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
378500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
378600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
378700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3788c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
378900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3790c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
379100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
379300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3794c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
379500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
379600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
379800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
379900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
380000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
380100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3802c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
380300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
380400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
380500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
380600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
380700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
38087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
380900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
381000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
381100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
381200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
381300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
381400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
381500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
381600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
381800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
381900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
382000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
382100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
382300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
382400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
382500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
382600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
382700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
38287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
382900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
383000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
383100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
383200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
383300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
383400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
383500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
383600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
383800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
383900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
384000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
384100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
384300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
384400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
384500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
384600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
384700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
38487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
384900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
385000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
385100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
385200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
385300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
385400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
385500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
385600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
385700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
385800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
385900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
386000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
386100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
38627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
386300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
386400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
386500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
386600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
386700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
386800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
386900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
387000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
387100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
387200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
387300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
387400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
387500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
387600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
387700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
387800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
387900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
388000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
388100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
388200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
388300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
388400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
38857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
388600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
388700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
388800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
388900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
389000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
389100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
389200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
389300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
389400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
389500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
389600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
389700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
389800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
389900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
390000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
390100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
390200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
390400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
390500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
390600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
390700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
390800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3909f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
391000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3911c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
391229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST. It is the complete list
391329487ef2685e5ee38f0348ab031cb96a608296baWink Saville * of current data contexts including new contexts that have been
391429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * activated. A data call is only removed from this list when the
391529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * framework sends a RIL_REQUEST_DEACTIVATE_DATA_CALL or the radio
391629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is powered off/on.
391700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3918f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
391900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
392000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3921f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
392200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
392300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
392400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
392500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
392600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
392700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
392800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
392900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
393000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
393100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
393200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
393300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
393400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
393500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
393600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
393700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
393800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
393900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
394000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
394100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
394200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
394300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
394400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
394500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
394600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
394700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
394800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
394900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
395000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
395100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
395200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
395300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
395400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
395500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
395600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
395700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
395800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
395900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
396000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
396100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
396200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
396300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
396400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
396500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
396600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
396700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
396800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
396900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
397000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
397100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
397200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
397300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
397400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
397500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
397600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
397700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
397800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
397900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
398000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
398100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
398200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
398300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
398400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
398500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
398600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
398700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
398800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
398900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
399000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
399100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
399200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
399300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
399400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
399500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
399600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
399745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 6 or older:
399800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
399900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
400000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
400145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * SIM_FILE_UPDATE or NULL for any other result.
400245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *
400345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 7:
400445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * "data" is a RIL_SimRefreshResponse_v7 *
400500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
40062bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Note: If the SIM state changes as a result of the SIM refresh (eg,
40072bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
400800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
400900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
401000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
401100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
401200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
401300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
401400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
401500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
40166453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
40176453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
40186453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
40196453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
40206453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
40216453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
40226453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
40236453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
40246453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
402500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
40263d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
40273d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
402800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
402900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
403000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
403134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
403234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
403334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
403434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
40353d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
403634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
4037f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
403834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
403934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
404034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
404134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
404234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
404334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
404434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
404534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
40463d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
404734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
40483d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
404934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
405034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
40513d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
405234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
405334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
40543d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
405534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
405634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
405734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
405834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
405934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
406034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
406134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
40627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
40630eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
40640eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
40650eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
40660eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
40670eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
40680eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
40690eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
4070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
407134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
407234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
4073f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
407434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
407534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
407634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
407734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
407834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
407934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
408034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
4081f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
408234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
4083f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
4084f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
408534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
408634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
408734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
408834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
408934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
409034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
409134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
409234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
409334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
409434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
409534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
409634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
40971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
40981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
40991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
41011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
41021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
41041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
41061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
41071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
41081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
41091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
41101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
41121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
41147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
41151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
41161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
411734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
41181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
41191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
41201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
41221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
41231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
41251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
41261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
41271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
41291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
41301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
41311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
41321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
41331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
41351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
41371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
41381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
41391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
414034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
4141af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
4142af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
4143af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
4144af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
4145af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
4146af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
4147af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
4148af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
4149af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
41505d621da539abea83309d77317ede40126f47d5f0John Wang/**
41515d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
41525d621da539abea83309d77317ede40126f47d5f0John Wang *
41535d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
41545d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
41555d621da539abea83309d77317ede40126f47d5f0John Wang *
41565d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
41575d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
41585d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
41595d621da539abea83309d77317ede40126f47d5f0John Wang */
41605d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
41615d621da539abea83309d77317ede40126f47d5f0John Wang
41625909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
41635909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
41645909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
41655909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
41665909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
41675909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
41685909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
41695909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
41705909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
41715909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
41725909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
4173c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4174c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4175c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
4176c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4177c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
4178c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4179c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4180c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
4181c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
418229487ef2685e5ee38f0348ab031cb96a608296baWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED 1031
4183c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4184c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4185c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
4186c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4187c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
4188c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4189c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4190c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
4191c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4192c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
4193c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4194c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4195c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
4196c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4197c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
4198c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4199c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
4200c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
4201c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4202c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
4203c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4204c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4205c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
4206c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
42075b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville/**
42085b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * RIL_UNSOL_RIL_CONNECTED
42095b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
42105b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * Called the ril connects and returns the version
42115b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
42125b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * "data" is int *
42135b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * ((int *)data)[0] is RIL_VERSION
42145b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville */
42155b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville#define RIL_UNSOL_RIL_CONNECTED 1034
42165b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville
42172bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
42182bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_UNSOL_VOICE_RADIO_TECH_CHANGED
42192bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
42202bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Indicates that voice technology has changed. Contains new radio technology
42212bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * as a data in the message.
42222bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
42232bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is int *
42242bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *)data)[0] is of type const RIL_RadioTechnology
42252bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
42262bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
42272bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_UNSOL_VOICE_RADIO_TECH_CHANGED 1035
42282bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
42298a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
42308a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_UNSOL_CELL_INFO_LIST
42318a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
42328a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Same information as returned by RIL_REQUEST_GET_CELL_INFO_LIST, but returned
42338a9e02161271505de274db0c3a88087056dd5dfcWink Saville * at the rate no greater than specified by RIL_REQUEST_SET_UNSOL_CELL_INFO_RATE.
42348a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
42358a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
42368a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
42378a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of RIL_CellInfo.
42388a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
42398a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_UNSOL_CELL_INFO_LIST 1036
42402bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
4241865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville/**
4242a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED
4243a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4244a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Called when IMS registration state has changed
4245a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4246865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * To get IMS registration state and IMS SMS format, callee needs to invoke the
4247865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * following request on main thread:
4248a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4249865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * RIL_REQUEST_IMS_REGISTRATION_STATE
4250865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *
4251865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * "data" is NULL
4252a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4253a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
4254a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED 1037
4255a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
425600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
425700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
425800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
425900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
426000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
426100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
426200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
426300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
426400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
426500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
426600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
426700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
426800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
42697f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
427000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
427100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
427200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
427300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
427400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
427500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
427600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
427700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
427800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
427900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
428000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
428100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
428200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
428300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
428400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
428500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
428600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
42877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
428800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
428900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
42907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
429100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
429200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
429300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
429500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
429600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
429700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
429900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
430100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
430200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
430300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
430400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
430500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
430600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
430700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
430800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
430900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
431000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
431100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
431200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
431300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
431400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
431500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
431600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
431700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
431800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
431900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
432000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
432100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
432200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
432300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
432475697538e485ea2981960dcd4878bfdd032731acSungmin Choitypedef struct {
432575697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *apn;
432675697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *protocol;
432775697538e485ea2981960dcd4878bfdd032731acSungmin Choi    int authtype;
432875697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *username;
432975697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *password;
433075697538e485ea2981960dcd4878bfdd032731acSungmin Choi} RIL_InitialAttachApn;
433175697538e485ea2981960dcd4878bfdd032731acSungmin Choi
433200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
433300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
433400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
433500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
433600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
433700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
433800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
433900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
43407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
434100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
434200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
434300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
434400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
43457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
434600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
434700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
434800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
434900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
435000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
435100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
435200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
435300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
435400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
43557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
435600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
435700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
435800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
43597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
436000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
436100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
436200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
436300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
436400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
436500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
43660d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
43677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
436800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
436900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
437000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
43717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
43727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
437300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
437400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
437500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
437600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
437700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
437800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
437900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
438000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
438100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
438200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
438300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
438400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
438500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
438600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
438700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
438800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
438900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
439000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
439100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
439200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
439300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
439400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
439500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
439600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
439700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
43983d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
439900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
440000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
440100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
440200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
440300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
440400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
44057f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
440600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
440700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
440800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
440900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
441000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
441100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
441200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
441300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
441400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
44157f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
441600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
441700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
441800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
441900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
44207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
442100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
442200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
442300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
442400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
442500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
442600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
442700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
442800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
442900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
443000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
44310d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
44320d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
443300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
443400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
443500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
443600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
443700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
443800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
443900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
444000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
444100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
4442