ril.h revision 4f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83
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
171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville /* ISSUES:
1800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * - SMS retransmit (specifying TP-Message-ID)
1900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TODO
2400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supp Service Notification (+CSSN)
2600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GPRS PDP context deactivate notification
277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#ifndef ANDROID_RIL_H
3200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define ANDROID_RIL_H 1
3300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <stdlib.h>
35f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#ifndef FEATURE_UNIT_TEST
3600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
37f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#endif /* !FEATURE_UNIT_TEST */
3800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
4000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
4100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
4200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
434f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti#define RIL_VERSION 4
4400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
45a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
46a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
47a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville
4800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
4900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
5000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
5100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
5200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
5300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
5400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
5500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
5600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
5700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
5800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
5900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
6000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
6100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
6200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
633d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SMS_SEND_FAIL_RETRY = 10,             /* fail to send sms and need retry */
643d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SIM_ABSENT = 11,                      /* fail to set the location where CDMA subscription
653d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                                   shall be retrieved because of SIM or RUIM
66f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   card absent */
673d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_E_SUBSCRIPTION_NOT_AVAILABLE = 12,      /* fail to find CDMA subscription from specified
68f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                   location */
69602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_MODE_NOT_SUPPORTED = 13,              /* HW does not support preferred network type */
707553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_FDN_CHECK_FAILURE = 14,               /* command failed because recipient is not on FDN list */
717553447d44bb3f494b00d573215d81398f61cfcdJohn Wang    RIL_E_ILLEGAL_SIM_OR_ME = 15                /* network selection failed due to
727553447d44bb3f494b00d573215d81398f61cfcdJohn Wang                                                   illegal SIM or ME */
7300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
7400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
7600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
7700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
7800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
7900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
8000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
8100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
8200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
8300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
8400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
85f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
86f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
87f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
89f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
90f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
91f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
92f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
94f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
95f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
96f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_READY = 9               /* Radio is on and the NV interface is available */
9700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
9800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
9974fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
10074fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
10174fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_IMPLICIT = 0,
10274fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_REQUIRED = 1,
10374fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE1_NOT_REQUIRED = 2,
10474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_REQUIRED = 3,
10574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE2_NOT_REQUIRED = 4,
10674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_REQUIRED = 5,
10774fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_TYPE3_NOT_REQUIRED = 6
10874fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Type;
10974fa38884320698c1623764850e3131b9769dff0Wink Saville
11074fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information data coding schemes. Possible values for
11174fa38884320698c1623764850e3131b9769dff0Wink Saville * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
11274fa38884320698c1623764850e3131b9769dff0Wink Saville * specified in section 10.5.4.25 of 3GPP TS 24.008 */
11374fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef enum {
11474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_USP = 0,          /* User specified protocol */
11574fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_OSIHLP = 1,       /* OSI higher layer protocol */
11674fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_X244 = 2,         /* X.244 */
11774fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_RMCF = 3,         /* Reserved for system mangement
11874fa38884320698c1623764850e3131b9769dff0Wink Saville                                     convergence function */
11974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_DCS_IA5c = 4          /* IA5 characters */
12074fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_DCS;
12174fa38884320698c1623764850e3131b9769dff0Wink Saville
12274fa38884320698c1623764850e3131b9769dff0Wink Saville/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
12374fa38884320698c1623764850e3131b9769dff0Wink Saville * This data is passed in RIL_ExtensionRecord and rec contains this
12474fa38884320698c1623764850e3131b9769dff0Wink Saville * structure when type is RIL_UUS_INFO_EXT_REC */
12574fa38884320698c1623764850e3131b9769dff0Wink Savilletypedef struct {
12674fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_Type    uusType;    /* UUS Type */
12774fa38884320698c1623764850e3131b9769dff0Wink Saville  RIL_UUS_DCS     uusDcs;     /* UUS Data Coding Scheme */
12874fa38884320698c1623764850e3131b9769dff0Wink Saville  int             uusLength;  /* Length of UUS Data */
12974fa38884320698c1623764850e3131b9769dff0Wink Saville  char *          uusData;    /* UUS Data */
13074fa38884320698c1623764850e3131b9769dff0Wink Saville} RIL_UUS_Info;
13174fa38884320698c1623764850e3131b9769dff0Wink Saville
13274fa38884320698c1623764850e3131b9769dff0Wink Saville/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
1331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
15474fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
15500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
15600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
15700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
15800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             cid;        /* Context ID */
1591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
1604f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          type;       /* One of the PDP_type values in TS 27.007 section 10.1.1.
1614f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   For example, "IP", "IPV6", "IPV4V6", or "PPP". */
16200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          apn;
1634f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti    char *          address;    /* A space-delimited list of addresses, e.g., "192.0.1.3" or
1644f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti                                   "192.0.1.11 2001:db8::1". */
165f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_Data_Call_Response;
16600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
16700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1688e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
1698e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
1708e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
17100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
172920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
173920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
174920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
17500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
17600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
17700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
17800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
17900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
18000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
18100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
18200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
18300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
184f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
185f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
18600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
18700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
18800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
18900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
19000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
19100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
19200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
19300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
19400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
19500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
19600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
19700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
19800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
19974fa38884320698c1623764850e3131b9769dff0Wink Saville    RIL_UUS_Info *  uusInfo;    /* NULL or Pointer to User-User Signaling Information */
20000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
20100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
20200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
20300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
20400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
20500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
20600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
2071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
20800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
20900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
21000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
21100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
21200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
21300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
21400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO;
21500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
21600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
21700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
21800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
21900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
22000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
22100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
22200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
22300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
22400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
22500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
22600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
22700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
22800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
22900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
23000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
23100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
23200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
23300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
23400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
23500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
23600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
23700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2383d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
2393d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
2403d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
2413d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
2423d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
2433d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
2443d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
2453d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
24600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
24700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
24800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
249e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
250e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
251e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
25200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
2537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
254e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
25500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
256e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
257e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
25800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
25900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
26000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
26100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
26200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
2631b3a6fe083ff049db50c3e6612ba6ccd9062326aNaveen Kalla    CALL_FAIL_UNOBTAINABLE_NUMBER = 1,
26400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
26600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
26800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
270602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
271602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
2721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
2731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
2741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
2751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
2761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
2771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
2781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
2791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
2801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
2811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
28203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
28300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
28400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
28500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
286f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
288d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
289d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
290d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
291d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
292d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
293d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
294d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
295d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
296d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
297d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
298d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_NSAPI_IN_USE      = 0x23,             /* no retry */
299d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
300d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* This and all other cases: retry silently */
301d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
302d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_REGISTRATION_FAIL = -1,
303d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_GPRS_REGISTRATION_FAIL = -2,
304f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_LastDataCallActivateFailCause;
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
306602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
307602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
308602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
309602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
310602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
311602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
312602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
31300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
31400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
31500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
31600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
31700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
31800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
31900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
32000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
32100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
32200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
32300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
32400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
32500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
32600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
32700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
328f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
329f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
330f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
331f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
332f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
333f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
334f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
335f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
336f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
337f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
338f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
3397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
3407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
341f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
342f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
343f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
344f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
345f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
346f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
347f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
348f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
349f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
350f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
351f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
352f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
353f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
354f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
355f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
356f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
357f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
359f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
360f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
361f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
362f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
363f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
364f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
365f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
366f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
367f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
368f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
369f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
370f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
3717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
372f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
373f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
374f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
375f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
376f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
377f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
378f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
379f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
380f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
381f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
382f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
383f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
384f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
385f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
386f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
387f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
388f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
389f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
390f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_CSIM    = 4
391f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
392f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
393f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
394f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
3957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
3967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
3977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
398f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
3997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
400f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
401f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
402f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int              pin1_replaced;   /* applicable to USIM and CSIM */
4037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
4047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
405f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
406f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
407f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
408f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
4097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
410f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
411f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS */
412f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS */
413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
414f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
415f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardStatus;
416f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
41700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH */
41800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
41900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
42000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
42100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM initialized.  All files should be re-read. */
42200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
42300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
42400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
42500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
42600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
4291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
4301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
4313d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
4321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_CallWaiting;
4331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
434a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
435a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
436a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
437a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
438a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
439a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
440a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
441a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
442a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
443a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
444a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
445a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
446a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
447a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
448a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
449a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
450a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
451a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
452a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
453f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
454a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
455a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
456a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
457a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
458a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
459a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
46134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
46234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
46334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
46434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
46534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
46634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
467a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
46834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
46934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
47034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
47134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
4721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
4731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
4741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
4751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
4761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
4771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
4781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
4791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
4801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
4811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
4821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
4831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
4841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
4851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
4861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
4871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
4901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
4911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
4921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
4961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
4971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
4981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
4991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
5001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
5011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
5021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
5031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
5041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
5081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
5091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
5101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
5111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
5121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
5131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
5141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
5151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
5161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
5171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
5211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
5221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
5231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_SignalStrength;
5241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
5261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
5271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
5281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
5291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
5301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
5311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
5321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
5331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
5341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
5351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
5361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
5371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
5381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
5391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
5411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
5421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
5431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
5441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
5451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
5461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
5471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
5481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
551a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
5521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
5531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
5551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
5561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
5571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
5581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
561a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
5621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
5631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
5641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
5651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
5661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
5671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
5691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
5701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
5711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
5721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
5731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
5741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
5751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
5761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
5771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
5781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
5811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
5821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
5831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
5841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
5861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
5881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
5891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
5901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
5911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
5921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
5941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
5961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
5971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
5991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
6011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
6021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
6031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
6071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
6091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
6101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
6111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
6131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
6141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
6161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
6171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
6191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
6201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
6221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
6231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
6251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
6261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
6281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
6291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
6301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
6311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
6331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
6351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
6361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
6371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
6381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
6397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
64000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
64100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
64200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
6437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
64400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
64500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
646f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const RIL_CardStatus *
64700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
64800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
64900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
65000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
65100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
65200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
65300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
65400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
65500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
656309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
65700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
65800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
65900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
66000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
661593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
662593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
66300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
66400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
6657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
6667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
66700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
66800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
66900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
67000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
67100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
67200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
67300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
67400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
67500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
67600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
67700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
6787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
67900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
68000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
68100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
68200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
68300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
684593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
685593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
68600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
68700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
6887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
6897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
69000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
69100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
69200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
69300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
69400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
69500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
69600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
69700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
69800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
69900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
70000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
70100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
70200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
70300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
70400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
70500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
70600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
707593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
708593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
70900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
71000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
71300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
71400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
71500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
71600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
71700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
71800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
71900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
72000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
72100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
72200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
7237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
72400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
72500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
72600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
72700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
72800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
729593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
730593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
73100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
73200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
73500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
73600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
73700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
73800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
73900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
74000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
74100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
74200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
74300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
74400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
74500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
7467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
74700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
74800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
74900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
75000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
75100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
752593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
753593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
75400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
75500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
75800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
75900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
76000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
76100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
7627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
76300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
76400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
76500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
76600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
76700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
76800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
76900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
77000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
7717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
77200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
77300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
77400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
77500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
77600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
777593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
778593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
77900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
78000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
78300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
78400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
78500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
78600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
7877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
78800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
78900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
79100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
79300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
79400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
79600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
79800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
79900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
800593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
801593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
80200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
80300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
80600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
80700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
80800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
80900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
81000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
81100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
81200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
81300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
81400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
8157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
81600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
81800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
82000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
82100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
8227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
82300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
8257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
82600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
82700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
82800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
82900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
83000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
83100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
83200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
83300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
8347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
83500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
83600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
83800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
84000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
8417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
84200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
84300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8457f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
84600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
84700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
84800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
84900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
85000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
85100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
85200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
85300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
85500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only valid when radio state is "RADIO_STATE_SIM_READY"
85700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
85900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
86000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
86300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
86400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
86500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
86600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
86800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
87000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
87100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
87300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
87600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
87800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
88100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
88200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
88300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
88400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
88500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
88600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
88700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
88800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
88900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
89100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
89300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
89400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
89700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
89800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
89900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
90000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
90200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
90400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
90500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
90700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
90900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
91000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
91100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
91300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
91400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
91500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
91600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
91800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
92000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
92100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
92300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
92500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
92700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
92900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
93000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
93100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
93200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
93300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
93400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
93500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
93700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
93800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
94100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
94200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
94300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
94400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
94600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
94700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
94900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
95000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
95200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
95300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
95400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
95500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
95800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
95900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
96000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
96100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
96200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
96300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
96400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
96500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
96700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
96800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
97000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
97100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
97400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
97600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
97700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
97900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
98000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
98100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
98300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
98500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
9861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
98703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
98803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
98903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
99234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
99334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
99400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
99500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
99600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
99700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
100000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
100100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
100200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
100300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1004f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
100600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
100700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
10161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
10171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
101800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
102000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
102200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
10243d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
102600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_REGISTRATION_STATE
102700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
1032f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
10331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
10341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1035f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
10361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
10371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
1038f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
1039f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1040f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
10417f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             10 - Same as 0, but indicates that emergency calls
10427f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
10437f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             12 - Same as 2, but indicates that emergency calls
10447f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
10457f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             13 - Same as 3, but indicates that emergency calls
10467f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
10477f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *             14 - Same as 4, but indicates that emergency calls
10487f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *                  are enabled.
10497f8ded1d8a337b6860dd7329b8a1be0ade4ea290John Wang *
10501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
10511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
10521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
10531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
10541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
10551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
10561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
10571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
10581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
1059f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[3] indicates the available radio technology 0-7,
10601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                  0 - Unknown, 1 - GPRS, 2 - EDGE, 3 - UMTS,
10611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                  4 - IS95A, 5 - IS95B, 6 - 1xRTT,
10623a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *                                  7 - EvDo Rev. 0, 8 - EvDo Rev. A,
1063bdbc6b00454c6d634746578bd851cc33cdfe5318Naveen Kalla *                                  9 - HSDPA, 10 - HSUPA, 11 - HSPA,
1064bdbc6b00454c6d634746578bd851cc33cdfe5318Naveen Kalla *                                  12 - EVDO Rev B
10651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
10661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
106729be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
10681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
10691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
107036b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              latitude is a decimal number as specified in
107136b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
107236b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -1296000
107336b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 1296000, both values inclusive (corresponding
107436b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to a range of -90� to +90�).
10751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
10761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
107736b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              longitude is a decimal number as specified in
107836b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              3GPP2 C.S0005-A v6.0. It is represented in
107936b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              units of 0.25 seconds and ranges from -2592000
108036b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to 2592000, both values inclusive (corresponding
108136b721c2fcbc98885a4ccd04ddf50dd690142d5eNaveen Kalla *                              to a range of -180� to +180�).
10821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
10831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
10841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
10851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
10861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
10871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
10881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
10891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
10901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
109103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
10921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
10931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
109403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
10951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
10961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
109703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
10981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
10991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
11001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1101602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1102602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1103602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1104602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1105602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1106602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1107602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1108602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1109602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1110602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1111602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1112602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
111329be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
1114ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh * ((const char **)response)[14] is the Primary Scrambling Code of the current
1115ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               cell as described in TS 25.331, in hexadecimal
1116ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               format, or NULL if unknown or not registered
1117ca5e347ce4b2b51385c4b7395d51c30498c41a6bjsh *                               to a UMTS network.
11181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
11191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
112100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
11231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
11241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
11251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
112600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_REGISTRATION_STATE 20
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GPRS_REGISTRATION_STATE
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current GPRS registration state
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
113900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
11403a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[3] indicates the available radio technology, where:
114400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      0 == unknown
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      1 == GPRS only
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      2 == EDGE
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      3 == UMTS
11483a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *      9 == HSDPA
11493a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *      10 == HSUPA
11503a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *      11 == HSPA
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
11557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
11567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
115700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
116100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
116200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GPRS_REGISTRATION_STATE 21
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
11737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
11807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
118500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
118600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
119300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
119500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
120200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
120300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
120400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
121500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
121600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1217602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
121800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
12197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
122100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
122500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
122600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
122700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
122900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
123100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
123200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
123300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
123400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
12357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
123600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
123700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
123900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
124000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
124100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
124200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
124300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
124400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
124600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
12487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
124900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
125200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
125300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
125400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1255602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
125600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
125900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
126000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
126100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
12657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
126600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
126700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
126800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
126900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
127200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
127300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
127400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
127500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
127600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
12807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
128500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
128600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
128700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
129100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1294f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1296f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Setup a packet data connection
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
12997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] indicates whether to setup connection on radio technology CDMA
1300f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                              or GSM/UMTS, 0-1. 0 - CDMA, 1-GSM/UMTS
13017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
1302602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
13037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1304f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1305f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1306f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1307920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1308920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1309920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1310920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1311920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
13124f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti * ((const char **)data)[6] is the PDP type to request if the radio technology is GSM/UMTS.
13134f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          Must be one of the PDP_type values in TS 27.007 section 10.1.1.
13144f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti *                          For example, "IP", "IPV6", "IPV4V6", or "PPP".
131500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char **
13177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((char **)response)[0] indicating PDP CID, which is generated by RIL. This Connection ID is
1318f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          used in GSM/UMTS and CDMA
1319f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char **)response)[1] indicating the network interface name for GSM/UMTS or CDMA
13204f81dcf2a9bc84cbfbb6d3d658c452c22e9b6e83Lorenzo Colitti * ((char **)response)[2] a space-separated list of IP addresses for this interface for GSM/UMTS
1321f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          and NULL for CDMA
132200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
13243d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
1325f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces  RIL_REQUEST_SETUP_DEFAULT_PDP
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1332f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1334f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SIM_IO *
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
135500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
135900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
137100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1387602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
138800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
139100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
139600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
13977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
140400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
14067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
14117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
141200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
141600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
141700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
141800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
141900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
142700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
142900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
143100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
143400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
143600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
143700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
143800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
143900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
144000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
144400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
144600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
144800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
144900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
145000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
14537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
145500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
145900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
146400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
146700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
146800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
147000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
147200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
14737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
147400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
147500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
147700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
147800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
147900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
148000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
148100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
148200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
148300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
148400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
148600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
148900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
149000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
149100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
149300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
149400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
14967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
149700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
149800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
149900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
150100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
150200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
150300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
150400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
150800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
150900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
151200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
151500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
151600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
151700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
152100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
152200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
152300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
15307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1533b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1535b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1537b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1538b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1539b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1540b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
154200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
154500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
154700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
154800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
155000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
155100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1554f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1558f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1573f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1577f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
16057f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1613f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1615f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deactivate packet data connection
1616f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_DEACTIVATE_DEFAULT_PDP
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
1619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
16207f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1628f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1630f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
16387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
16467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
16487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1673593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1674593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
168500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
168800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
16967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
170000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
170800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
171000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
171400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
171600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
171700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
171900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
172400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
172500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
172600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
173200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
173600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
17407553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17437553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
17447553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
17457553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
17467553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
17477553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
174900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
175000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
175200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
17657553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *  ILLEGAL_SIM_OR_ME
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17687553447d44bb3f494b00d573215d81398f61cfcdJohn Wang * Note: Returns ILLEGAL_SIM_OR_ME when the failure is permanent and
17697553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       no retries needed, such as illegal SIM or ME.
17707553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       Returns GENERIC_FAILURE for all other causes that might be
17717553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *       fixed by retries.
17727553447d44bb3f494b00d573215d81398f61cfcdJohn Wang *
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
17877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
18097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
18107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
18147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
18187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
182500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
18327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
18357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
183800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
18507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
18537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
18667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
18747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
18757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
1877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
19357f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
19377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1948f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
19497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
19507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
1951f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
1952f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
195900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
19617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
19627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_LastDataCallActivateFailCause, as the UI layer needs to distinguish these
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
19727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
19737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
1975f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1978f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of PDP contexts, returning for each
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * its CID, whether or not it is active, and its PDP type,
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * APN, and PDP adddress.
1983f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_PDP_CONTEXT_LIST
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
1986f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is an array of RIL_Data_Call_Response
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
1994f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1997f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2003f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
2004f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
20097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
2012f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20237f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
20287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
20327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
20607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
20617f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
2076432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2077432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2078432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
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 * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
212900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2162f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2163f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2164f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2165f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2166f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2167f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2168f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2169f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2170f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2171f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2172f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2173f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2174f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
217500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
217700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
217900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
218000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
218600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
218900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
220100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2202f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2203f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2204f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2205f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2206f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2207f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2209f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2210f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2211f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2212f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2213f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2214f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
221700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
222000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
222400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
229000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
229900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
23257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
23307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
23437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2344f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for GSM/WCDMA (WCDMA preferred)
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for GSM only
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for WCDMA only
234729be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((int *)data)[0] is == 3 for GSM/WCDMA (auto mode, according to PRL)
2348f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 4 for CDMA and EvDo (auto mode, according to PRL)
2349f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 5 for CDMA only
2350f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for EvDo only
2351f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2356f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2357f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2359f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
236500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2372f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for GSM/WCDMA (WCDMA preferred)
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 1 for GSM only
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 2 for WCDMA only
2375f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 3 for GSM/WCDMA (auto mode, according to PRL)
2376f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 4 for CDMA and EvDo (auto mode, according to PRL)
2377f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 5 for CDMA only
2378f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 6 for EvDo only
2379f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 7 for GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
239200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
239400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
239600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
239700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
239900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
240000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
240300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
240600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
24073d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
240800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2409432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2410432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
241100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
241300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
241400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
241600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
241700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
241800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
241900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
24203d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
242100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
242200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
242300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
242400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
242500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
242600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
242700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
242800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
242900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2430f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION
24327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2434f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2435f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2436f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 from RUIM/SIM (default)
2438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 from NV
2439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2440f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2441f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2442f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2443f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2444f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2445f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2446f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2447f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2448f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2449f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION 77
2450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2451f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2452f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
24537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2454f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2455f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2456f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2457f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2458f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
24607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2465f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2467f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2470f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
24727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
24767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2477f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
24817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2485f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2487f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2491f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2492f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
24937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
24981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
24991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
25001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
25017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2502f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2504f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2505f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2506f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2509f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2510f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
25137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2516f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
25177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2518f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2519f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
25201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
25211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
25221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2523f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2524f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2526f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2527f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2528f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2529f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2530f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2531f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2532f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2533f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2534f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2535f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2536f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2537f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2538f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2539f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2540f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2541f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
25427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2543f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2545f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2546f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2547f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2548f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2549f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2550f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2551f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2552f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2553f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
25547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2555f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2556f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2557f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
25587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2559f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2560f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2561f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
25627f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2563f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2565f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2566f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2567f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2568f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2569f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2570f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2571f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2572f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2573f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2574f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2575f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2576f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2577f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
2578f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
25797f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2580f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2582f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2583f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2584f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2585f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2586f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2587f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2588f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
2589f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2590f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2591f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
2592f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2593f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
2594f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2595602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
2596602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
2597602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
2598602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
2599602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
2600602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
26017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2602f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2604f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2605f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2607f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2608f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2609f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2610f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
2611f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2612f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
261303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
2614f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
261503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
261603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
261703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
2618f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
262003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
262103c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
262203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
262303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
262403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
26257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2626f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26277f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2628f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2629f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2630f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2631f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2632f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2633f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
263403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
2635f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2636f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2637f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
2638f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2639f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
2640f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2641f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
26427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2643f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
26447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2645bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
2646bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
2647bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
2648bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
2649bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
2650bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
2651f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2652f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2653f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
26541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
2655f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2656f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2657f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2658f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
2659f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2660f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2661f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
2662f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2663f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
2664f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
2665f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2666f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
26677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2668f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
26697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2670f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2671f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2672f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2673f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2674f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2675f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2676f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
2677f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2678f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2679a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
2680a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2681a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
2682f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2683f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2684a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2685a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
2686a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
2687a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2688f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2689f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2690f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2691f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2692f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2693f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2694a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
2695f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2696f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2697a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
2698f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2699f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
2700f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2701a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
2702a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
2703a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2704f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2705a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2706f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2707f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2708f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2709f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2710f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2711f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2712a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
2713f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2714f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2715a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
2716f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2717a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
2718f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2719f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2720f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2721f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
2722f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2723a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2724f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2725a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2726f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2727f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2728f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2729f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2730f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2731f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2732a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
2733f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2734f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2735a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
2736f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2737f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
2738f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2739f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2740a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2741a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
2742a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
2743a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2744f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2745f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2746f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2747f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2748f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2749f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2750a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
2751f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2752f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2753a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
2754f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2755f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
2756f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2757a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
2758a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
2759a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2760f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2761a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2762f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2763f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2764f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2765f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2766f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2768a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
2769f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2770f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2771a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
2772f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2773f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
2774f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2775f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2776f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2777f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
2778f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2779a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2780f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2781a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2782f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2783f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2784f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2785f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2786f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2787f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2788a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
2789f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2790f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2791f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
2792f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2793f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
2794f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2795f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
2796f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
2797f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
2798f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
2800f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
2801f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2802f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
2803f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
280429be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
280529be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
280629be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
280729be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
28081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
2809d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
2810f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2811f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2812f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2813f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
2814f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2815f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2816eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
2817f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2818f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2819f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
2820f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2821f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
2822f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2823f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
2824f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2825f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2826f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
2827f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2828f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2829f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2830f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2831f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2832f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2833f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2834eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
2835f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2836f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2837f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
2838f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2839f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
2840f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2841f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
2842f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
2843f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2844f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2845f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2846f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2847f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2848f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2849f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2850f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2851f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2852eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
2853f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2854f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2855f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
2856eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2857eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
2858eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2859f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
2860eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
2861f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
2862eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2863eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
2864f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
2865eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2866eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
2867f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
2868eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2869f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
2870eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
2871eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
2872eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
2873eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
2874eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2876f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2877f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2878f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2879f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2880eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
2881f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
28821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
28831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
28841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
28851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
28861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
28871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
28881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
28891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
28907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
28911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
28927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
28931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
28941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
28951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
28961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
28971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
28981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
28991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
2900f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2901000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
2902000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
2903000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2904000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
2905000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2906000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
2907000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2908000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
2909000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2910000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
2911000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
2912000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
2913000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
2914000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2915000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
2916000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
2917000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
2918000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
2919000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
2920000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2921000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
2922000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2923000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
2924000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2925000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
2926000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2927000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
2928000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
2929000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
2930000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
2931000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2932000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
2933000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
2934000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
2935b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
2936b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
2937b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2938b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
2939b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2940b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
2941b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
2942b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
2943b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2944b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
2945b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2946b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
2947b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
2948b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
2949b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
2950b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2951b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
2952b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
2953b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
29542641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
29552641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
29562641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
29572641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
29582641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
29592641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
29602641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
29612641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
29622641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
29632641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
29642641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
29652641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
29662641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
29672641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
29682641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
29692641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
29702641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
297100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
297200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2973f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
297400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
297500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
297600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
297700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
297800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
297900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
298000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
298100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
298200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
298300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
298400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
298500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
298600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
298700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
298800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
298900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
299000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
299100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
299300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
299500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
299700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
29987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
299900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
300000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
300100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
300200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
300300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
300400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
300500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
300600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
300700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
30087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
300900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when network state, operator name, or GPRS state has changed
301100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Basically on, +CREG and +CGREG
301200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
301400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_REGISTRATION_STATE
301600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GPRS_REGISTRATION_STATE
301700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
301800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
302000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
302100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
302200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
302300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
302400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED 1002
302500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
302600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
302700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
302800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
302900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
30307f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
303100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
303200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
303300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
303400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
303500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
303600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
303700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
303800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
304000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
304100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
304200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
304300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
304400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
304500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
304600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
304700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
304800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
304900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
30507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
305100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
305200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
305300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
305400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
305500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
305600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
305700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
305800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
306000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
306100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
306200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
306300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
306400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
306500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
306600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
306700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
306800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
306900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
30707f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
307100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
307200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
307300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
307400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
307500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
307600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
307700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
307800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
307900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
308000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
308100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
308200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
308300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
30847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
308500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
308600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
308700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
308800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
308900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
309000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
309100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
309200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
309300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
309400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
309500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
309600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
309700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
309800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
309900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
310000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
310100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
310200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
310300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
310400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
310500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
310600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
31077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
310800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
310900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
311000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
311100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
311200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
311300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
311400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
311500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
311600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
311700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
311800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
311900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
312000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
312100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
312200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
312300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
312400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
31251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
312600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
312700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
312800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
312900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
313000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
313200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
313300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate a PDP context state has changed, or a new context
313400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been activated or deactivated
3135f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_UNSOL_PDP_CONTEXT_LIST_CHANGED
313600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3137f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is an array of RIL_Data_Call_Response identical to that
3138f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST
313900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3140f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
314100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
314200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3143f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
314400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
314500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
314600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
314700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
314800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
314900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
315000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
315100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
315200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
315300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
315400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
315500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
315600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
315700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
315800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
315900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
316000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
316100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
316200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
316300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
316400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
316500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
316600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
316700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
316800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
316900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
317000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
317100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
317200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
317300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
317400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
317500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
317600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
317700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
317800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
317900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
318000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
318100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
318200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
318300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
318400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
318500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
318600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
318700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
318800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
318900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
319000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
319100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
319200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
319300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
319400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
319500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
319600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
319700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
319800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
319900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
320000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
320100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
320200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
320300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
320400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
320500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
320600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
320700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
320800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
320900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
321100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
321200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
321300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
321400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
321500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
321700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
321800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
321900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
322000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
322100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
322200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_FILE_UPDATE or NULL for any other result.
322300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
322400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note: If the radio state changes as a result of the SIM refresh (eg,
322500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
322600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
322700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
322800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
322900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
323000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
323100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
323200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
323300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
32346453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
32356453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
32366453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
32376453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
32386453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
32396453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
32406453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
32416453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
32426453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
324300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32443d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
32453d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
324600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
324700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
324800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
324934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
325034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
325134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
325234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
32533d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
325434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3255f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
325634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
325734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
325834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
325934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
326034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
326134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
326234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
326334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
32643d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
326534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
32663d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
326734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
326834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
32693d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
327034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
327134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
32723d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
327334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
327434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
327534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
327634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
327734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
327834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
327934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
32807f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
328134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const char * of 88 bytes which indicates each page
328234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * of a CBS Message sent to the MS by the BTS as coded in 3GPP
328334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * 23.041 Section 9.4.1.1
3284f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
328534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
328634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3287f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
328834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
328934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
329034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
329134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
329234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
329334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
329434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3295f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
329634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3297f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3298f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
329934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
330034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
330134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
330234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
330334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
330434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
330534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
330634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
330734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
330834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
330934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
331034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
33111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
33121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
33131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
33151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
33161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
33181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
33211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
33221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
33231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
33241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
33261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
33287f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
33291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
333134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
33321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
33331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
33341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
33361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
33371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
33391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
33401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
33411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
33441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
33451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
33461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
33471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
33491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
33511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
33521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
33531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
335434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
3355af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
3356af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
3357af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3358af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
3359af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3360af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
3361af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
3362af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
3363af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
33645d621da539abea83309d77317ede40126f47d5f0John Wang/**
33655d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
33665d621da539abea83309d77317ede40126f47d5f0John Wang *
33675d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
33685d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
33695d621da539abea83309d77317ede40126f47d5f0John Wang *
33705d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
33715d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
33725d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
33735d621da539abea83309d77317ede40126f47d5f0John Wang */
33745d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
33755d621da539abea83309d77317ede40126f47d5f0John Wang
33765909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang/**
33775909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * RIL_UNSOL_RESEND_INCALL_MUTE
33785909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
33795909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * Indicates that framework/application need reset the uplink mute state.
33805909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
33815909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * There may be situations where the mute state becomes out of sync
33825909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * between the application and device in some GSM infrastructures.
33835909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang *
33845909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang * "data" is null
33855909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang */
33865909cf831f0d687e93164daaecc43a2ff792cc3aJohn Wang#define RIL_UNSOL_RESEND_INCALL_MUTE 1030
338700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
338800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
338900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
339000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
339100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
339200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
339400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
339500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
339600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
339700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
339800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
339900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
34007f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
340100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
340200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
340300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
340400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
340500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
340600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
340700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
340800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
340900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
341000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
341100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
341300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
341400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
341500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
341600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
341700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
34187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
341900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
342000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
34217f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
342200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
342300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
342400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
342600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
342700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
342800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
343000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
343200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
343300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
343400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
343500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
343600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
343700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
343800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
343900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
344000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
344100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
344200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
344300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
344400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
344500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
344600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
344700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
344800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
344900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
345000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
345100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
345200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
345300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
345400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
345500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
345600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
345700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
345800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
345900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
346000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
346100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
346200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
34637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
346400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
346500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
346600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
346700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
34687f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
346900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
347000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
347200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
347300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
347400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
347500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
347600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
347700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34787f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
347900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
348000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
348100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
34827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
348300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
348400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
348500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
348600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
348700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
348800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34890d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn    void (*RequestTimedCallback) (RIL_TimedCallback callback,
34907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
349100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
349200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
349300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
34957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
349600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
349700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
349800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
349900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
350000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
350100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
350200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
350300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
350400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
350500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
350600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
350700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
350800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
350900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
351000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
351100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
351200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
351300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
351400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
351500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
351600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
351700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
351800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
351900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
352000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
35213d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
352200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
352300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
352400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
352500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
352600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
352700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
35287f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
352900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
353000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
353100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
353200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
353300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
353400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
353500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
353600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
353700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
35387f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
353900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
354000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
354100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
354200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
35437f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
354400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
354500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
354600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
354700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
354800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
354900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
355000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
355100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
355200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
355300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
35540d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackbornvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
35550d9f0c0ea45a0239653e04f2c63ccecb1bc62c6bDianne Hackborn                               void *param, const struct timeval *relativeTime);
355600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
355700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
355800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
355900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
356000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
356100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
356200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
356300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
356400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
3565