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>
24d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#include <telephony/ril_msim.h>
258a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
26f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#ifndef FEATURE_UNIT_TEST
2700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
28f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#endif /* !FEATURE_UNIT_TEST */
2900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
3100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
3200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
3300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
35d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if defined(ANDROID_SIM_COUNT_2)
36d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define SIM_COUNT 2
37d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#elif defined(ANDROID_SIM_COUNT_3)
38d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define SIM_COUNT 3
39d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#elif defined(ANDROID_SIM_COUNT_4)
40d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define SIM_COUNT 4
41d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#else
42d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define SIM_COUNT 1
43d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
44d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
45d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#ifndef ANDROID_MULTI_SIM
46d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define SIM_COUNT 1
47d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
48d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
492458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_VERSION 10     /* Current version */
5045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka#define RIL_VERSION_MIN 6 /* Minimum RIL_VERSION supported */
5100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
52a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
53a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
54a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville
55d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define MAX_RILDS 3
56d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define MAX_SOCKET_NAME_LENGTH 6
57d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define MAX_CLIENT_ID_LENGTH 2
58d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define MAX_DEBUG_SOCKET_NAME_LENGTH 12
59d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define MAX_QEMU_PIPE_NAME_LENGTH  11
60d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
6100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
6200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
6300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
64d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_SOCKET_1,
65d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if (SIM_COUNT >= 2)
66d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_SOCKET_2,
67d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if (SIM_COUNT >= 3)
68d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_SOCKET_3,
69d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
70d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if (SIM_COUNT >= 4)
71d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_SOCKET_4,
72d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
73d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
74d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_SOCKET_NUM
75d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_SOCKET_ID;
76d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
77d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
78d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef enum {
7900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
8000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
8100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
8200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
8300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
8400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
8500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
8600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
8700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
8800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
8900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
9000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
913d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SMS_SEND_FAIL_RETRY = 10,             /* fail to send sms and need retry */
923d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SIM_ABSENT = 11,                      /* fail to set the location where CDMA subscription
933d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                                   shall be retrieved because of SIM or RUIM
94f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   card absent */
953d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SUBSCRIPTION_NOT_AVAILABLE = 12,      /* fail to find CDMA subscription from specified
96f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   location */
97602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_MODE_NOT_SUPPORTED = 13,              /* HW does not support preferred network type */
987553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_FDN_CHECK_FAILURE = 14,               /* command failed because recipient is not on FDN list */
992458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_ILLEGAL_SIM_OR_ME = 15,               /* network selection failed due to
1007553447d44bb3f494b00d573215d81398f61cfcdJohn Wang                                                   illegal SIM or ME */
1012458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_MISSING_RESOURCE = 16,                /* no logical channel available */
1022458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    RIL_E_NO_SUCH_ELEMENT = 17,                 /* application not found on SIM */
10300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
10400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
10500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
10600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
10700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
10800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
10900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
11000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
11100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
11200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
11300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
11400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
115f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
116f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
1172bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    /* States 2-9 below are deprecated. Just leaving them here for backward compatibility. */
118f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
1197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
120f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
121f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
122f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
123f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
1247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
125f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
126f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
1272bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_NV_READY = 9,              /* Radio is on and the NV interface is available */
1282bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_STATE_ON = 10                    /* Radio is on */
12900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
13000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
1314380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef enum {
1324380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UNKNOWN = 0,
1334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_GPRS = 1,
1344380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EDGE = 2,
1354380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_UMTS = 3,
1364380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95A = 4,
1374380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_IS95B = 5,
1384380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_1xRTT =  6,
1394380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_0 = 7,
1404380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_A = 8,
1414380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSDPA = 9,
1424380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSUPA = 10,
1434380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_HSPA = 11,
1444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EVDO_B = 12,
1454380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    RADIO_TECH_EHRPD = 13,
146c941961f4b2660f10352c0f715947a4d086f171dGlenn Kasten    RADIO_TECH_LTE = 14,
1472bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla    RADIO_TECH_HSPAP = 15, // HSPA+
148d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RADIO_TECH_GSM = 16, // Only supports voice
149d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RADIO_TECH_TD_SCDMA = 17
1504380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_RadioTechnology;
1514380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
152c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// Do we want to split Data from Voice and the use
153c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville// RIL_RadioTechnology for get/setPreferredVoice/Data ?
154c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
155c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA                = 0, /* GSM/WCDMA (WCDMA preferred) */
156c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_ONLY                 = 1, /* GSM only */
157c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_WCDMA                    = 2, /* WCDMA  */
158c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_AUTO           = 3, /* GSM/WCDMA (auto mode, according to PRL) */
159c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_EVDO_AUTO           = 4, /* CDMA and EvDo (auto mode, according to PRL) */
160c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_CDMA_ONLY                = 5, /* CDMA only */
161c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_EVDO_ONLY                = 6, /* EvDo only */
162c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_GSM_WCDMA_CDMA_EVDO_AUTO = 7, /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
163c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CDMA_EVDO            = 8, /* LTE, CDMA and EvDo */
164c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_GSM_WCDMA            = 9, /* LTE, GSM/WCDMA */
165c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PREF_NET_TYPE_LTE_CMDA_EVDO_GSM_WCDMA  = 10, /* LTE, CDMA, EvDo, GSM/WCDMA */
1660e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_ONLY                 = 11, /* LTE only */
1670e09487471b09e45b5fc1b1588a600f35157079aUma Maheswari Ramalingam    PREF_NET_TYPE_LTE_WCDMA                = 12  /* LTE/WCDMA */
168c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_PreferredNetworkType;
169c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
170c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Source for cdma subscription */
171c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef enum {
172c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_RUIM_SIM = 0,
173c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville   CDMA_SUBSCRIPTION_SOURCE_NV = 1
174c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CdmaSubscriptionSource;
175c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
17674fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
17774fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
17874fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
17974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
18074fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
18174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
18274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
18374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
18474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
18574fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
18674fa38884320698c1623764850e3131b9769dff0Wink Saville
18774fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
18874fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
18974fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
19074fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
19174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
19274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
19374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
19474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
19574fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
19674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
19774fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
19874fa38884320698c1623764850e3131b9769dff0Wink Saville
19974fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
20074fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
20174fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
20274fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
20374fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
20474fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
20574fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
20674fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
20774fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
20874fa38884320698c1623764850e3131b9769dff0Wink Saville
20974fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
2101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
2111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
2121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
2131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
2141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
2151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
2161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
2171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
2181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
2191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
2201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
2211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
2221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
2231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
2241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
2251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
2261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
2271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
2281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
2291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
2301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
23174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
23200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
23300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_Data_Call_Response_v6 */
23500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
2364380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2384f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2394f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
2404380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          apn;        /* ignored */
241c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          address;    /* An address, e.g., "192.0.1.3" or "2001:db8::1". */
242c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v4;
2434380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
2444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville/*
2454380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * Returned by RIL_REQUEST_SETUP_DATA_CALL, RIL_REQUEST_DATA_CALL_LIST
2464380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED, on error status != 0.
2474380897c6cdc99486a061b819943e3b290ebcf09Wink Saville */
2484380897c6cdc99486a061b819943e3b290ebcf09Wink Savilletypedef struct {
2494380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
250beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
251beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           back-off timer value RIL wants to override the one
252beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           pre-configured in FW.
253beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The unit is miliseconds.
254beb25b58dcb48a2cfa2cfe10f5fb15908ff465f8Kazuhiro Ondo                                           The value < 0 means no value is suggested.
25516157587c02b83a93f4e02f83a934442aa0e3e6aKazuhiro Ondo                                           The value 0 means retry should be done ASAP.
2568a9e02161271505de274db0c3a88087056dd5dfcWink Saville                                           The value of INT_MAX(0x7fffffff) means no retry. */
2574380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             cid;        /* Context ID, uniquely identifies this call */
2584380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
2594380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
2604380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
2614380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
2624380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   such as "IP" or "IPV6" */
2634380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          ifname;     /* The network interface name */
264c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
265c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
2664380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
267c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   one of each. If the prefix length is absent the addresses
268c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   are assumed to be point to point with IPv4 having a prefix
269c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   length of 32 and IPv6 128. */
2704380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    char *          dnses;      /* A space-delimited list of DNS server addresses,
2714380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
2724380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                   May be empty. */
273c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          gateways;   /* A space-delimited list of default gateway addresses,
274c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
275c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   May be empty in which case the addresses represent point
276c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                   to point connections. */
277c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_Data_Call_Response_v6;
27800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
279d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
280d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int             status;     /* A RIL_DataCallFailCause, 0 which is PDP_FAIL_NONE if no error */
281d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int             suggestedRetryTime; /* If status != 0, this fields indicates the suggested retry
282d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                           back-off timer value RIL wants to override the one
283d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                           pre-configured in FW.
284d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                           The unit is miliseconds.
285d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                           The value < 0 means no value is suggested.
286d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                           The value 0 means retry should be done ASAP.
287d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                           The value of INT_MAX(0x7fffffff) means no retry. */
288d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int             cid;        /* Context ID, uniquely identifies this call */
289d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
290d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
291d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". If status is
292d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED this is the type supported
293d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   such as "IP" or "IPV6" */
294d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    char *          ifname;     /* The network interface name */
295d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    char *          addresses;  /* A space-delimited list of addresses with optional "/" prefix length,
296d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   e.g., "192.0.1.3" or "192.0.1.11/16 2001:db8::1/64".
297d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   May not be empty, typically 1 IPv4 or 1 IPv6 or
298d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   one of each. If the prefix length is absent the addresses
299d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   are assumed to be point to point with IPv4 having a prefix
300d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   length of 32 and IPv6 128. */
301d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    char *          dnses;      /* A space-delimited list of DNS server addresses,
302d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
303d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   May be empty. */
304d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    char *          gateways;   /* A space-delimited list of default gateway addresses,
305d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
306d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   May be empty in which case the addresses represent point
307d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                   to point connections. */
308d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    char *          pcscf;    /* the Proxy Call State Control Function address
309d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                 via PCO(Protocol Configuration Option) for IMS client. */
310d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_Data_Call_Response_v9; // FIXME: Change to v10
311d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
312a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef enum {
313a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP = 1, /* 3GPP Technologies - GSM, WCDMA */
314a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RADIO_TECH_3GPP2 = 2 /* 3GPP2 Technologies - CDMA */
315a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_RadioTechnologyFamily;
316a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
317a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowatypedef struct {
318a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    RIL_RadioTechnologyFamily tech;
319a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    unsigned char             retry;       /* 0 == not retry, nonzero == retry */
320a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    int                       messageRef;  /* Valid field if retry is set to nonzero.
321a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              Contains messageRef from RIL_SMS_Response
322a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                              corresponding to failed MO SMS.
323a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa                                            */
324a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
325a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    union {
326a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP2. See RIL_REQUEST_CDMA_SEND_SMS */
327a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        RIL_CDMA_SMS_Message* cdmaMessage;
328a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
329a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        /* Valid field if tech is RADIO_TECH_3GPP. See RIL_REQUEST_SEND_SMS */
330a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa        char**                gsmMessage;
331a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa    } message;
332a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa} RIL_IMS_SMS_Message;
333a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
33400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
3358e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
3368e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
3378e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
33800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
339920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
340920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
341920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
34200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
34500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
34600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
34700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
34800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
34900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
35000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
351f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
352f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
35300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
35400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
35500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
35600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
35700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
35800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
35900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
36000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
36100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
36200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
36300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
36400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
36500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
36674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
36700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
36800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
36900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
37000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
37100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
37200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
37300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
3741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
37500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
37600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
37700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
37800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
37900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
38000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
381c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v5;
382c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
383c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
384c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
385c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int fileid;     /* EF id */
386c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *path;     /* "pathid" from TS 27.007 +CRSM command.
387c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path is in hex asciii format eg "7f205f70"
388c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                       Path must always be provided.
389c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                     */
390c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p1;
391c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p2;
392c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int p3;
393c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *data;     /* May be NULL*/
394c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *pin2;     /* May be NULL*/
395c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *aidPtr;   /* AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value. */
396c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SIM_IO_v6;
39700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3982458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/* Used by RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL and
3992458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC. */
4002458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawaltypedef struct {
4012458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int sessionid;  /* "sessionid" from TS 27.007 +CGLA command. Should be
4022458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal                       ignored for +CSIM command. */
4032458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
4042458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    /* Following fields are used to derive the APDU ("command" and "length"
4052458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal       values in TS 27.007 +CSIM and +CGLA commands). */
4062458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int cla;
4072458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int instruction;
4082458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p1;
4092458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p2;
4102458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    int p3;         /* A negative P3 implies a 4 byte APDU. */
4112458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal    char *data;     /* May be NULL. In hex string format. */
4122458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal} RIL_SIM_APDU;
4132458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
41400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
41500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
41600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
4172875bc2e4108ad927b6d8eafbdafa57b7e08eb8fAmit Mahajan    char *simResponse;  /* In hex string format ([a-fA-F0-9]*), except for SIM_AUTHENTICATION
4182875bc2e4108ad927b6d8eafbdafa57b7e08eb8fAmit Mahajan                           response for which it is in Base64 format, see 3GPP TS 31.102 7.1.2 */
41900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
42000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
42200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
42400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
42500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
42600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
42700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
42800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
42900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
43000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
43100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
43200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
43300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
43400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
43500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
43600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4373d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
4383d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
4393d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
4403d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
4413d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
4423d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
4433d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
4443d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
44500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
44600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
44700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
448e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
449e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
450e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
45100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
4527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
453e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
45400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
455e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
456e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
45700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
45800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
45900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
46000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
46100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4621b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
46300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
46400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
46500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
46600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
46700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
46800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
469602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
470602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
4711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
4721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
4731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
4741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
4751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
4761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
4771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
4781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
4791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
4801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
48103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
48200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
48300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
48400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
48600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4874380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NONE = 0, /* No error, connection ok */
4884380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
4894380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    /* an integer cause code defined in TS 24.008
4904380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B.
4914380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       If the implementation does not have access to the exact cause codes,
4924380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       then it should return one of the following values,
4934380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       as the UI layer needs to distinguish these
4944380897c6cdc99486a061b819943e3b290ebcf09Wink Saville       cases for error notification and potential retries. */
495d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
496d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
497d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
498d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
499d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
500d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
501d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
502d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
503d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
504d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
5054380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_NSAPI_IN_USE = 0x23,                  /* no retry */
50611e8b23202a67ea1f82e5db6a113087c54be480bHui Wang    PDP_FAIL_REGULAR_DEACTIVATION = 0x24,          /* possibly restart radio,
50711e8b23202a67ea1f82e5db6a113087c54be480bHui Wang                                                      based on framework config */
5084380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV4_ALLOWED = 0x32,             /* no retry */
5094380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_IPV6_ALLOWED = 0x33,             /* no retry */
5104380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ONLY_SINGLE_BEARER_ALLOWED = 0x34,
511d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
5124380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
513d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
514c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_VOICE_REGISTRATION_FAIL = -1,
515c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    PDP_FAIL_DATA_REGISTRATION_FAIL = -2,
5164380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
5174380897c6cdc99486a061b819943e3b290ebcf09Wink Saville   /* reasons for data call drop - network/modem disconnect */
5183492c6e5917828645feb3dba4618629929a43ab1Wink Saville    PDP_FAIL_SIGNAL_LOST = -3,
5194380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_PREF_RADIO_TECH_CHANGED = -4,/* preferred technology has changed, should retry
5204380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             with parameters appropriate for new technology */
5214380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_RADIO_POWER_OFF = -5,        /* data call was disconnected because radio was resetting,
5224380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             powered off - no retry */
5234380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_TETHERED_CALL_ACTIVE = -6,   /* data call was disconnected by modem because tethered
5244380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             mode was up on same APN/data profile - no retry until
5254380897c6cdc99486a061b819943e3b290ebcf09Wink Saville                                             tethered call is off */
5264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville
5274380897c6cdc99486a061b819943e3b290ebcf09Wink Saville    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* retry silently */
5284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville} RIL_DataCallFailCause;
52900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
530602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
531602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
532602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
533602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
534602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
535602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
536602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
53700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
53800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
53900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
54000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
54100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
54200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
54300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
54400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
54500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
54600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
54700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
54800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
54900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
55000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
55100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
552f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
553f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
554f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
555f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
556f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
557f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
558f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
559f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
560f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
561f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
562f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
5637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
5647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
565f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
566f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
567f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
568f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
569f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
570f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
571f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
572f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
573f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
574f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
575f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
576f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
577f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
578f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
579f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
580f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
581f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
582f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
583f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
584f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
585f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
586f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
587f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
588f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
589f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
590f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
591f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
592f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
593f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
594f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
5957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
596f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
597f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
598f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
599f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
600f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
601f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
602f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
603f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
604f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
605f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
607f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
608f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
609f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
610f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
611f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
612f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
613f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
614c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_CSIM    = 4,
615c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_APPTYPE_ISIM    = 5
616f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
617f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
618f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
6207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
6217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
6227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
623f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
6247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
625f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
626f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
627c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int              pin1_replaced;   /* applicable to USIM, CSIM & ISIM */
6287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
6297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
630f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
631f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
632c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CardStatus_v6 */
633c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct
634c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville{
635c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_CardState card_state;
636c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
637c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
638c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
639c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
640c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
641c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v5;
642c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
643f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
644f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
6457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
646f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
647c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS, -1 if none */
648c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS, -1 if none */
649c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville  int           ims_subscription_app_index;      /* value < RIL_CARD_MAX_APPS, -1 if none */
650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
651f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
652c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CardStatus_v6;
653f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
65445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka/** The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH
65545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *      or as part of RIL_SimRefreshResponse_v7
65645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka */
65700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
65800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
65900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
66045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    /* SIM initialized.  All files should be re-read. */
66100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
66200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
66300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
66400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
66500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
66645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenkatypedef struct {
66745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    RIL_SimRefreshResult result;
66845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    int                  ef_id; /* is the EFID of the updated file if the result is */
66945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* SIM_FILE_UPDATE or 0 for any other result. */
67045e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka    char *               aid;   /* is AID(application ID) of the card application */
67145e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /* See ETSI 102.221 8.1 and 101.220 4 */
67245e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_FILE_UPDATE result it can be set to AID of */
67345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application in which updated EF resides or it can be */
67445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         NULL if EF is outside of an application. */
67545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_INIT result this field is set to AID of */
67645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*         application that caused REFRESH */
67745e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka                                /*     For SIM_RESET result it is NULL. */
67845e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka} RIL_SimRefreshResponse_v7;
67945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka
680c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_CDMA_CallWaiting_v6 */
6811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
6831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
6841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
6853d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
686c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v5;
687c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
688c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
689c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          number;             /* Remote party number */
690c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
691c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    char *          name;               /* Remote party name */
692c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
693c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    /* Number type/Number plan required to support International Call Waiting */
694c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_type;        /* 0=Unknown, 1=International, 2=National,
695c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville                                           3=Network specific, 4=subscriber */
696c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int             number_plan;        /* 0=Unknown, 1=ISDN, 3=Data, 4=Telex, 8=Nat'l, 9=Private */
697c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_CDMA_CallWaiting_v6;
6981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
699a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
700a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
701a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
702a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
703a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
704a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
705a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
706a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
707a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
708a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
709a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
710a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
711a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
712a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
713a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
714a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
715a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
716a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
717a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
718f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
719a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
720a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
721a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
722a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
723a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
724a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
725f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
72634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
72734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
72834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
72934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
73034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
73134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
732a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
73334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
73434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
73534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
73634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
7371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
7381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
7391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
7401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
7411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
7421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
7431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
7441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
7451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
7461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
7471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
7481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
7491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
7501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
7511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
7521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
7551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
7561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
7571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
758c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
759c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
760c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
761c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_SignalStrengthWcdma;
7621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
7651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
7661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
7671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
7691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
7701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
7711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
7731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
7751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
7761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
7771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
7781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
7791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
7811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
7821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
7831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
7841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
7851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
7861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
787c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
788c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
789473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
790473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 44 to 140 dBm
791473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
792473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
793473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
794473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 20 to 3 dB.
795473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
796473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
797473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
798473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
799473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
800473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
801473adc9b38240d180fc1935812ac80473f571f56Wink Saville    int cqi;             /* The current Channel Quality Indicator.
802473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Range: 0 to 15.
803473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
804473adc9b38240d180fc1935812ac80473f571f56Wink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
805c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_LTE_SignalStrength;
806c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
8078a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8088a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
8098a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrp;            /* The current Reference Signal Receive Power in dBm multipled by -1.
8108a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 44 to 140 dBm
8118a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
8128a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.4 */
8138a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rsrq;            /* The current Reference Signal Receive Quality in dB multiplied by -1.
8148a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 20 to 3 dB.
8158a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX: 0x7FFFFFFF denotes invalid value.
8168a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.133 9.1.7 */
8178a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int rssnr;           /* The current reference signal signal-to-noise ratio in 0.1 dB units.
8188a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB).
8198a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
8208a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 8.1.1 */
8218a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int cqi;             /* The current Channel Quality Indicator.
8228a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 15.
8238a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
8248a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP TS 36.101 9.2, 9.3, A.4 */
8258a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int timingAdvance;   /* timing advance in micro seconds for a one way trip from cell to device.
8268a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Approximate distance can be calculated using 300m/us * timingAdvance.
8278a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Range: 0 to 0x7FFFFFFE
8288a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * INT_MAX : 0x7FFFFFFF denotes invalid value.
8298a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * Reference: 3GPP 36.321 section 6.1.3.5
8308a9e02161271505de274db0c3a88087056dd5dfcWink Saville                          * also: http://www.cellular-planningoptimization.com/2010/02/timing-advance-with-calculation.html */
8318a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_LTE_SignalStrength_v8;
8328a9e02161271505de274db0c3a88087056dd5dfcWink Saville
833d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
834d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int rscp;    /* The Received Signal Code Power in dBm multipled by -1.
835d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                  * Range : 25 to 120
836d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                  * INT_MAX: 0x7FFFFFFF denotes invalid value.
837d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                  * Reference: 3GPP TS 25.123, section 9.1.1.1 */
838d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_TD_SCDMA_SignalStrength;
839d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
840c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/* Deprecated, use RIL_SignalStrength_v6 */
841c0114b325877907fcdf7a5baa24e54a752e7e58bWink Savilletypedef struct {
842c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
843c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
844c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
845c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v5;
8461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
8481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
8491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
8501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
851c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville    RIL_LTE_SignalStrength  LTE_SignalStrength;
852c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville} RIL_SignalStrength_v6;
8531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
8548a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
8558a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_GW_SignalStrength       GW_SignalStrength;
8568a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CDMA_SignalStrength     CDMA_SignalStrength;
8578a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_EVDO_SignalStrength     EVDO_SignalStrength;
8588a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_LTE_SignalStrength_v8   LTE_SignalStrength;
8598a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_SignalStrength_v8;
8608a9e02161271505de274db0c3a88087056dd5dfcWink Saville
861d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
862d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_GW_SignalStrength       GW_SignalStrength;
863d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_CDMA_SignalStrength     CDMA_SignalStrength;
864d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_EVDO_SignalStrength     EVDO_SignalStrength;
865d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_LTE_SignalStrength_v8   LTE_SignalStrength;
866d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_TD_SCDMA_SignalStrength TD_SCDMA_SignalStrength;
867d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_SignalStrength_v10;
868d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
8698a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityGsm */
8708a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
871c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown */
872c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown */
873c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
874c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 16-bit GSM Cell Identity described in TS 27.007, 0..65535, INT_MAX if unknown  */
8758a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityGsm;
8768a9e02161271505de274db0c3a88087056dd5dfcWink Saville
877c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellIdentityWcdma */
878c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
879c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
880c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
881c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
882c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int cid;    /* 28-bit UMTS Cell Identity described in TS 25.331, 0..268435455, INT_MAX if unknown  */
883c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int psc;    /* 9-bit UMTS Primary Scrambling Code described in TS 25.331, 0..511, INT_MAX if unknown */
884c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellIdentityWcdma;
885c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
8868a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityCdma */
8878a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
888c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int networkId;      /* Network Id 0..65535, INT_MAX if unknown */
889c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int systemId;       /* CDMA System Id 0..32767, INT_MAX if unknown  */
890c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int basestationId;  /* Base Station Id 0..65535, INT_MAX if unknown  */
8918a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int longitude;      /* Longitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
8928a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -2592000
8938a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 2592000, both values inclusive (corresponding to a range of -180
894c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +180 degrees). INT_MAX if unknown */
8958a9e02161271505de274db0c3a88087056dd5dfcWink Saville
8968a9e02161271505de274db0c3a88087056dd5dfcWink Saville    int latitude;       /* Latitude is a decimal number as specified in 3GPP2 C.S0005-A v6.0.
8978a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * It is represented in units of 0.25 seconds and ranges from -1296000
8988a9e02161271505de274db0c3a88087056dd5dfcWink Saville                         * to 1296000, both values inclusive (corresponding to a range of -90
899c57b3eb525db241bd3e6092453f48388bc880447Wink Saville                         * to +90 degrees). INT_MAX if unknown */
9008a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityCdma;
9018a9e02161271505de274db0c3a88087056dd5dfcWink Saville
9028a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellIdentityLte */
9038a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
904c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
905c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
906c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int ci;     /* 28-bit Cell Identity described in TS ???, INT_MAX if unknown */
907c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int pci;    /* physical cell id 0..503, INT_MAX if unknown  */
908c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    int tac;    /* 16-bit tracking area code, INT_MAX if unknown  */
9098a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellIdentityLte;
9108a9e02161271505de274db0c3a88087056dd5dfcWink Saville
911d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/** RIL_CellIdentityTdscdma */
912d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
913d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int mcc;    /* 3-digit Mobile Country Code, 0..999, INT_MAX if unknown  */
914d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int mnc;    /* 2 or 3-digit Mobile Network Code, 0..999, INT_MAX if unknown  */
915d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int lac;    /* 16-bit Location Area Code, 0..65535, INT_MAX if unknown  */
916d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int cid;    /* 28-bit UMTS Cell Identity described in TS 25.331, 0..268435455, INT_MAX if unknown  */
917d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    int cpid;    /* 8-bit Cell Parameters ID described in TS 25.331, 0..127, INT_MAX if unknown */
918d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_CellIdentityTdscdma;
919d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
9208a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoGsm */
9218a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
9228a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityGsm   cellIdentityGsm;
9238a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_GW_SignalStrength signalStrengthGsm;
9248a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoGsm;
9258a9e02161271505de274db0c3a88087056dd5dfcWink Saville
926c57b3eb525db241bd3e6092453f48388bc880447Wink Saville/** RIL_CellInfoWcdma */
927c57b3eb525db241bd3e6092453f48388bc880447Wink Savilletypedef struct {
928c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CellIdentityWcdma cellIdentityWcdma;
929c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_SignalStrengthWcdma signalStrengthWcdma;
930c57b3eb525db241bd3e6092453f48388bc880447Wink Saville} RIL_CellInfoWcdma;
931c57b3eb525db241bd3e6092453f48388bc880447Wink Saville
9328a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoCdma */
9338a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
9348a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityCdma      cellIdentityCdma;
9358a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CDMA_SignalStrength   signalStrengthCdma;
9368a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_EVDO_SignalStrength   signalStrengthEvdo;
9378a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoCdma;
9388a9e02161271505de274db0c3a88087056dd5dfcWink Saville
9398a9e02161271505de274db0c3a88087056dd5dfcWink Saville/** RIL_CellInfoLte */
9408a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
9418a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellIdentityLte        cellIdentityLte;
9428a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_LTE_SignalStrength_v8  signalStrengthLte;
9438a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoLte;
9448a9e02161271505de274db0c3a88087056dd5dfcWink Saville
945d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/** RIL_CellInfoTdscdma */
946d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
947d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  RIL_CellIdentityTdscdma cellIdentityTdscdma;
948d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  RIL_TD_SCDMA_SignalStrength signalStrengthTdscdma;
949d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_CellInfoTdscdma;
950d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
9518a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TYPE_XXX
9528a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
9538a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_GSM    = 1,
9548a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_CDMA   = 2,
9558a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CELL_INFO_TYPE_LTE    = 3,
956c57b3eb525db241bd3e6092453f48388bc880447Wink Saville  RIL_CELL_INFO_TYPE_WCDMA  = 4,
957d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  RIL_CELL_INFO_TYPE_TD_SCDMA  = 5
9588a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfoType;
9598a9e02161271505de274db0c3a88087056dd5dfcWink Saville
9608a9e02161271505de274db0c3a88087056dd5dfcWink Saville// Must be the same as CellInfo.TIMESTAMP_TYPE_XXX
9618a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef enum {
9628a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_UNKNOWN = 0,
9638a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_ANTENNA = 1,
9648a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_MODEM = 2,
9658a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_OEM_RIL = 3,
9668a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_TIMESTAMP_TYPE_JAVA_RIL = 4,
9678a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_TimeStampType;
9688a9e02161271505de274db0c3a88087056dd5dfcWink Saville
9698a9e02161271505de274db0c3a88087056dd5dfcWink Savilletypedef struct {
9708a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_CellInfoType  cellInfoType;   /* cell type for selecting from union CellInfo */
9718a9e02161271505de274db0c3a88087056dd5dfcWink Saville  int               registered;     /* !0 if this cell is registered 0 if not registered */
9728a9e02161271505de274db0c3a88087056dd5dfcWink Saville  RIL_TimeStampType timeStampType;  /* type of time stamp represented by timeStamp */
9738a9e02161271505de274db0c3a88087056dd5dfcWink Saville  uint64_t          timeStamp;      /* Time in nanos as returned by ril_nano_time */
9748a9e02161271505de274db0c3a88087056dd5dfcWink Saville  union {
9758a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoGsm     gsm;
9768a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoCdma    cdma;
9778a9e02161271505de274db0c3a88087056dd5dfcWink Saville    RIL_CellInfoLte     lte;
978c57b3eb525db241bd3e6092453f48388bc880447Wink Saville    RIL_CellInfoWcdma   wcdma;
979d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    RIL_CellInfoTdscdma tdscdma;
9808a9e02161271505de274db0c3a88087056dd5dfcWink Saville  } CellInfo;
9818a9e02161271505de274db0c3a88087056dd5dfcWink Saville} RIL_CellInfo;
9828a9e02161271505de274db0c3a88087056dd5dfcWink Saville
9831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
9841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
9851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
9861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
9871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
9881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
9891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
9901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
9911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
9921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
9931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
9941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
9951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
9961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
9971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
9981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
9991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
10001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
10011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
10021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
10031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
10041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
10051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
10061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
1009a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
10101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
10111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
10131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
10141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
10151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
10161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
1019a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
10201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
10211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
10221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
10231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
10241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
10251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
10271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
10281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
10291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
10301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
10311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
10321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
10331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
10341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
10351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
10361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
10391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
10401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
10411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
10421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
10441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
10461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
10471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
10481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
10491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
10501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
10521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
10541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
10551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
10571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
10591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
10601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
10611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
10651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
10671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
10681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
10691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
10711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
10721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
10741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
10751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
10771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
10781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
10801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
10811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
10831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
10841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
10861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
10871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
10881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
10891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
10911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1092d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_HARDWARE_CONFIG_UUID_LENGTH 64
1093d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
10941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
10951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
10961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
10971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
10981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
10998a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/* See RIL_REQUEST_NV_READ_ITEM */
11008a4a233bb9503eddee83569e647c25099a8e15b3Jake Hambytypedef struct {
11018a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby  RIL_NV_Item itemID;
11028a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby} RIL_NV_ReadItem;
11038a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
11048a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/* See RIL_REQUEST_NV_WRITE_ITEM */
11058a4a233bb9503eddee83569e647c25099a8e15b3Jake Hambytypedef struct {
11068a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby  RIL_NV_Item   itemID;
11078a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby  char *        value;
11088a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby} RIL_NV_WriteItem;
11098a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
1110d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef enum {
1111d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    HANDOVER_STARTED = 0,
1112d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    HANDOVER_COMPLETED = 1,
1113d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    HANDOVER_FAILED = 2,
1114d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    HANDOVER_CANCELED = 3
1115d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_SrvccState;
1116d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
1117d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/* hardware configuration reported to RILJ. */
1118d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef enum {
1119d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   RIL_HARDWARE_CONFIG_MODEM = 0,
1120d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   RIL_HARDWARE_CONFIG_SIM = 1,
1121d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_HardwareConfig_Type;
1122d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
1123d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef enum {
1124d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   RIL_HARDWARE_CONFIG_STATE_ENABLED = 0,
1125d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   RIL_HARDWARE_CONFIG_STATE_STANDBY = 1,
1126d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   RIL_HARDWARE_CONFIG_STATE_DISABLED = 2,
1127d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_HardwareConfig_State;
1128d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
1129d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
1130d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   int rilModel;
1131d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   uint32_t rat; /* bitset - ref. RIL_RadioTechnology. */
1132d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   int maxVoice;
1133d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   int maxData;
1134d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   int maxStandby;
1135d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_HardwareConfig_Modem;
1136d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
1137d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
1138d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen   char modemUuid[RIL_HARDWARE_CONFIG_UUID_LENGTH];
1139d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_HardwareConfig_Sim;
1140d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
1141d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef struct {
1142d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  RIL_HardwareConfig_Type type;
1143d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  char uuid[RIL_HARDWARE_CONFIG_UUID_LENGTH];
1144d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  RIL_HardwareConfig_State state;
1145d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  union {
1146d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     RIL_HardwareConfig_Modem modem;
1147d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     RIL_HardwareConfig_Sim sim;
1148d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen  } cfg;
1149d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen} RIL_HardwareConfig;
1150d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
11517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
1152c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * Data connection power state
1153c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville */
1154c29360a92ad603fcec008c098cbbed47e3399dc8Wink Savilletypedef enum {
1155c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville    RIL_DC_POWER_STATE_LOW      = 1,        // Low power state
1156c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville    RIL_DC_POWER_STATE_MEDIUM   = 2,        // Medium power state
1157c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville    RIL_DC_POWER_STATE_HIGH     = 3,        // High power state
1158c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville    RIL_DC_POWER_STATE_UNKNOWN  = INT32_MAX // Unknown state
1159c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville} RIL_DcPowerStates;
1160c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville
1161c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville/**
1162c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * Data connection real time info
1163c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville */
1164c29360a92ad603fcec008c098cbbed47e3399dc8Wink Savilletypedef struct {
1165c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville    uint64_t                    time;       // Time in nanos as returned by ril_nano_time
1166c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville    RIL_DcPowerStates           powerState; // Current power state
1167c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville} RIL_DcRtInfo;
1168c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville
1169c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan/**
1170c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * Data profile to modem
1171c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan */
1172c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajantypedef struct {
1173c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* id of the data profile */
1174c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int profileId;
1175c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* the APN to connect to */
1176c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    char* apn;
1177c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /** one of the PDP_type values in TS 27.007 section 10.1.1.
1178c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     * For example, "IP", "IPV6", "IPV4V6", or "PPP".
1179c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     */
1180c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    char* protocol;
1181c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /** authentication protocol used for this PDP context
1182c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     * (None: 0, PAP: 1, CHAP: 2, PAP&CHAP: 3)
1183c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     */
1184c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int authType;
1185c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* the username for APN, or NULL */
1186c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    char* user;
1187c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* the password for APN, or NULL */
1188c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    char* password;
1189c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* the profile type, TYPE_COMMON-0, TYPE_3GPP-1, TYPE_3GPP2-2 */
1190c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int type;
1191c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* the period in seconds to limit the maximum connections */
1192c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int maxConnsTime;
1193c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* the maximum connections during maxConnsTime */
1194c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int maxConns;
1195c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /** the required wait time in seconds after a successful UE initiated
1196c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     * disconnect of a given PDN connection before the device can send
1197c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     * a new PDN connection request for that given PDN
1198c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan     */
1199c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int waitTime;
1200c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    /* true to enable the profile, 0 to disable, 1 to enable */
1201c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan    int enabled;
1202c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan} RIL_DataProfileInfo;
1203c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville
1204c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville/**
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
12087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1211fd7293711394c422711ff07d15a357955ff2194fWink Saville * "response" is const RIL_CardStatus_v6 *
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
121500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
121600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
121700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
121800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1221309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
1225c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
122600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1227593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1228593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
122900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
12327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
123300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
123400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
123500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
123600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
123700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
123800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
123900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
124200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
124300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
12447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
124500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
124700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
124800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1249c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1251593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1252593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
125300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
12567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
125900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
126000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
126100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
126600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
126700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
126900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
127200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
1273c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[1] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
127400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1275593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1276593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
12797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
12807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
128500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
128600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
128700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
128900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
12917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
129400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1296c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1298593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1299593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
130600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
130700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
131200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
131900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
1320c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1322593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1323593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
132400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
13327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
13417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
1346c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[2] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1348593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1349593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
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 *  PASSWORD_INCORRECT
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
13587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
135900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1371593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1372593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
13867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
139100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
13937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
13957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
13967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
139700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
140400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
14057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
140600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
14127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
141400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
14167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
141700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
141800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
141900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
142000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
14272bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Only valid when radio state is "RADIO_STATE_ON"
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1429c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is const char **
1430c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
143100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
14347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
143500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
143600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
143700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
143800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
143900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
144000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
144706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
144806bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
14497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
145300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
14557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
145900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
146400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
146806bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
146906bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
147000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
147200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
14747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
147500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
147700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
147800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
147900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
148000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
148100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
148200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
148300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
148500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148606bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * After this HANGUP request returns, RIL should show the connection is NOT
148706bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
148806bae4bcdc941fb1165fbf79cf6f2cb34e57e51dJohn Wang *
148900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
149000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
149100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
14937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
149400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
149600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
149700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
149900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
150000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
150100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
150200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
150400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
150800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
151100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
151200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
151300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
151500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
151600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
151900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
152200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
152300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
153000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
153300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
153500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
153900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
154000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
154200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
154500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
154800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
155100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
155800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
15671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
156803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
156903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
157003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
157334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
157434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1585f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
15921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
15971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
15981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
16053d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1607c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1613f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
16141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
16151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1616f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
16171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
16181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1620f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1621f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
16227f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
16237f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
16247f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
16257f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
16267f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
16277f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
16287f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
16297f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
16307f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
16311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
16321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
16331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
16341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
16351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
16361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
16371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
16381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
16391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
16404380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available voice radio technology,
16414380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
16421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
16431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
164429be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
16451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
16461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
164736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
164836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
164936b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
165036b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
16514380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -90 to +90 degrees).
16521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
16531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
165436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
165536b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
165636b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
165736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
16584380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              to a range of -180 to +180 degrees).
16591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
16601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
16611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
16621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
16631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
16641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
16651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
16661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
16671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
166803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
16691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
16701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
167103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
16721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
16731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
167403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
16751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
16761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
16771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1678602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1679602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1680602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1681602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1682602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1683602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1684602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1685602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1686602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1687602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1688602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1689602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
169029be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1691c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                11 - PLMN not allowed
1692c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                12 - Location area not allowed
1693c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                13 - Roaming not allowed in this Location Area
1694c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                15 - No Suitable Cells in this Location Area
1695c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                17 - Network Failure
1696c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                20 - MAC Failure
1697c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                21 - Sync Failure
1698c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                22 - Congestion
1699c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                23 - GSM Authentication unacceptable
1700c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                25 - Not Authorized for this CSG
1701c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                32 - Service option not supported
1702c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                33 - Requested service option not subscribed
1703c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                34 - Service option temporarily out of order
1704c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                38 - Call cannot be identified
1705c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                48-63 - Retry upon entry into a new cell
1706c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                95 - Semantically incorrect message
1707c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                96 - Invalid mandatory information
1708c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                97 - Message type non-existent or not implemented
1709c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                98 - Message not compatible with protocol state
1710c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                                99 - Information element non-existent or not implemented
1711c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               100 - Conditional IE error
1712c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               101 - Message not compatible with protocol state
1713c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               111 - Protocol error, unspecified
1714ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1715ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1716ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1717ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
17181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
17191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
17231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
17241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
17251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
172600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1731c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
173200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1734c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_DATA_REGISTRATION_STATE
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1736c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request current DATA registration state
173700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
17403a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
17434380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * ((const char **)response)[3] indicates the available data radio technology,
17444380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *                              valid values as defined by RIL_RadioTechnology.
1745c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[4] if registration state is 3 (Registration
1746c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               denied) this is an enumerated reason why
1747c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               registration was denied.  See 3GPP TS 24.008,
1748c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                               Annex G.6 "Additonal cause codes for GMM".
1749c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      7 == GPRS services not allowed
1750c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      8 == GPRS services and non-GPRS services not allowed
1751c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      9 == MS identity cannot be derived by the network
1752c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      10 == Implicitly detached
1753c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      14 == GPRS services not allowed in this PLMN
1754c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      16 == MSC temporarily not reachable
1755c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *      40 == No PDP context activated
1756c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)response)[5] The maximum number of simultaneous Data Calls that can be
1757c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                              established using RIL_REQUEST_SETUP_DATA_CALL.
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1759ae67953e93218859806918f20175693015fd8eccWink Saville * The values at offsets 6..10 are optional LTE location information in decimal.
1760ae67953e93218859806918f20175693015fd8eccWink Saville * If a value is unknown that value may be NULL. If all values are NULL,
1761ae67953e93218859806918f20175693015fd8eccWink Saville * none need to be present.
1762ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[6] is TAC, a 16-bit Tracking Area Code.
1763ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[7] is CID, a 0-503 Physical Cell Identifier.
1764ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[8] is ECI, a 28-bit E-UTRAN Cell Identifier.
1765ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[9] is CSGID, a 27-bit Closed Subscriber Group Identity.
1766ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *  ((const char **)response)[10] is TADV, a 6-bit timing advance value.
1767ea51a9d8cbd0a5eaea9d7d6088fd64317a547f68Wink Saville *
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
17717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
17727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1780c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
17897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
17967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
180829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * If the radio is is turned off/on the radio modem subsystem
180929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is expected return to an initialized state. For instance,
181029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * any voice and data calls will be terminated and all associated
181129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * lists emptied.
181229487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
182500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1838602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
18407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
18567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
18697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1876602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
18867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
19017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1915f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Setup a packet data connection. If RIL_Data_Call_Response_v6.status
191829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * return success it is added to the list of data calls and a
191929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is sent. The call remains in the
192029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * list until RIL_REQUEST_DEACTIVATE_DATA_CALL is issued or the
192129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * radio is powered off/on. This list is returned by RIL_REQUEST_DATA_CALL_LIST
192229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * and RIL_UNSOL_DATA_CALL_LIST_CHANGED.
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19244380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * The RIL is expected to:
19254380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create one data call context.
19264380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Create and configure a dedicated interface for the context
19274380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface must be point to point.
19284380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - The interface is configured with one or more addresses and
19294380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    is capable of sending and receiving packets. The prefix length
19304380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    of the addresses must be /32 for IPv4 and /128 for IPv6.
19314380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  - Must NOT change the linux routing table.
1932c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  - Support up to RIL_REQUEST_DATA_REGISTRATION_STATE response[5]
19334380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    number of simultaneous data call contexts.
19344380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
1936c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[0] Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2...
1937c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          for values above 2 this is RIL_RadioTechnology + 2.
1938602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
19397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1940f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1941f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1942f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1943920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1944920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1945920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1946920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1947920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
1948c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[6] is the connection type to request must be one of the
1949c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *                          PDP_type values in TS 27.007 section 10.1.1.
19504f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
1951c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[7] Optional connection property parameters, format to be defined.
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1953c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is a RIL_Data_Call_Response_v6
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
19563d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19584380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  SUCCESS should be returned on both success and failure of setup with
1959c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  the RIL_Data_Call_Response_v6.status containing the actual status.
1960c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  For all other errors the RIL_Data_Call_Resonse_v6 is ignored.
19614380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *
19624380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *  Other errors could include:
19634380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    RADIO_NOT_AVAILABLE, GENERIC_FAILURE, OP_NOT_ALLOWED_BEFORE_REG_TO_NW,
19644380897c6cdc99486a061b819943e3b290ebcf09Wink Saville *    OP_NOT_ALLOWED_DURING_VOICE_CALL and REQUEST_NOT_SUPPORTED.
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1966f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1968f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1979fd7293711394c422711ff07d15a357955ff2194fWink Saville * "data" is a const RIL_SIM_IO_v6 *
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
2020602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
20307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
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:
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
20397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
20447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
20867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
209200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
21067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
21297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
21637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
2166b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
216700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
2168b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
2170b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
2171b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
2172b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
2173b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
217400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
217600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
217800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
218000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
218600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2187f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2191f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
219200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
21987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
220100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
220200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
220400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2206f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2210f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
221100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
221400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
222000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2246f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Deactivate packet data connection and remove from the
224929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * data call list if SUCCESS is returned. Any other return
225029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * values should also try to remove the call from the list,
225129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * but that may not be possible. In any event a
225229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_RADIO_POWER off/on must clear the list. An
225329487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED is not expected to be
225429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * issued because of an RIL_REQUEST_DEACTIVATE_DATA_CALL.
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
2257f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
2258d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo * ((char**)data)[1] indicating Disconnect Reason
2259d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   0 => No specific reason specified
2260d86799a04478e46b49cdf1f82f98b2279be1645cKazuhiro Ondo *                   1 => Radio shutdown requested
22617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
226800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2269f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2271f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
22797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
2284c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[3] is AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2285fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2286fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
22907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
22927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
2316c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((const char **)data)[4] = AID value, See ETSI 102.221 8.1 and 101.220 4, NULL if no value.
2317fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            This is only applicable in the case of Fixed Dialing Numbers
2318fd7293711394c422711ff07d15a357955ff2194fWink Saville *                            (FDN) requests.
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2320593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
2321593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
23437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
23817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
23877553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
23907553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
23917553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
23927553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
23937553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
23947553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
239500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
239600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
239700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
239900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
240000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
240700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
240800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
240900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
241000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
24127553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
241300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24157553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
24167553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
24177553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
24187553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
24197553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
242000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
242100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
242200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
242300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
242400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
242700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
242900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
243000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
243100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
243200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
24347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
243500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
243600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
243700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
243800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
243900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
244000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
244100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
244300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
244400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
244500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
244600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
244700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
244800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
244900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
245100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
245200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
245300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
245400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
245500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
24567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
24577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
245800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
245900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
246000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
24617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
246200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
246300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
246400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
24657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
246600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
246700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
246800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
246900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
247000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
247200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
247300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
247400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
247500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
247600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
247700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
247800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
24797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
248000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
248100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
24827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
248300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
248400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
248500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
248600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
248700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
248800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
248900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
249000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
249100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
249200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
249300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
249400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
249500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
249600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
24977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
249800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
249900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
25007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
250100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
250200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
250300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
250400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
250500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
250600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
250700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
250800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
250900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
251000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
251100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
25137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
251400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
251500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
251700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
251800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
251900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
252000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
25217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
25227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
2523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
2524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
252500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
252600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
252700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
252900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
253000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
253100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
253200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
253300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
253400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
253500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
253600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
253700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
253800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
253900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
254100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
254200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
254400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
254500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
254700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
254800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
255000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
255100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
255200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
255300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
255400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
255500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
255600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
255700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
255800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
255900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
256000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
256200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
256300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
256400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
256500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
256700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
256800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
256900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
257000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
257100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
257200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
257300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
257400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
257500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
257700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
257800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
257900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
258100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
25827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
258300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
25847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
258500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
258600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
25877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
258800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
258900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
259000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
259100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
259200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
259300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
259400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2595c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE - Deprecated use the status
2596c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * field in RIL_Data_Call_Response_v6.
25977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
25987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
2599f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
2600f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
260100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
260300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
260500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
260600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
260700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
260800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
26097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
26104380897c6cdc99486a061b819943e3b290ebcf09Wink Saville * RIL_DataCallFailCause, as the UI layer needs to distinguish these
261100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
261200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
261300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
261500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
261600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
261700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
261800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
261900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
2620c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
2621c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Deprecated use the status field in RIL_Data_Call_Response_v6.
26227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
262300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2624f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
262500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
262600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2627f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
262800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
262929487ef2685e5ee38f0348ab031cb96a608296baWink Saville * Returns the data call list. An entry is added when a
263029487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_SETUP_DATA_CALL is issued and removed on a
263129487ef2685e5ee38f0348ab031cb96a608296baWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL. The list is emptied
263229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * when RIL_REQUEST_RADIO_POWER off/on is issued.
263300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
2635c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is an array of RIL_Data_Call_Response_v6
263600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
263700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
26387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
263900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
264000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
264129487ef2685e5ee38f0348ab031cb96a608296baWink Saville *
264229487ef2685e5ee38f0348ab031cb96a608296baWink Saville * See also: RIL_UNSOL_DATA_CALL_LIST_CHANGED
264300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
264400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2645f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
264600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
264700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2648f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
264900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
265100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
265200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
265300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2654f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2655f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
265600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
265700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
265800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
265900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
26607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
266100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
266200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2663f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
266400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
266500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
266600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
266700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
266800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
266900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
267000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
267200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
267300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
267500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
267600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
267700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
267800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
26797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
268000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
268100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
26837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
268400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
268500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
268600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
268700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
268800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
268900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
269000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
269100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
269200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
269300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
269400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
269500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
269600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
269700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
269800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
270000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
270100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
270300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
270400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
270500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
270700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
270800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
270900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
271000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
27117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
27127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
271300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
271400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
271500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
271600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
271700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
271800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
271900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
272000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
272100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
272200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
272300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
272400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
272500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
272600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2727432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2728432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2729432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
273000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
273200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
273300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
273400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
273600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
273700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
273800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
273900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
274000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
274100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
274200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
274300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
274400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
274500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
274600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
274700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
274800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
274900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
275100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
275300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
275400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
275500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
275700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
275800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
275900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
276000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
276100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
276200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
276300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
276400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
276500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
276600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
276700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
276800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
276900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
277100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
277300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
277500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
277600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
277700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
277800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
277900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
278000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
278200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
278300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
278400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
278500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
278600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
278800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
278900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
279000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
279100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
279300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
279500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
279600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
279700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
279800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
279900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
280000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
280100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
280200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
280300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
280400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
280500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
280600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
280700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
280800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
280900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
281000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
281100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
281200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2813f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2814f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2815f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2816f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2817f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2818f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2819f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2820f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2821f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2822f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2823f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2824f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2825f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
282600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
282800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
282900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
283000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
283100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
283200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
283300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
283400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
283500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
283600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
283700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
283800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
283900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
284000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
284200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
284400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
284500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
284600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
284700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
284800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
284900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
285000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
285100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
285200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2853f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2856f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2857f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2858f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2859f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2860f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2861f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2862f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2863f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2864f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2865f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
286600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
286700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
286800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
286900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
287000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
287100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
287200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
287300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
287400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
287500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
287600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
287700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
287800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
287900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
288000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
288100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
288200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
288300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
288400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
288500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
288600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
288700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
288800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
288900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
289000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
289100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
289200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
289300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
289400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
289500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
289600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
289700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
289800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
289900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
290000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
290100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
290200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
290300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
290400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
290500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
290600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
290700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
290800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
290900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
291000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
291100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
291200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
291300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
291400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
291500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
291600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
291700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
291800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
291900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
292000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
292100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
292200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
292300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
292400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
292500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
292600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
292700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
292800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
292900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
293000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
293100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
293200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
293300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
293400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
293500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
293600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
293700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
293800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
293900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
294000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
294100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
294200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
294300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
294400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
294500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
294600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
294700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
294800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
294900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
295000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
295100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
295200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
295300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
295400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
295500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
295600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
295700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
295800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
295900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
296000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
296100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
296200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
296300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
296400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
296500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
296600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
296700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
296800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
296900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
297000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
297100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
297200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
297300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
297400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
297500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
29767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
297700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
297800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
297900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
298000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
29817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
298200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
298300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
298400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
298500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
298600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
298700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
298800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
298900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
299100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
299200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2993c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int * which is RIL_PreferredNetworkType
299400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
299600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2999f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
3000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3001f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
300200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
300300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
300400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
300500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
300600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
300700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
300800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
300900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
301000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
301200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
3014c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)reponse)[0] is == RIL_PreferredNetworkType
301500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
301700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
301800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
301900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
302000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
302100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
302200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
302300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
302400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
302500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
302600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
302700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
302800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
302900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
303000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
303100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
303200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
303300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
303400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
303500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
303600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
303700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
303800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
303900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
304000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
304100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
30423d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
304300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
3044432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
3045432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
304600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
304700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
304800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
304900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
305000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
305100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
305200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
305300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
305400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
30553d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
305600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
305700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
305800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
305900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
306000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
306100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
306200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
306300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
306400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3065f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3066c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
30677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3068f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
3069f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
3070f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3071f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
3072c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3073f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3074f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3075f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3076f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3077f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3078f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3079f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3080f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
3081f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3082c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3083c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3084f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3085c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
3086f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3087f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3088f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
30897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3090f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
3091f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
3093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
3094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
3095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
30967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3097f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
30987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3099f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3100f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3101f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3102f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3103f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3104f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
3105f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3106f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3107f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
31087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3109f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
3110f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3111f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
31127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3113f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3114f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
3115f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
3116f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
31177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3118f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
31197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3120f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3121f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3122f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3123f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3124f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3125f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
3126f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3127f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3128f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
31297f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3130f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
3131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3132f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
3133f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
31341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
31351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
31361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
31377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3138f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
31397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3140f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3141f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3142f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3143f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3144f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3145f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
3146f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3147f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3148f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
31497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3150f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
3151f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3152f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
31537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3154f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3155f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
31561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
31571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
31581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
3159f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3160f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
31617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3162f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3163f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3164f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3165f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3166f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3167f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
3168f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3169f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3170f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
3171f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3172f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
3173f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
3174f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3175f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
3176f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
3177f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
31787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3179f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
31807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3181f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3182f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3183f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3184f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3185f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3186f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
3187f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3188f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3189f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
31907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3191f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
3192f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3193f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
31947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3195f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3196f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
3197f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
31987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3199f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
32007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3201f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3202f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3203f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3204f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3205f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3206f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
3207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3209f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
3210f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3211f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
3212f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3213f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
3214f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
32157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3216f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
32177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3218f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3219f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3220f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3221f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3222f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3223f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3224f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
3225f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3226f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3227f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
3228f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3229f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
3230f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3231602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
3232602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
3233602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
3234602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
3235602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
3236602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
32377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3238f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
32397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3240f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3241f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3242f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3243f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3244f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3245f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3246f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
3247f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3248f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
324903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
3250f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
325103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
325203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
325303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
3254f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3255f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
325603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
325703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
325803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
325903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
326003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
32617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3262f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
32637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3264f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3265f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3266f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3267f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3268f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3269f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
327003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
3271f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3272f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3273f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
3274f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3275f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
3276f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3277f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
32787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3279f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
32807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3281bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
3282bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
3283bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
3284bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
3285bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
3286bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
3287f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3288f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3289f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
32901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
3291f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3292f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3293f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3294f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
3295f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3296f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3297f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
3298f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3299f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
3300f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
3301f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3302f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
33037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3304f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
33057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
3306f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3307f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3308f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3309f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3310f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3311f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3312f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
3313f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3314f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3315a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
3316a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3317a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
3318f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3319f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3320a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3321a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
3322a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
3323a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3324f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3325f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3326f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3327f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3328f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3329f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3330a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
3331f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3332f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3333a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
3334f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3335f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
3336f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3337a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
3338a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
3339a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3340f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3341a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3342f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3343f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3344f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3345f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3346f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3347f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3348a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
3349f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3350f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3351a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
3352f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3353a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
3354f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3355f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3356f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3357f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
3358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3359a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3360f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3361a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3362f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3363f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3364f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3365f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3366f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3367f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3368a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
3369f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3370f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3371a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
3372f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3373f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
3374f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3375f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
3376a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3377a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
3378a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
3379a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3380f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3381f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3382f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3383f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3384f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3385f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3386a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
3387f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3388f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3389a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
3390f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3391f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
3392f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3393a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
3394a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
3395a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3396f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3397a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3398f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3399f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3400f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3401f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3402f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3403f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3404a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
3405f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3406f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3407a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
3408f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3409f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
3410f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3411f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
3412f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
3413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
3414f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
3415a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3416f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3417a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
3418f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3419f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3420f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3421f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3422f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3423f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3424a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
3425f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3426f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3427f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
3428f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3429f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
3430f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
3432f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
3433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
3434f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3435f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
3436f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
344029be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
344129be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
344229be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
344329be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
34441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
3445d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
3446f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3447f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3448f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3449f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
3450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3451f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3452eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
3453f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3454f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3455f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
3456f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3457f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
3458f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
3460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
3462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
3463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3470eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
3471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3472f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
3474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
3476f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
3478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
3479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
3481f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
3487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3488eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
3489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
3491f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
3492eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3493eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
3494eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
3496eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
3497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
3498eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3499eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
3500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
3501eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3502eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
3503f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
3504eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3505f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
3506eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
3507eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
3508eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
3509eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
3510eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
3511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
3512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
3513f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
3514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
3515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
3516eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
3517f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
35181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
35191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
35201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
35221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
35231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
35241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
35267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
35271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
35287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
35291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
35301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
35311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
35321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
35331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
35341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
35351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
3536f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
3537000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3538000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
3539000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3540000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
3541000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3542000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
3543000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3544000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
3545000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3546000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3547000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3548000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3549000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3550000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3551000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3552000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
3553000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3554000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
3555000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
3556000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3557000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
3558000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3559000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
3560000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3561000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
3562000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3563000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
3564000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
3565000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
3566000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
3567000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
3568000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
3569000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
3570000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
3571b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
3572b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
3573b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3574b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
3575b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3576b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
3577b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
3578b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
3579b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3580b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
3581b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3582b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
3583b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
3584b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
3585b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
3586b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
3587b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
3588b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
3589b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
35902641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
35912641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
35922641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
35932641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
35942641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
35952641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
35962641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
35972641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
35982641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
35992641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
36002641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
36012641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
36022641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
36032641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
36042641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
36052641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
36062641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
3607c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
3608c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE
3609c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3610c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Request to query the location where the CDMA subscription shall
3611c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * be retrieved
3612c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3613c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
3614c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3615c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "response" is int *
3616c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
3617c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3618c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Valid errors:
3619c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUCCESS
3620c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  RADIO_NOT_AVAILABLE
3621c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  GENERIC_FAILURE
3622c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
3623c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
3624c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * See also: RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE
3625c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
3626c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
3627c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
3628fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby/**
3629fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * RIL_REQUEST_ISIM_AUTHENTICATION
3630fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3631fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Request the ISIM application on the UICC to perform AKA
3632fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * challenge/response algorithm for IMS authentication
3633fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3634fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "data" is a const char * containing the challenge string in Base64 format
3635fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * "response" is a const char * containing the response in Base64 format
3636fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *
3637fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby * Valid errors:
3638fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  SUCCESS
3639fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  RADIO_NOT_AVAILABLE
3640fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby *  GENERIC_FAILURE
3641fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby */
3642fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby#define RIL_REQUEST_ISIM_AUTHENTICATION 105
3643fa8d584ca7984bf7d73ff37c7c2bc1e0dfa5fb71Jake Hamby
3644300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3645300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU
3646300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3647300105d1487f5238940c18792b879793826b61f4Jake Hamby * Acknowledge successful or failed receipt of SMS previously indicated
3648300105d1487f5238940c18792b879793826b61f4Jake Hamby * via RIL_UNSOL_RESPONSE_NEW_SMS, including acknowledgement TPDU to send
3649300105d1487f5238940c18792b879793826b61f4Jake Hamby * as the RP-User-Data element of the RP-ACK or RP-ERROR PDU.
3650300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3651300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is const char **
3652300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[0] is "1" on successful receipt (send RP-ACK)
3653300105d1487f5238940c18792b879793826b61f4Jake Hamby *                          is "0" on failed receipt (send RP-ERROR)
3654300105d1487f5238940c18792b879793826b61f4Jake Hamby * ((const char **)data)[1] is the acknowledgement TPDU in hexadecimal format
3655300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3656300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is NULL
3657300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3658300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3659300105d1487f5238940c18792b879793826b61f4Jake Hamby *  SUCCESS
3660300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RADIO_NOT_AVAILABLE
3661300105d1487f5238940c18792b879793826b61f4Jake Hamby *  GENERIC_FAILURE
3662300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3663300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU 106
3664300105d1487f5238940c18792b879793826b61f4Jake Hamby
3665300105d1487f5238940c18792b879793826b61f4Jake Hamby/**
3666300105d1487f5238940c18792b879793826b61f4Jake Hamby * RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS
3667300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3668300105d1487f5238940c18792b879793826b61f4Jake Hamby * Requests to send a SAT/USAT envelope command to SIM.
3669300105d1487f5238940c18792b879793826b61f4Jake Hamby * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111.
3670300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3671300105d1487f5238940c18792b879793826b61f4Jake Hamby * This request has one difference from RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND:
3672300105d1487f5238940c18792b879793826b61f4Jake Hamby * the SW1 and SW2 status bytes from the UICC response are returned along with
3673300105d1487f5238940c18792b879793826b61f4Jake Hamby * the response data, using the same structure as RIL_REQUEST_SIM_IO.
3674300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3675300105d1487f5238940c18792b879793826b61f4Jake Hamby * The RIL implementation shall perform the normal processing of a '91XX'
3676300105d1487f5238940c18792b879793826b61f4Jake Hamby * response in SW1/SW2 to retrieve the pending proactive command and send it
3677300105d1487f5238940c18792b879793826b61f4Jake Hamby * as an unsolicited response, as RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND does.
3678300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3679300105d1487f5238940c18792b879793826b61f4Jake Hamby * "data" is a const char * containing the SAT/USAT command
3680300105d1487f5238940c18792b879793826b61f4Jake Hamby * in hexadecimal format starting with command tag
3681300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3682300105d1487f5238940c18792b879793826b61f4Jake Hamby * "response" is a const RIL_SIM_IO_Response *
3683300105d1487f5238940c18792b879793826b61f4Jake Hamby *
3684300105d1487f5238940c18792b879793826b61f4Jake Hamby * Valid errors:
3685300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_SUCCESS
3686300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
3687300105d1487f5238940c18792b879793826b61f4Jake Hamby *  RIL_E_GENERIC_FAILURE
3688300105d1487f5238940c18792b879793826b61f4Jake Hamby */
3689300105d1487f5238940c18792b879793826b61f4Jake Hamby#define RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS 107
3690300105d1487f5238940c18792b879793826b61f4Jake Hamby
36912bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
36922bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_REQUEST_VOICE_RADIO_TECH
36932bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
36942bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
36952bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * when radio state is RADIO_STATE_ON
36962bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
36972bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is NULL
36982bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "response" is int *
36992bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *) response)[0] is of type const RIL_RadioTechnology
37002bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
37012bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Valid errors:
37022bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  SUCCESS
37032bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  RADIO_NOT_AVAILABLE
37042bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *  GENERIC_FAILURE
37052bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
37062bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_REQUEST_VOICE_RADIO_TECH 108
37072bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
37088a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
37098a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_GET_CELL_INFO_LIST
37108a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37118a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Request all of the current cell information known to the radio. The radio
37128a9e02161271505de274db0c3a88087056dd5dfcWink Saville * must a list of all current cells, including the neighboring cells. If for a particular
37138a9e02161271505de274db0c3a88087056dd5dfcWink Saville * cell information isn't known then the appropriate unknown value will be returned.
37148a9e02161271505de274db0c3a88087056dd5dfcWink Saville * This does not cause or change the rate of RIL_UNSOL_CELL_INFO_LIST.
37158a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37168a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
37178a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37188a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of  RIL_CellInfo.
37198a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
37208a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_GET_CELL_INFO_LIST 109
37218a9e02161271505de274db0c3a88087056dd5dfcWink Saville
37228a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
37238a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE
37248a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37258a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Sets the minimum time between when RIL_UNSOL_CELL_INFO_LIST should be invoked.
3726c57b3eb525db241bd3e6092453f48388bc880447Wink Saville * A value of 0, means invoke RIL_UNSOL_CELL_INFO_LIST when any of the reported
37278a9e02161271505de274db0c3a88087056dd5dfcWink Saville * information changes. Setting the value to INT_MAX(0x7fffffff) means never issue
37288a9e02161271505de274db0c3a88087056dd5dfcWink Saville * a RIL_UNSOL_CELL_INFO_LIST.
37298a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37308a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is int *
37318a9e02161271505de274db0c3a88087056dd5dfcWink Saville * ((int *)data)[0] is minimum time in milliseconds
37328a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37338a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is NULL
37348a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
37358a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Valid errors:
37368a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  SUCCESS
37378a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  RADIO_NOT_AVAILABLE
37388a9e02161271505de274db0c3a88087056dd5dfcWink Saville *  GENERIC_FAILURE
37398a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
37408a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE 110
3741300105d1487f5238940c18792b879793826b61f4Jake Hamby
374275697538e485ea2981960dcd4878bfdd032731acSungmin Choi/**
374375697538e485ea2981960dcd4878bfdd032731acSungmin Choi * RIL_REQUEST_SET_INITIAL_ATTACH_APN
374475697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
374575697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Set an apn to initial attach network
374675697538e485ea2981960dcd4878bfdd032731acSungmin Choi * "response" is NULL
374775697538e485ea2981960dcd4878bfdd032731acSungmin Choi *
374875697538e485ea2981960dcd4878bfdd032731acSungmin Choi * Valid errors:
374975697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUCCESS
375075697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  RADIO_NOT_AVAILABLE (radio resetting)
375175697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  GENERIC_FAILURE
375275697538e485ea2981960dcd4878bfdd032731acSungmin Choi *  SUBSCRIPTION_NOT_AVAILABLE
375375697538e485ea2981960dcd4878bfdd032731acSungmin Choi */
375475697538e485ea2981960dcd4878bfdd032731acSungmin Choi#define RIL_REQUEST_SET_INITIAL_ATTACH_APN 111
375575697538e485ea2981960dcd4878bfdd032731acSungmin Choi
3756a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3757a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_REGISTRATION_STATE
3758a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3759a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Request current IMS registration state
3760a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3761a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is NULL
3762a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3763a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is int *
3764a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * ((int *)response)[0] is registration state:
3765a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              0 - Not registered
3766a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *              1 - Registered
3767a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3768865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * If ((int*)response)[0] is = 1, then ((int *) response)[1]
3769a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * must follow with IMS SMS format:
3770a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3771865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * ((int *) response)[1] is of type RIL_RadioTechnologyFamily
3772865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *
3773865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * Valid errors:
3774865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  SUCCESS
3775865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  RADIO_NOT_AVAILABLE
3776865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *  GENERIC_FAILURE
3777a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3778a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_REGISTRATION_STATE 112
3779a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
3780a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa/**
3781a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_REQUEST_IMS_SEND_SMS
3782a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3783a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Send a SMS message over IMS
3784a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3785a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "data" is const RIL_IMS_SMS_Message *
3786a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3787a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * "response" is a const RIL_SMS_Response *
3788a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3789a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Based on the return error, caller decides to resend if sending sms
3790a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
3791a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * In case of retry, data is encoded based on Voice Technology available.
3792a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3793a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Valid errors:
3794a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SUCCESS
3795a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  RADIO_NOT_AVAILABLE
3796a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  SMS_SEND_FAIL_RETRY
3797a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  FDN_CHECK_FAILURE
3798a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *  GENERIC_FAILURE
3799a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
3800a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
3801a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_REQUEST_IMS_SEND_SMS 113
3802a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
38032458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
38042458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC
38052458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38062458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Request APDU exchange on the basic channel. This command reflects TS 27.007
38072458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "generic SIM access" operation (+CSIM). The modem must ensure proper function
38082458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * of GSM/CDMA, and filter commands appropriately. It should filter
38092458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * channel management and SELECT by DF name commands.
38102458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38112458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is a const RIL_SIM_APDU *
38122458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "sessionid" field should be ignored.
38132458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38142458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is a const RIL_SIM_IO_Response *
38152458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38162458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
38172458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
38182458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
38192458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
38202458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
38212458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC 114
38222458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
38232458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
38242458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_OPEN_CHANNEL
38252458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38262458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Open a new logical channel and select the given application. This command
38272458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * reflects TS 27.007 "open logical channel" operation (+CCHO).
38282458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38292458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is const char * and set to AID value, See ETSI 102.221 and 101.220.
38302458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38312458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is int *
38322458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * ((int *)data)[0] contains the session id of the logical channel.
3833760123fc26b00aacf7a9e75eb681e7b9ce4e6560Shishir Agrawal * ((int *)data)[1] onwards may optionally contain the select response for the
3834760123fc26b00aacf7a9e75eb681e7b9ce4e6560Shishir Agrawal *     open channel command with one byte per integer.
38352458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38362458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
38372458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
38382458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
38392458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
38402458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  MISSING_RESOURCE
38412458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  NO_SUCH_ELEMENT
38422458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
38432458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_OPEN_CHANNEL 115
38442458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
38452458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
38462458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_CLOSE_CHANNEL
38472458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38482458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Close a previously opened logical channel. This command reflects TS 27.007
38492458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "close logical channel" operation (+CCHC).
38502458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38512458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is int *
38522458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * ((int *)data)[0] is the session id of logical the channel to close.
38532458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38542458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is NULL
38552458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38562458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
38572458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
38582458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
38592458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
38602458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
38612458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_CLOSE_CHANNEL 116
38622458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
38632458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal/**
38642458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL
38652458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38662458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Exchange APDUs with a UICC over a previously opened logical channel. This
38672458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * command reflects TS 27.007 "generic logical channel access" operation
38682458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * (+CGLA). The modem should filter channel management and SELECT by DF name
38692458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * commands.
38702458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38712458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "data" is a const RIL_SIM_APDU*
38722458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38732458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * "response" is a const RIL_SIM_IO_Response *
38742458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *
38752458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal * Valid errors:
38762458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  SUCCESS
38772458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  RADIO_NOT_AVAILABLE
38782458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal *  GENERIC_FAILURE
38792458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal */
38802458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal#define RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL 117
38812458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
38828a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
38838a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_READ_ITEM
38848a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
38858a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Read one of the radio NV items defined in RadioNVItems.java / ril_nv_items.h.
38868a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
38878a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
38888a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is a const RIL_NV_ReadItem *
38898a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
38908a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is const char * containing the contents of the NV item
38918a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
38928a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
38938a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
38948a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
38958a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
38968a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
38978a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_READ_ITEM 118
38988a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
38998a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
39008a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_WRITE_ITEM
39018a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39028a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Write one of the radio NV items defined in RadioNVItems.java / ril_nv_items.h.
39038a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
39048a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39058a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is a const RIL_NV_WriteItem *
39068a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39078a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is NULL
39088a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39098a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
39108a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
39118a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
39128a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
39138a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
39148a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_WRITE_ITEM 119
39158a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
39168a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
39178a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_WRITE_CDMA_PRL
39188a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39198a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Update the CDMA Preferred Roaming List (PRL) in the radio NV storage.
39208a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
39218a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39228a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is a const char * containing the PRL as a byte array
39238a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39248a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is NULL
39258a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39268a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
39278a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
39288a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
39298a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
39308a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
39318a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_WRITE_CDMA_PRL 120
39328a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
39338a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby/**
39348a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * RIL_REQUEST_NV_RESET_CONFIG
39358a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39368a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Reset the radio NV configuration to the factory state.
39378a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * This is used for device configuration by some CDMA operators.
39388a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39398a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "data" is int *
3940d27c9d58a9fc1571427e903dcd3a8d048f083535Jake Hamby * ((int *)data)[0] is 1 to reload all NV items
3941d27c9d58a9fc1571427e903dcd3a8d048f083535Jake Hamby * ((int *)data)[0] is 2 for erase NV reset (SCRTN)
3942d27c9d58a9fc1571427e903dcd3a8d048f083535Jake Hamby * ((int *)data)[0] is 3 for factory reset (RTN)
39438a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39448a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * "response" is NULL
39458a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *
39468a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby * Valid errors:
39478a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  SUCCESS
39488a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  RADIO_NOT_AVAILABLE
39498a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby *  GENERIC_FAILURE
39508a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby */
39518a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby#define RIL_REQUEST_NV_RESET_CONFIG 121
39528a4a233bb9503eddee83569e647c25099a8e15b3Jake Hamby
3953d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen /** RIL_REQUEST_SET_UICC_SUBSCRIPTION
3954d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * FIXME This API needs to have more documentation.
3955d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3956d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * Selection/de-selection of a subscription from a SIM card
3957d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" is const  RIL_SelectUiccSub*
3958d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
3959d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3960d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "response" is NULL
3961d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3962d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  Valid errors:
3963d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  SUCCESS
3964d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  RADIO_NOT_AVAILABLE (radio resetting)
3965d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  GENERIC_FAILURE
3966d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  SUBSCRIPTION_NOT_SUPPORTED
3967d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3968d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
3969d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_REQUEST_SET_UICC_SUBSCRIPTION  122
3970d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
3971d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
3972d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  RIL_REQUEST_ALLOW_DATA
3973d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3974d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  Tells the modem whether data calls are allowed or not
3975d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3976d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" is int *
3977d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * FIXME slotId and aid will be added.
3978d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * ((int *)data)[0] is == 0 to allow data calls
3979d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * ((int *)data)[0] is == 1 to disallow data calls
3980d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3981d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "response" is NULL
3982d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3983d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  Valid errors:
3984d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3985d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  SUCCESS
3986d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  RADIO_NOT_AVAILABLE (radio resetting)
3987d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  GENERIC_FAILURE
3988d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3989d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
3990d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_REQUEST_ALLOW_DATA  123
3991d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
3992d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
3993d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * RIL_REQUEST_GET_HARDWARE_CONFIG
3994d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3995d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * Request all of the current hardware (modem and sim) associated
3996d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * with the RIL.
3997d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
3998d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" is NULL
3999d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4000d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "response" is an array of  RIL_HardwareConfig.
4001d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
4002d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_REQUEST_GET_HARDWARE_CONFIG 124
4003d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4004d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
40052b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan * RIL_REQUEST_SIM_AUTHENTICATION
4006d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4007d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * Returns the response of SIM Authentication through RIL to a
4008d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * challenge request.
4009d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4010d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" Base64 encoded string containing challenge:
4011d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *      int   authContext;          P2 value of authentication command, see P2 parameter in
4012d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *                                  3GPP TS 31.102 7.1.2
4013d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *      char *authData;             the challenge string in Base64 format, see 3GPP
4014d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *                                  TS 31.102 7.1.2
4015d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *      char *aid;                  AID value, See ETSI 102.221 8.1 and 101.220 4,
4016d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *                                  NULL if no value
4017d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4018d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "response" Base64 encoded strings containing response:
4019d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *      int   sw1;                  Status bytes per 3GPP TS 31.102 section 7.3
4020d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *      int   sw2;
4021d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *      char *simResponse;          Response in Base64 format, see 3GPP TS 31.102 7.1.2
4022d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
40232b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan#define RIL_REQUEST_SIM_AUTHENTICATION 125
40242458d8d1e56faae7b00511ceeab19730572c22d9Shishir Agrawal
4025c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville/**
4026c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * RIL_REQUEST_GET_DC_RT_INFO
4027c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4028c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * Requests the Data Connection Real Time Info
4029c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4030c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * "data" is NULL
4031c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4032c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * "response" is the most recent RIL_DcRtInfo
4033c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4034c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * Valid errors:
4035c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *  SUCCESS
4036c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *  RADIO_NOT_AVAILABLE
4037c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *  GENERIC_FAILURE
4038c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4039c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * See also: RIL_UNSOL_DC_RT_INFO_CHANGED
4040c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville */
4041c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville#define RIL_REQUEST_GET_DC_RT_INFO 126
4042c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville
4043c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville/**
4044c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * RIL_REQUEST_SET_DC_RT_INFO_RATE
4045c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4046c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * This is the minimum number of milliseconds between successive
4047c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * RIL_UNSOL_DC_RT_INFO_CHANGED messages and defines the highest rate
4048c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * at which RIL_UNSOL_DC_RT_INFO_CHANGED's will be sent. A value of
4049c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * 0 means send as fast as possible.
4050c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4051c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * "data" The number of milliseconds as an int
4052c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4053c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * "response" is null
4054c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4055c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * Valid errors:
4056c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *  SUCCESS must not fail
4057c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville */
4058c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville#define RIL_REQUEST_SET_DC_RT_INFO_RATE 127
4059c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville
4060c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan/**
4061c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * RIL_REQUEST_SET_DATA_PROFILE
4062c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan *
4063c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * Set data profile in modem
4064c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * "data" is an const RIL_DataProfileInfo **
4065c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * "datalen" is count * sizeof(const RIL_DataProfileInfo *)
4066c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * "response" is NULL
4067c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan *
4068c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan * Valid errors:
4069c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan *  SUCCESS
4070c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan *  RADIO_NOT_AVAILABLE (radio resetting)
4071c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan *  GENERIC_FAILURE
4072c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan *  SUBSCRIPTION_NOT_AVAILABLE
4073c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan */
4074c796e22cf8402452b325ffbf9686a4c985a611e3Amit Mahajan#define RIL_REQUEST_SET_DATA_PROFILE 128
4075a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla
4076a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla/**
4077a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla * RIL_REQUEST_SHUTDOWN
4078a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla *
4079a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla * Device is shutting down. All further commands are ignored
4080a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla * and RADIO_NOT_AVAILABLE must be returned.
4081a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla *
4082a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla * "data" is null
4083a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla * "response" is NULL
4084a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla *
4085a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla * Valid errors:
4086a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla *  SUCCESS
4087a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla *  RADIO_NOT_AVAILABLE
4088a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla *  GENERIC_FAILURE
4089a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla */
4090a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla#define RIL_REQUEST_SHUTDOWN 129
4091a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla
4092a65a16a2e81b11762fd9e4233e1a212effcfee82Naveen Kalla
409300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
409400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
409600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
409700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
409800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
409900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
410000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
410100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
410200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
410300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
410400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
410500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
410600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
410700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
410800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
410900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
411000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
411100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
411200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
411300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
411400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
411500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
411600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
411700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
411800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
411900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
412100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
412200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
412300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
412400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
412500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
412600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
412700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
412800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
412900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
4130c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED
413100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
4132c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when the voice network state changed
413300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
413400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
413500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
4136c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_REQUEST_VOICE_REGISTRATION_STATE
413700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
413800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
413900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
414000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
414100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
414200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
414300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
4144c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED 1002
414500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
414600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
414700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
414800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
414900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
41507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
415100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
415200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
415300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
415400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
415500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
415600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
415700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
415800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
416000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
416100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
416200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
416300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
416400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
416500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
416600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
416700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
416800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
416900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
41707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
417100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
417200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
417300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
417400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
417500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
417600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
417700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
417800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
418000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
418100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
418200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
418300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
418400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
418500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
418600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
418700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
418800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
418900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
41907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
419100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
419200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
419300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
419400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
419500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
419600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
419700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
419800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
419900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
420000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
420100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
420200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
420300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
42047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
420500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
420600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
420700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
420800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
420900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
421000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
421100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
421200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
421300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
421400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
421500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
421600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
421700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
421800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
421900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
422000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
422100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
422200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
422300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
422400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
422500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
422600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
42277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
422800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
422900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
423000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
423100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
423200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
423300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
423400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
423500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
423600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
423700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
423800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
423900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
424000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
424100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
424200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
424300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
424400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
42451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
424600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
424700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
424800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
424900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
425000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
4251f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
425200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
4253c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is an array of RIL_Data_Call_Response_v6 identical to that
425429487ef2685e5ee38f0348ab031cb96a608296baWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST. It is the complete list
425529487ef2685e5ee38f0348ab031cb96a608296baWink Saville * of current data contexts including new contexts that have been
425629487ef2685e5ee38f0348ab031cb96a608296baWink Saville * activated. A data call is only removed from this list when the
425729487ef2685e5ee38f0348ab031cb96a608296baWink Saville * framework sends a RIL_REQUEST_DEACTIVATE_DATA_CALL or the radio
425829487ef2685e5ee38f0348ab031cb96a608296baWink Saville * is powered off/on.
425900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
4260f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
426100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
426200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4263f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
426400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
426500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
426600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
426700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
426800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
426900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
427000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
427100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
427200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
427300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
427400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
427500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
427600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
427700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
427800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
427900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
428000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
428100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
428200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
428300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
428400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
428500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
428600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
428700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
428800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
428900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
429100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
429200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
429400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
429500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
429600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
429700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
429800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
429900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
430000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
430100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
430200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
430300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
430400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
430500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
430600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
430700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
430800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
430900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
431000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
431100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
431200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
431300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
431400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
431500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
431600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
431700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
431800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
431900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
432000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
432100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
432200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
432300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
432400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
432500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
432600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
432700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
432800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
432900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
433000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
433100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
433200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
433300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
433400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
433500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
433600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
433700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
433800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
433945e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 6 or older:
434000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
434100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
434200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
434345e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * SIM_FILE_UPDATE or NULL for any other result.
434445e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka *
434545e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * In the case where RIL is version 7:
434645e740ef3c422bf75aadca21f98614fc120f49fbAlex Yakavenka * "data" is a RIL_SimRefreshResponse_v7 *
434700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43482bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Note: If the SIM state changes as a result of the SIM refresh (eg,
43492bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
435000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
435100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
435200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
435300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
435400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
435500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
435600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
435700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
43586453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
43596453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
43606453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
43616453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
43626453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
43636453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
43646453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
43656453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
43666453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
436700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43683d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
43693d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
437000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
437100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
437200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
437334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
437434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
437534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
437634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
43773d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
437834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
4379f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
438034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
438134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
438234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
438334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
438434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
438534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
438634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
438734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
43883d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
438934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
43903d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
439134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
439234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
43933d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
439434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
439534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
43963d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
439734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
439834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
439934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
440034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
440134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
440234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
440334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
44047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
44050eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * "data" can be one of the following:
44060eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from GSM network, "data" is const char of 88 bytes
44070eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * which indicates each page of a CBS Message sent to the MS by the
44080eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * BTS as coded in 3GPP 23.041 Section 9.4.1.2.
44090eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * If received from UMTS network, "data" is const char of 90 up to 1252
44100eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * bytes which contain between 1 and 15 CBS Message pages sent as one
44110eba2026fd78f61e77a6adfece793cfaca92047cHenrik Hall * packet to the MS by the BTS as coded in 3GPP 23.041 Section 9.4.2.2.
4412f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
441334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
441434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
4415f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
441634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
441734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
441834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
441934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
442034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
442134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
442234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
4423f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
442434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
4425f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
4426f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
442734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
442834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
442934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
443034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
443134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
443234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
443334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
443434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
443534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
443634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
443734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
443834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
44391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
44401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
44411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
44431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
44441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
44461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
44481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
44491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
44501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
44511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
44521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
44541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
44567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
44571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
44581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
445934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
44601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
44611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
44621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
44641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
44651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
44671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
44681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
44691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
44711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
44721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
44731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
44741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
44751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
44771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
44791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
44801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
44811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
448234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
4483af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
4484af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
4485af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
4486af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
4487af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
4488af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
4489af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
4490af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
4491af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
44925d621da539abea83309d77317ede40126f47d5f0John Wang/**
44935d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
44945d621da539abea83309d77317ede40126f47d5f0John Wang *
44955d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
44965d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
44975d621da539abea83309d77317ede40126f47d5f0John Wang *
44985d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
44995d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
45005d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
45015d621da539abea83309d77317ede40126f47d5f0John Wang */
45025d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
45035d621da539abea83309d77317ede40126f47d5f0John Wang
45045909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
45055909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
45065909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
45075909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
45085909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
45095909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
45105909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
45115909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
45125909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
45135909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
45145909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
4515c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4516c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4517c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED
4518c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4519c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when CDMA subscription source changed.
4520c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4521c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4522c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is == RIL_CdmaSubscriptionSource
4523c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
452429487ef2685e5ee38f0348ab031cb96a608296baWink Saville#define RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED 1031
4525c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4526c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4527c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_CDMA_PRL_CHANGED
4528c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4529c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when PRL (preferred roaming list) changes.
4530c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4531c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is int *
4532c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * ((int *)data)[0] is PRL_VERSION as would be returned by RIL_REQUEST_CDMA_SUBSCRIPTION
4533c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4534c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_CDMA_PRL_CHANGED 1032
4535c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
4536c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville/**
4537c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE
4538c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4539c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Called when Emergency Callback Mode Ends
4540c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4541c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * Indicates that the radio system selection module has
4542c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * proactively exited emergency callback mode.
4543c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4544c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville * "data" is NULL
4545c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville *
4546c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville */
4547c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville#define RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE 1033
4548c0114b325877907fcdf7a5baa24e54a752e7e58bWink Saville
45495b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville/**
45505b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * RIL_UNSOL_RIL_CONNECTED
45515b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
45525b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * Called the ril connects and returns the version
45535b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville *
45545b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * "data" is int *
45555b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville * ((int *)data)[0] is RIL_VERSION
45565b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville */
45575b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville#define RIL_UNSOL_RIL_CONNECTED 1034
45585b9df33c53682addaebc0b6073901a8b441d82f9Wink Saville
45592bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla/**
45602bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * RIL_UNSOL_VOICE_RADIO_TECH_CHANGED
45612bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
45622bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * Indicates that voice technology has changed. Contains new radio technology
45632bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * as a data in the message.
45642bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
45652bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * "data" is int *
45662bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla * ((int *)data)[0] is of type const RIL_RadioTechnology
45672bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla *
45682bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla */
45692bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla#define RIL_UNSOL_VOICE_RADIO_TECH_CHANGED 1035
45702bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
45718a9e02161271505de274db0c3a88087056dd5dfcWink Saville/**
45728a9e02161271505de274db0c3a88087056dd5dfcWink Saville * RIL_UNSOL_CELL_INFO_LIST
45738a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
45748a9e02161271505de274db0c3a88087056dd5dfcWink Saville * Same information as returned by RIL_REQUEST_GET_CELL_INFO_LIST, but returned
45758a9e02161271505de274db0c3a88087056dd5dfcWink Saville * at the rate no greater than specified by RIL_REQUEST_SET_UNSOL_CELL_INFO_RATE.
45768a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
45778a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "data" is NULL
45788a9e02161271505de274db0c3a88087056dd5dfcWink Saville *
45798a9e02161271505de274db0c3a88087056dd5dfcWink Saville * "response" is an array of RIL_CellInfo.
45808a9e02161271505de274db0c3a88087056dd5dfcWink Saville */
45818a9e02161271505de274db0c3a88087056dd5dfcWink Saville#define RIL_UNSOL_CELL_INFO_LIST 1036
45822bc78d614e349574426d198c37e51ccb7455b5bbNaveen Kalla
4583865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville/**
4584a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED
4585a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4586a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa * Called when IMS registration state has changed
4587a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4588865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * To get IMS registration state and IMS SMS format, callee needs to invoke the
4589865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * following request on main thread:
4590a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4591865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * RIL_REQUEST_IMS_REGISTRATION_STATE
4592865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville *
4593865ce3b4a2ba0b3a31421ca671f4d6c5595f8690Wink Saville * "data" is NULL
4594a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa *
4595a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa */
4596a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa#define RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED 1037
4597a18b9d1e1a014290691d63a7f335085dadc83e46Sukanya Rajkhowa
4598d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
4599d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED
4600d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4601d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * Indicated when there is a change in subscription status.
4602d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * This event will be sent in the following scenarios
4603d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  - subscription readiness at modem, which was selected by telephony layer
4604d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  - when subscription is deactivated by modem due to UICC card removal
4605d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *  - When network invalidates the subscription i.e. attach reject due to authentication reject
4606d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4607d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" is const int *
4608d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * ((const int *)data)[0] == 0 for Subscription Deactivated
4609d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * ((const int *)data)[0] == 1 for Subscription Activated
4610d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4611d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
4612d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED 1038
4613d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4614d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
4615d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * RIL_UNSOL_SRVCC_STATE_NOTIFY
4616d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4617d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * Called when Single Radio Voice Call Continuity(SRVCC)
4618d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * progress state has changed
4619d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4620d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" is int *
4621d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * ((int *)data)[0] is of type const RIL_SrvccState
4622d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4623d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
4624d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4625d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_UNSOL_SRVCC_STATE_NOTIFY 1039
4626d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4627d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
4628d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * RIL_UNSOL_HARDWARE_CONFIG_CHANGED
4629d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4630d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * Called when the hardware configuration associated with the RILd changes
4631d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4632d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * "data" is an array of RIL_HardwareConfig
4633d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4634d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
4635d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#define RIL_UNSOL_HARDWARE_CONFIG_CHANGED 1040
4636d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4637c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville/**
4638c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * RIL_UNSOL_DC_RT_INFO_CHANGED
4639c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4640c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * Sent when the DC_RT_STATE changes but the time
4641c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * between these messages must not be less than the
4642c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * value set by RIL_REQUEST_SET_DC_RT_RATE.
4643c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4644c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville * "data" is the most recent RIL_DcRtInfo
4645c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville *
4646c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville */
4647c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville#define RIL_UNSOL_DC_RT_INFO_CHANGED 1041
4648c29360a92ad603fcec008c098cbbed47e3399dc8Wink Saville
464900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
465000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4651d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if defined(ANDROID_MULTI_SIM)
4652d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
4653d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * RIL_Request Function pointer
4654d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4655d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param request is one of RIL_REQUEST_*
4656d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param data is pointer to data defined for that RIL_REQUEST_*
4657d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *        data is owned by caller, and should not be modified or freed by callee
4658d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param t should be used in subsequent call to RIL_onResponse
4659d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param datalen the length of data
4660d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *
4661d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
4662d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef void (*RIL_RequestFunc) (int request, void *data,
4663d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                    size_t datalen, RIL_Token t, RIL_SOCKET_ID socket_id);
4664d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4665d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
4666d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * This function should return the current radio state synchronously
4667d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
4668d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohentypedef RIL_RadioState (*RIL_RadioStateRequest)(RIL_SOCKET_ID socket_id);
4669d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4670d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#else
4671d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/* Backward compatible */
467200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
467300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
467400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
467500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
467600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
467700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
467800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
467900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
468000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
468100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
468200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
46837f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
468400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
468500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
468600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
468700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
468800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
468900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
469000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4691d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
4692d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
4693d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen
469400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
469500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
469600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
469700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
469800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
469900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
470000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
470100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
470200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
470300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
47047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
470500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
470600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
47077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
470800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
470900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
471000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
471100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
471200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
471300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
471400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
471500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
471600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
47177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
471800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
471900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
472000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
472100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
472200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
472300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
472400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
472500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
472600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
472700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
472800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
472900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
473000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
473100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
473200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
473300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
473400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
473500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
473600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
473700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
473800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
473900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
474000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
474175697538e485ea2981960dcd4878bfdd032731acSungmin Choitypedef struct {
474275697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *apn;
474375697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *protocol;
474475697538e485ea2981960dcd4878bfdd032731acSungmin Choi    int authtype;
474575697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *username;
474675697538e485ea2981960dcd4878bfdd032731acSungmin Choi    char *password;
474775697538e485ea2981960dcd4878bfdd032731acSungmin Choi} RIL_InitialAttachApn;
474875697538e485ea2981960dcd4878bfdd032731acSungmin Choi
47492b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajantypedef struct {
47502b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan    int authContext;            /* P2 value of authentication command, see P2 parameter in
47512b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan                                   3GPP TS 31.102 7.1.2 */
47522b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan    char *authData;             /* the challenge string in Base64 format, see 3GPP
47532b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan                                   TS 31.102 7.1.2 */
47542b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan    char *aid;                  /* AID value, See ETSI 102.221 8.1 and 101.220 4,
47552b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan                                   NULL if no value. */
47562b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan} RIL_SimAuthentication;
47572b77203b8c64e5bfa848303df7328d015069f8c7Amit Mahajan
475800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
475900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
476000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
476100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
476200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
476300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
476400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
476500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
47667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
476700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
476800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
476900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
477000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
47717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
477200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
477300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4774d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if defined(ANDROID_MULTI_SIM)
477500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
477600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
477700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
477800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
477900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
478000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
4781d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data, size_t datalen, RIL_SOCKET_ID socket_id);
4782d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#else
4783d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    /**
4784d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
4785d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
4786d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     *
4787d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     * "data" is owned by caller, and should not be modified or freed by callee
4788d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen     */
4789d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data, size_t datalen);
4790d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
479100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
47927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
479300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
479400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
479500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
479600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
479700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
479800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
47990d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
48007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
480100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
480200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
480300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
48047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
48057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
480600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
480700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
480800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
480900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
481000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
481100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
481200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
481300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
481400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
481500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
481600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
481700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
481800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
481900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
482000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
482100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
482200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
482300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
482400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
482500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
482600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
482700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
482800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
482900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
483000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
48313d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
483200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
483300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
483400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
483500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
483600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
483700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
48387f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
483900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
484000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4841d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#if defined(ANDROID_MULTI_SIM)
484200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
484300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
484400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
484500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
484600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
484700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
484800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
48497f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
4850d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                size_t datalen, RIL_SOCKET_ID socket_id);
4851d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#else
4852d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen/**
4853d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
4854d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
4855d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen *     "data" is owned by caller, and should not be modified or freed by callee
4856d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen * @param datalen the length of data in byte
4857d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen */
485800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4859d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohenvoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
4860d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen                                size_t datalen);
4861d365219a1873e42d2ff669e13a9fe6ce6973bd51Etan Cohen#endif
486200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
486300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
48647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
486500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
486600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
486700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
486800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
486900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
487000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
487100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
487200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
487300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
487400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
48750d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
48760d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
487700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
487800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
487900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
488000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
488100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
488200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
488300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
488400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
488500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
4886