ril.h revision 432656105ccc2f4f891fbe8fb5b636f2428f1f4e
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
4300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_VERSION 2
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 */
70602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_E_FDN_CHECK_FAILURE = 14                /* command failed because recipient is not on FDN list */
7100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
7200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
7400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
7500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
7600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
7700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
7800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
7900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
8000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
8100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
8200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
83f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_OFF = 0,                   /* Radio explictly powered off (eg CFUN=0) */
84f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_UNAVAILABLE = 1,           /* Radio unavailable (eg, resetting or not booted) */
85f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_NOT_READY = 2,         /* Radio is on, but the SIM interface is not ready */
867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3,  /* SIM PIN locked, PUK required, network
87f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or SIM absent */
88f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_SIM_READY = 4,             /* Radio is on and SIM interface is available */
89f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_NOT_READY = 5,        /* Radio is on, but the RUIM interface is not ready */
90f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_RUIM_READY = 6,            /* Radio is on and the RUIM interface is available */
917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RADIO_STATE_RUIM_LOCKED_OR_ABSENT = 7, /* RUIM PIN locked, PUK required, network
92f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                              personalization locked, or RUIM absent */
93f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_NOT_READY = 8,          /* Radio is on, but the NV interface is not available */
94f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RADIO_STATE_NV_READY = 9               /* Radio is on and the NV interface is available */
9500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
9600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville /* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char isPresent;    /* non-zero if signal information record is present */
1001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signalType;   /* as defined 3.7.5.5-1 */
1011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alertPitch;   /* as defined 3.7.5.5-2 */
1021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char signal;       /* as defined 3.7.5.5-3, 3.7.5.5-4 or 3.7.5.5-5 */
1031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalInfoRecord;
1041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
1051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
1061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CallState   state;
1071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             index;      /* Connection Index for use with, eg, AT+CHLD */
1081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             toa;        /* type of address, eg 145 = intl */
1091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMpty;     /* nonzero if is mpty call */
1101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isMT;       /* nonzero if call is mobile terminated */
1111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            als;        /* ALS line indicator if available
1121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                   (0 = line 1) */
1131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoice;    /* nonzero if this is is a voice call */
1141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char            isVoicePrivacy;     /* nonzero if CDMA voice privacy mode is active */
1151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;     /* Remote party number */
1161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
1171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;       /* Remote party name */
1181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
11900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
12000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
12100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
12200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             cid;        /* Context ID */
1231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             active;     /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
12400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          type;       /* X.25, IP, IPV6, etc. */
12500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          apn;
12600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          address;
127f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_Data_Call_Response;
12800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
12900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
1308e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink    int messageRef;   /* TP-Message-Reference for GSM,
1318e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         and BearerData MessageId for CDMA
1328e3a2cad4ed875394c833124df98255b1fd18a77Tammo Spalink                         (See 3GPP2 C.S0015-B, v2.0, table 4.5-1). */
13300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
134920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh    int errorCode;    /* See 3GPP 27.005, 3.2.5 for GSM/UMTS,
135920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         3GPP2 N.S0005 (IS-41C) Table 171 for CDMA,
136920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh                         -1 if unknown or not applicable*/
13700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
13800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
13900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
14000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
14100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
14200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
14300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
14400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
14500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
146f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang    char * pdu;     /* PDU of message to write, as an ASCII hex string less the SMSC address,
147f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang                       the TP-layer length is "strlen(pdu)/2". */
14800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
14900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
15000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
15100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
15200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
15300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
15400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
15500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
15600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
15700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
15800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
15900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
16000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
16100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
16200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
16300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
16400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
16500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
16600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
16700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
1681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                       Path must always be provided.
16900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
17000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
17100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
17200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
17300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
17400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
17500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO;
17600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
17700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
17800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
17900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
18000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
18100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
18200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
18300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
18400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
18500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
18600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
18700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
18800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
18900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
19000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
19100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
19200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
19300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
19400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
19500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
19600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
19700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
19800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
1993d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             reason;      /* from TS 27.007 7.11 "reason" */
2003d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
2013d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    See table for Android mapping from
2023d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    MMI service code
2033d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville                                    0 means user doesn't input class */
2043d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             toa;         /* "type" from TS 27.007 7.11 */
2053d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    char *          number;      /* "number" from TS 27.007 7.11. May be NULL */
2063d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    int             timeSeconds; /* for CF no reply only */
20700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
20800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
20900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
210e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   char * cid;         /* Combination of LAC and Cell Id in 32 bits in GSM.
211e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Upper 16 bits is LAC and lower 16 bits
212e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * is CID (as described in TS 27.005)
21300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
2147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                        *         in 9 bits in UMTS
215e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Valid values are hexadecimal 0x0000 - 0xffffffff.
21600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
217e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang   int    rssi;        /* Received RSSI in GSM,
218e0ba6a98408e1efd3d1d1043d75f0ab53daddaaajohnwang                        * Level index of CPICH Received Signal Code Power in UMTS
21900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
22000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
22100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
22200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
22300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
22400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
22500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
22600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
22700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
22800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
22900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
230602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMSI_UNKNOWN_IN_VLR = 242,
231602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    CALL_FAIL_IMEI_NOT_ACCEPTED = 243,
2321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000,
2331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_DROP = 1001,
2341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_INTERCEPT = 1002,
2351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_REORDER = 1003,
2361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_SO_REJECT = 1004,
2371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_RETRY_ORDER = 1005,
2381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_ACCESS_FAILURE = 1006,
2391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_PREEMPTED = 1007,
2401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CALL_FAIL_CDMA_NOT_EMERGENCY = 1008, /* For non-emergency number dialed
2411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville                                            during emergency callback mode */
24203c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla    CALL_FAIL_CDMA_ACCESS_BLOCKED = 1009, /* CDMA network access probes blocked */
24300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
24400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
24500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
246f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/* See RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE */
24700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
248d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_OPERATOR_BARRED = 0x08,               /* no retry */
249d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_INSUFFICIENT_RESOURCES = 0x1A,
250d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_MISSING_UKNOWN_APN = 0x1B,            /* no retry */
251d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_UNKNOWN_PDP_ADDRESS_TYPE = 0x1C,      /* no retry */
252d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_USER_AUTHENTICATION = 0x1D,           /* no retry */
253d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_GGSN = 0x1E,        /* no retry */
254d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ACTIVATION_REJECT_UNSPECIFIED = 0x1F,
255d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 0x20,  /* no retry */
256d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, /* no retry */
257d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_SERVICE_OPTION_OUT_OF_ORDER = 0x22,
258d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_NSAPI_IN_USE      = 0x23,             /* no retry */
259d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_PROTOCOL_ERRORS   = 0x6F,             /* no retry */
260d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff,  /* This and all other cases: retry silently */
261d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    /* Not mentioned in the specification */
262d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_REGISTRATION_FAIL = -1,
263d6aa2e32a44f883b008b9bb12b322f5b7e8dced4Jaikumar Ganesh    PDP_FAIL_GPRS_REGISTRATION_FAIL = -2,
264f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_LastDataCallActivateFailCause;
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
266602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh/* See RIL_REQUEST_SETUP_DATA_CALL */
267602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jshtypedef enum {
268602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_DEFAULT    = 0,
269602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_TETHERED   = 1,
270602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh    RIL_DATA_PROFILE_OEM_BASE   = 1000    /* Start of OEM-specific profiles */
271602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh} RIL_DataProfile;
272602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
27400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
27600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
27700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
27800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
27900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
28000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
28100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
28200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
28300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
28400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
28500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
28600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
288f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_CARD_MAX_APPS     8
289f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
290f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
291f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ABSENT   = 0,
292f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_PRESENT  = 1,
293f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_CARDSTATE_ERROR    = 2
294f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardState;
295f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
296f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
297f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_UNKNOWN                   = 0, /* initial state */
298f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_IN_PROGRESS               = 1, /* in between each lock transition */
2997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_PERSOSUBSTATE_READY                     = 2, /* when either SIM or RUIM Perso is finished
3007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                                        since each app can only have 1 active perso
301f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                                        involved */
302f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK               = 3,
303f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET        = 4,
304f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE             = 5,
305f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER      = 6,
306f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM                   = 7,
307f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_PUK           = 8, /* The corresponding perso lock is blocked */
308f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_NETWORK_SUBSET_PUK    = 9,
309f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_CORPORATE_PUK         = 10,
310f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER_PUK  = 11,
311f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_SIM_SIM_PUK               = 12,
312f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1             = 13,
313f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2             = 14,
314f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD                 = 15,
315f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE            = 16,
316f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER     = 17,
317f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM                 = 18,
318f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK1_PUK         = 19, /* The corresponding perso lock is blocked */
319f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_NETWORK2_PUK         = 20,
320f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_HRPD_PUK             = 21,
321f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_CORPORATE_PUK        = 22,
322f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_SERVICE_PROVIDER_PUK = 23,
323f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PERSOSUBSTATE_RUIM_RUIM_PUK             = 24
324f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PersoSubstate;
325f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
326f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
327f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_UNKNOWN               = 0,
328f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_DETECTED              = 1,
329f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PIN                   = 2, /* If PIN1 or UPin is required */
330f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_PUK                   = 3, /* If PUK1 or Puk for UPin is required */
3317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    RIL_APPSTATE_SUBSCRIPTION_PERSO    = 4, /* perso_substate should be look at
332f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                               when app_state is assigned to this value */
333f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_APPSTATE_READY                 = 5
334f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppState;
335f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
336f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
337f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_UNKNOWN              = 0,
338f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_NOT_VERIFIED = 1,
339f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_VERIFIED     = 2,
340f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_DISABLED             = 3,
341f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_BLOCKED      = 4,
342f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville    RIL_PINSTATE_ENABLED_PERM_BLOCKED = 5
343f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_PinState;
344f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
345f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef enum {
346f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_UNKNOWN = 0,
347f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_SIM     = 1,
348f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_USIM    = 2,
349f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_RUIM    = 3,
350f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_APPTYPE_CSIM    = 4
351f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppType;
352f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
353f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
354f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
3557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppType      app_type;
3567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_AppState     app_state;
3577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PersoSubstate perso_substate; /* applicable only if app_state ==
358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       RIL_APPSTATE_SUBSCRIPTION_PERSO */
3597f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  char             *aid_ptr;        /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41,
360f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville                                       0x30, 0x30, 0x30 */
361f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  char             *app_label_ptr;  /* null terminated string */
362f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int              pin1_replaced;   /* applicable to USIM and CSIM */
3637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin1;
3647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_PinState     pin2;
365f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_AppStatus;
366f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
367f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct
368f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville{
3697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville  RIL_CardState card_state;
370f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_PinState  universal_pin_state;             /* applicable to USIM and CSIM: RIL_PINSTATE_xxx */
371f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           gsm_umts_subscription_app_index; /* value < RIL_CARD_MAX_APPS */
372f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           cdma_subscription_app_index;     /* value < RIL_CARD_MAX_APPS */
373f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  int           num_applications;                /* value <= RIL_CARD_MAX_APPS */
374f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville  RIL_AppStatus applications[RIL_CARD_MAX_APPS];
375f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville} RIL_CardStatus;
376f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
37700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH */
37800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
37900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
38000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
38100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM initialized.  All files should be re-read. */
38200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
38300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
38400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
38500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
38600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
3881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          number;             /* Remote party number */
3891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int             numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown */
3901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    char *          name;               /* Remote party name */
3913d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville    RIL_CDMA_SignalInfoRecord signalInfoRecord;
3921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_CallWaiting;
3931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
394a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/**
395a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Which types of Cell Broadcast Message (CBM) are to be received by the ME
396a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
397a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromServiceID - uToServiceID defines a range of CBM message identifiers
398a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x0000 - 0xFFFF as defined in TS 23.041 9.4.1.2.2 for GMS
399a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.2 for UMTS. All other values can be treated as empty
400a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * CBM message ID.
401a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
402a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * uFromCodeScheme - uToCodeScheme defines a range of CBM data coding schemes
403a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * whose value is 0x00 - 0xFF as defined in TS 23.041 9.4.1.2.3 for GMS
404a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and 9.4.4.2.3 for UMTS.
405a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * All other values can be treated as empty CBM data coding scheme.
406a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
407a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * selected 0 means message types specified in <fromServiceId, toServiceId>
408a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * and <fromCodeScheme, toCodeScheme>are not accepted, while 1 means accepted.
409a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
410a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Used by RIL_REQUEST_GSM_GET_BROADCAST_CONFIG and
411a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_CONFIG.
412a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville */
413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Savilletypedef struct {
414a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromServiceId;
415a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toServiceId;
416a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int fromCodeScheme;
417a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    int toCodeScheme;
418a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville    unsigned char selected;
419a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville} RIL_GSM_BroadcastSmsConfigInfo;
420f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
42134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
42234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
42334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
42434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
42534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
42634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
427a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville/* Block all voice/SMS/USSD/SS/AV64 including emergency call due to restriction.*/
42834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
42934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
43034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
43134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
4321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* The status for an OTASP/OTAPA session */
4331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
4341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED,
4351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED,
4361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED,
4371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_SSD_UPDATED,
4381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED,
4391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED,
4401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED,
4411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED,
4421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_COMMITTED,
4431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED,
4441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED,
4451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED
4461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_OTA_ProvisionStatus;
4471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalStrength;  /* Valid values are (0-31, 99) as defined in TS 27.007 8.5 */
4501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int bitErrorRate;    /* bit error rate (0-7, 99) as defined in TS 27.007 8.5 */
4511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_GW_SignalStrength;
4521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
4561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
4571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
4581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
4591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
4601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
4611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
4621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
4631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_SignalStrength;
4641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int dbm;  /* Valid values are positive integers.  This value is the actual RSSI value
4681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * multiplied by -1.  Example: If the actual RSSI is -75, then this response
4691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * value will be 75.
4701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
4711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int ecio; /* Valid values are positive integers.  This value is the actual Ec/Io multiplied
4721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * by -10.  Example: If the actual Ec/Io is -12.5 dB, then this response value
4731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               * will be 125.
4741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville               */
4751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    int signalNoiseRatio; /* Valid values are 0-8.  8 is the highest signal to noise ratio. */
4761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_EVDO_SignalStrength;
4771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
4801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_GW_SignalStrength   GW_SignalStrength;
4811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalStrength CDMA_SignalStrength;
4821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_EVDO_SignalStrength EVDO_SignalStrength;
4831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_SignalStrength;
4841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
4851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Names of the CDMA info records (C.S0005 section 3.7.5) */
4861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
4871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_DISPLAY_INFO_REC,
4881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC,
4891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC,
4901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_CONNECTED_NUMBER_INFO_REC,
4911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_SIGNAL_INFO_REC,
4921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
4931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_LINE_CONTROL_INFO_REC,
4941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_EXTENDED_DISPLAY_INFO_REC,
4951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_CLIR_INFO_REC,
4961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_RELEASE_INFO_REC,
4971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC
4981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InfoRecName;
4991b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5001b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Display Info Rec as defined in C.S0005 section 3.7.5.1
5011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Extended Display Info Rec as defined in C.S0005 section 3.7.5.16
5021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Note: the Extended Display info rec contains multiple records of the
5031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   form: display_tag, display_len, and display_len occurrences of the
5041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   chari field if the display_tag is not 10000000 or 10000001.
5051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   To save space, the records are stored consecutively in a byte buffer.
5061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   The display_tag, display_len and chari fields are all 1 byte.
5071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
5081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char alpha_len;
511a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char alpha_buf[CDMA_ALPHA_INFO_BUFFER_LENGTH];
5121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_DisplayInfoRecord;
5131b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
5151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Calling Party Number Info Rec as defined in C.S0005 section 3.7.5.3
5161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville   Connected Number Info Rec as defined in C.S0005 section 3.7.5.4
5171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville*/
5181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char len;
521a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville  char buf[CDMA_NUMBER_INFO_BUFFER_LENGTH];
5221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_type;
5231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char number_plan;
5241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char pi;
5251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char si;
5261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_NumberInfoRecord;
5271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Redirecting Number Information Record as defined in C.S0005 section 3.7.5.11 */
5291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef enum {
5301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_UNKNOWN = 0,
5311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1,
5321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_NO_REPLY = 2,
5331b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALLED_DTE_OUT_OF_ORDER = 9,
5341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10,
5351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_CALL_FORWARDING_UNCONDITIONAL = 15,
5361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_REDIRECTING_REASON_RESERVED
5371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingReason;
5381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_NumberInfoRecord redirectingNumber;
5411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  /* redirectingReason is set to RIL_REDIRECTING_REASON_UNKNOWN if not included */
5421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_RedirectingReason redirectingReason;
5431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_RedirectingNumberInfoRecord;
5441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* Line Control Information Record as defined in C.S0005 section 3.7.5.15 */
5461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPolarityIncluded;
5481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlToggle;
5491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlReverse;
5501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char lineCtrlPowerDenial;
5511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_LineControlInfoRecord;
5521b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 CLIR Information Record */
5541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5551b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char cause;
5561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_CLIRInfoRecord;
5571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/* T53 Audio Control Information Record */
5591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char upLink;
5611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char downLink;
5621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_T53_AudioControlInfoRecord;
5631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InfoRecName name;
5671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  union {
5691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Display and Extended Display Info Rec */
5701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_DisplayInfoRecord           display;
5711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Called Party Number, Calling Party Number, Connected Number Info Rec */
5731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_NumberInfoRecord            number;
5741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Signal Info Rec */
5761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_SignalInfoRecord            signal;
5771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5781b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Redirecting Number Info Rec */
5791b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_RedirectingNumberInfoRecord redir;
5801b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5811b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* Line Control Info Rec */
5821b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_LineControlInfoRecord       lineCtrl;
5831b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5841b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 CLIR Info Rec */
5851b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_CLIRInfoRecord          clir;
5861b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5871b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    /* T53 Audio Control Info Rec */
5881b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville    RIL_CDMA_T53_AudioControlInfoRecord  audioCtrl;
5891b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  } rec;
5901b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecord;
5911b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5921b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_CDMA_MAX_NUMBER_OF_INFO_RECS 10
5931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Savilletypedef struct {
5951b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  char numberOfInfoRecs;
5961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville  RIL_CDMA_InformationRecord infoRec[RIL_CDMA_MAX_NUMBER_OF_INFO_RECS];
5971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville} RIL_CDMA_InformationRecords;
5981b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
5997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
60000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
60100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
60200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
6037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
60400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
60500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const RIL_CardStatus *
60700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
60800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
60900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
61000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
61100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
61200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
61300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
61400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
61500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
616309ac294bd529ff5a71f1c1e62cd493df1010271John Wang * Supplies SIM PIN. Only called if RIL_CardStatus has RIL_APPSTATE_PIN state
61700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
61800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
61900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
62000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
621593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
622593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
62300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
62400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
6257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
6267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * SUCCESS
62700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
62800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
62900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
63000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
63100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
63200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
63300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
63400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
63500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
63600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
63700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
6387f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK and new PIN.
63900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
64000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
64100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
64200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
64300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
644593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
645593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
64600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
64700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
6487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
6497f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
65000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
65100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
65200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
65300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
65400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
65500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
65600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
65700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
65800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
65900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
66000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
66100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
66200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
66300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
66400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
66500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
66600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
667593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
668593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
66900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
67000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
6717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
6727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
67300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
67400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
67500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
67600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
67700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
67800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
67900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
68000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
68100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
68200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
6837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies SIM PUK2 and new PIN2.
68400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
68500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
68600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
68700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
68800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
689593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
690593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
69100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
69200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
6937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
6947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
69500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
69600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
69700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
69800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
69900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
70000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
70100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
70200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
70300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
70400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
70500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
7067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN and new PIN.
70700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
70800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
70900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
71000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
71100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
712593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
713593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
71400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
71500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
71800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
71900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
72000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
72100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
7227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
72300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
72400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
72500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
72600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
72700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
72800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
72900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
73000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
7317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Supplies old SIM PIN2 and new PIN2.
73200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
73300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
73400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
73500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
73600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
737593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
738593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
73900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
74000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
74300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
74400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
74500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
74600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
7477f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
74800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
74900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
75000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
75100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
75200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
75300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
75400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
75500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
75600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
75700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
75800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
75900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
760593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
761593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
76200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
76300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7647f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
76600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
76700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
76800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
76900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
77000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
77100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
77200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
77300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
77400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
7757f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_GET_CURRENT_CALLS
77600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
77700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
77800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
77900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
78000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
78100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
7827f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
78300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
7847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
7857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
78600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
78700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
78800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
78900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
79000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
79200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
79500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
79600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
79800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
80000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
8017f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
80200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
80300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
80400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
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 */
80900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
81000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
81100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
81200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
81300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
81500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only valid when radio state is "RADIO_STATE_SIM_READY"
81700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
81900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
82000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
82100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
82300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
82400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
82500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
82600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
82800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
83000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
83100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
83300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
8347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
835f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
83600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
83800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
84100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
84200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
84300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
84400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
84500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
84600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
84700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
84800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
84900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
85100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
85300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
85400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
85700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
85800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
85900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
86000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
86200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
86400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
86500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
86700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
86900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
87000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
8727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
87300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
87400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
87500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
87600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
87700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
87800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
87900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
88000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
88100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
88300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
88500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
88700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
88800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
88900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
89000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
89100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
89200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
89300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
89400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
89500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
89700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
89800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
90100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
90200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
90300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
90400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
90600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
90700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
90800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
90900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
91000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
91100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
91200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
91400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
91500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
91600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9177f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
91800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
91900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
92000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
92100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
92200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
92300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
92400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
92500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Send UDUB (user determined used busy) to ringing or
92700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
92800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
93000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
93100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
9337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
93400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
93500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
93600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
93700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
93800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
93900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
94000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
94100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
94200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
94300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
94400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
94500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
9461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is RIL_LastCallFailCause.  GSM failure reasons are
94703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA
94803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * failure reasons are derived from the possible call failure scenarios
94903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
95000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
95234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
95334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
95400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
95500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
95600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
95700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
95800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
96000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
96100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
96200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
96300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
964f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
96500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
96600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
96700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
96800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
96900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
97000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
9711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Requests current signal strength and associated information
97200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
97400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
9761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
9771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is a const RIL_SignalStrength *
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
98000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
98100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
98200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
98300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
9843d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville
98500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
98600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_REGISTRATION_STATE
98700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
98900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
992f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is registration state 0-6,
9931b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              0 - Not registered, MT is not currently searching
9941b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
995f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              1 - Registered, home network
9961b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *              2 - Not registered, but MT is currently searching
9971b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                  a new operator to register
998f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              3 - Registration denied
999f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              4 - Unknown
1000f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *              5 - Registered, roaming
10011b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[1] is LAC if registered on a GSM/WCDMA system or
10021b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.Valid LAC are 0x0000 - 0xffff
10031b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[2] is CID if registered on a * GSM/WCDMA or
10041b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not.
10051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                 Valid CID are 0x00000000 - 0xffffffff
10061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In GSM, CID is Cell ID (see TS 27.007)
10071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                            in 16 bits
10081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                    In UMTS, CID is UMTS Cell Identity
10091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                             (see TS 25.331) in 28 bits
1010f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[3] indicates the available radio technology 0-7,
10111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                  0 - Unknown, 1 - GPRS, 2 - EDGE, 3 - UMTS,
10121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                  4 - IS95A, 5 - IS95B, 6 - 1xRTT,
10133a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *                                  7 - EvDo Rev. 0, 8 - EvDo Rev. A,
10143a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *                                  9 - HSDPA, 10 - HSUPA, 11 - HSPA
10151b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[4] is Base Station ID if registered on a CDMA
10161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              system or NULL if not.  Base Station ID in
101729be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              decimal format
10181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[5] is Base Station latitude if registered on a
10191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
10201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              latitude in hexadecimal format
10211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[6] is Base Station longitude if registered on a
10221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              CDMA system or NULL if not. Base Station
10231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              longitude in hexadecimal format
10241b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[7] is concurrent services support indicator if
10251b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              registered on a CDMA system 0-1.
10261b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   0 - Concurrent services not supported,
10271b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                                   1 - Concurrent services supported
10281b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[8] is System ID if registered on a CDMA system or
10291b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 32767
10301b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[9] is Network ID if registered on a CDMA system or
10311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                              NULL if not. Valid System ID are 0 - 65535
10321b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[10] is the TSB-58 Roaming Indicator if registered
103303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               on a CDMA or EVDO system or NULL if not. Valid values
10341b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               are 0-255.
10351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[11] indicates whether the current system is in the
103603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               PRL if registered on a CDMA or EVDO system or NULL if
10371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               not. 0=not in the PRL, 1=in the PRL
10381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[12] is the default Roaming Indicator from the PRL,
103903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                               if registered on a CDMA or EVDO system or NULL if not.
10401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               Valid values are 0-255.
10411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[13] if registration state is 3 (Registration
10421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *                               denied) this is an enumerated reason why
1043602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               registration was denied.  See 3GPP TS 24.008,
1044602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                               10.5.3.6 and Annex G.
1045602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 0 - General
1046602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 1 - Authentication Failure
1047602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 2 - IMSI unknown in HLR
1048602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 3 - Illegal MS
1049602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 4 - Illegal ME
1050602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 5 - PLMN not allowed
1051602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 6 - Location area not allowed
1052602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 7 - Roaming not allowed
1053602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 8 - No Suitable Cells in this Location Area
1054602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                                 9 - Network failure
105529be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                                10 - Persistent location update reject
10561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
10571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Please note that registration state 4 ("unknown") is treated
105800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
105900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
10601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Registration state 3 can be returned if Location Update Reject
10611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * (with cause 17 - Network Failure) is received repeatedly from the network,
10621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * to facilitate "managed roaming"
10631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
106400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
106500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
106600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
106700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
106800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
106900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_REGISTRATION_STATE 20
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GPRS_REGISTRATION_STATE
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current GPRS registration state
107500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
107700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
10783a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe * ((const char **)response)[0] is registration state 0-5 from TS 27.007 10.1.20 AT+CGREG
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[3] indicates the available radio technology, where:
108200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      0 == unknown
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      1 == GPRS only
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      2 == EDGE
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      3 == UMTS
10863a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *      9 == HSDPA
10873a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *      10 == HSUPA
10883a63fbc342d031dac10933f7f657902b0ff0fea3Li Zhe *      11 == HSPA
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
10937f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
10947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please note that registration state 4 ("unknown") is treated
109500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
110100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GPRS_REGISTRATION_STATE 21
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
110900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
11117f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[0] is long alpha ONS or EONS
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
11147f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[1] is short alpha ONS or EONS
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
11187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
111900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
112100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
112200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
112500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
114000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
114400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1155602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is a char * containing a single character with one of 12 values: 0-9,*,#
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
11577f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
116200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
11737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
118000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
11867f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
119100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
1193602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
119500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
119800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
120200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
12037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
120400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
121100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
121300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
121600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
12187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
122300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
122500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
122600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
122800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
122900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
123100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1232f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SETUP_DATA_CALL
123300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1234f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Setup a packet data connection
123500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
12377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] indicates whether to setup connection on radio technology CDMA
1238f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                              or GSM/UMTS, 0-1. 0 - CDMA, 1-GSM/UMTS
12397f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
1240602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is a RIL_DataProfile (support is optional)
12417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[2] is the APN to connect to if radio technology is GSM/UMTS. This APN will
1242f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          override the one in the profile. NULL indicates no APN overrride.
1243f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[3] is the username for APN, or NULL
1244f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)data)[4] is the password for APN, or NULL
1245920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh * ((const char **)data)[5] is the PAP / CHAP auth type. Values:
1246920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          0 => PAP and CHAP is never performed.
1247920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          1 => PAP may be performed; CHAP is never performed.
1248920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          2 => CHAP may be performed; PAP is never performed.
1249920c78f166e787dc799bf5df7d6be30034ac0e77Jaikumar Ganesh *                          3 => PAP / CHAP may be performed - baseband dependent.
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char **
12527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((char **)response)[0] indicating PDP CID, which is generated by RIL. This Connection ID is
1253f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          used in GSM/UMTS and CDMA
1254f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char **)response)[1] indicating the network interface name for GSM/UMTS or CDMA
12557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((char **)response)[2] indicating the IP address for this interface for GSM/UMTS
1256f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                          and NULL for CDMA
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
12593d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
1260f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces  RIL_REQUEST_SETUP_DEFAULT_PDP
126100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
126500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
126600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1267f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DEACTIVATE_DATA_CALL
126800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1269f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SETUP_DATA_CALL 27
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
127200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
127300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
127400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
127500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
127900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
128000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SIM_IO *
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
128500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
128700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
128900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
129400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
129600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
129900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
130200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
130600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
130700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
131200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
131500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
132000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
1322602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *  FDN_CHECK_FAILURE
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
132400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
13327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
13417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  GENERIC_FAILURE
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
13467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
135300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
135900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
137100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
137500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
13887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
139100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
139600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
139700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
14087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
141200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
141400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
141600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
141700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
141800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
141900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
142900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
143000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
14317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * For example, if ((const int *)response)[0]  is 1 and
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
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_QUERY_CALL_WAITING 35
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
144400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
144700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
144900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
145000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
145300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
145500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
145900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
14657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * via RIL_UNSOL_RESPONSE_NEW_SMS
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
1468b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 on successful receipt
146900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
1470b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 on failed receipt
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
1472b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[1] if data[0] is 0, this contains the failure cause as defined
1473b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  in TS 23.040, 9.2.3.22. Currently only 0xD3 (memory
1474b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  capacity exceeded) and 0xFF (unspecified error) are
1475b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  reported.
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
147800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
148000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
148200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
148300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
148400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
148500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
148600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SMS_ACKNOWLEDGE  37
148700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEI - DEPRECATED
149000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
149200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1493f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
149400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
149700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
149800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15007f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
150100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
150200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
150300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
150400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV - DEPRECATED
150900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
151100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1512f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_DEVICE_IDENTITY
151300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
151600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
151700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15197f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
152100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
152200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
152300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
152900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
153300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
153500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
153700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
153800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
15407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
154200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
154500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
154700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1548f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEACTIVATE_DATA_CALL
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1550f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deactivate packet data connection
1551f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_DEACTIVATE_DEFAULT_PDP
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
1554f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((char**)data)[0] indicating CID
15557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1563f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_SETUP_DATA_CALL
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
1565f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
15737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
15817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           services for which the specified barring facility
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
15837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1608593c910c9a98973ff1be5afe39987bafaa546170jsh * "response" is int *
1609593c910c9a98973ff1be5afe39987bafaa546170jsh * ((int *)response)[0] is the number of retries remaining, or -1 if unknown
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
16317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "response" is NULL
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
16697f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
168700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
16887f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
170000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
170800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17097f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+0] is long alpha ONS or EONS
17107f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)response)[n+1] is short alpha ONS or EONS
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
171400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
171600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
171700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17187f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This request must not respond until the new operator is selected
171900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
172300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
172400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
172500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
173100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
17327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Start playing a DTMF tone. Continue playing DTMF tone until
17337f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_REQUEST_DTMF_STOP is received
173400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
173600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
17377f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
174000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
17417f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
174400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
174500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
174600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
174900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
175000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
175200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
17557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
17587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
175900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
176500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
17737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
17767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
17897f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (less the specified party) on hold and leaving the specified party
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
17977f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
17987f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * "data" is an int *
1799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (int *)data)[0] contains Connection index (value of 'x' in CHLD above) "response" is NULL
1800f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18257f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
183800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18427f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
18587f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (int *)response)[0] is 1 for "CLIP provisioned"
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
18607f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *                           and 2 for "unknown, e.g. no network etc"
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
18637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1871f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE
18727f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
18737f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Requests the failure cause code for the most recently failed PDP
1874f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * context or CDMA data connection active
1875f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_LAST_PDP_FAIL_CAUSE
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
18847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * then it should return one of the values listed in
18857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_LastDataCallActivateFailCause, as the UI layer needs to distinguish these
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
18957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
18967f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville */
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
1898f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1901f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DATA_CALL_LIST
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of PDP contexts, returning for each
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * its CID, whether or not it is active, and its PDP type,
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * APN, and PDP adddress.
1906f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_REQUEST_PDP_CONTEXT_LIST
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
1909f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is an array of RIL_Data_Call_Response
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19127f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
1917f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_DATA_CALL_LIST 57
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
1920f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * RIL_REQUEST_RESET_RADIO - DEPRECATED
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
1926f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang * The request is DEPRECATED, use RIL_REQUEST_RADIO_POWER
1927f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
19327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
1935f8bc167551e4a5af4c22dab4855468a166b9ed30johnwang *  REQUEST_NOT_SUPPORTED
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19467f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
19517f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * caller's "response" Message here:
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
19557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
196200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19717f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * It can be invoked on the Java side from
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
19837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * An error response here will result in
19847f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * (((AsyncResult)response.obj).result) == null and
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
1999432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
2000432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * in an effort to conserve power.  These notifications should resume when the
2001432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * screen is on.
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2085f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for "Cellular (800-MHz Band)"
2086f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for "PCS (1900-MHz Band)"
2087f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 8 for "Band Class 3 (JTACS Band)"
2088f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 9 for "Band Class 4 (Korean PCS Band)"
2089f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 10 for "Band Class 5 (450-MHz Band)"
2090f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2091f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 12 for "Band Class 7 (Upper 700-MHz Band)"
2092f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 13 for "Band Class 8 (1800-MHz Band)"
2093f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 14 for "Band Class 9 (900-MHz Band)"
2094f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 15 for "Band Class 10 (Secondary 800-MHz Band)"
2095f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 16 for "Band Class 11 (400-MHz European PAMR Band)"
2096f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 17 for "Band Class 15 (AWS Band)"
2097f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 18 for "Band Class 16 (US 2.5-GHz Band)"
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
2125f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  6 for "Cellular (800-MHz Band)"
2126f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  7 for "PCS (1900-MHz Band)"
2127f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  8 for "Band Class 3 (JTACS Band)"
2128f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  9 for "Band Class 4 (Korean PCS Band)"
2129f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  10 for "Band Class 5 (450-MHz Band)"
2130f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  11 for "Band Class 6 (2-GMHz IMT2000 Band)"
2131f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  12 for "Band Class 7 (Upper 700-MHz Band)"
2132f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  13 for "Band Class 8 (1800-MHz Band)"
2133f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  14 for "Band Class 9 (900-MHz Band)"
2134f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  15 for "Band Class 10 (Secondary 800-MHz Band)"
2135f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  16 for "Band Class 11 (400-MHz European PAMR Band)"
2136f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  17 for "Band Class 15 (AWS Band)"
2137f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  18 for "Band Class 16 (US 2.5-GHz Band)"
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
216300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
216400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
216500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
216600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
216700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
216800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
216900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
217100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
217200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
217300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
217400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
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 *  RIL_E_SUCCESS
218000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
218100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
218200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
218300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
218400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
218500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
218600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
218700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
218800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
218900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
219000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
219200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
219300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
219500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
219600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
219700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
219800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
219900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
220000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
220100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
220200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
220300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
220400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
220500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
220600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
220700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
220800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
220900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
221000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
221200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
221300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
221500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
221600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
221700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
221800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
221900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
222000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
222100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
222200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
222300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
222400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
222500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
222600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
222700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
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_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
22487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
22537f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  SUCCESS
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
22667f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2267f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for GSM/WCDMA (WCDMA preferred)
226800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for GSM only
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for WCDMA only
227029be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((int *)data)[0] is == 3 for GSM/WCDMA (auto mode, according to PRL)
2271f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 4 for CDMA and EvDo (auto mode, according to PRL)
2272f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 5 for CDMA only
2273f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 6 for EvDo only
2274f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 7 for GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
2279f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2280f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE (radio resetting)
2281f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2282f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  MODE_NOT_SUPPORTED
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
229000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
2295f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for GSM/WCDMA (WCDMA preferred)
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 1 for GSM only
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 2 for WCDMA only
2298f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 3 for GSM/WCDMA (auto mode, according to PRL)
2299f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 4 for CDMA and EvDo (auto mode, according to PRL)
2300f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 5 for CDMA only
2301f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 6 for EvDo only
2302f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 7 for GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
23303d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
2332432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * LAC and/or CID (for GSM) or BID/SID/NID/latitude/longitude (for CDMA).
2333432656105ccc2f4f891fbe8fb5b636f2428f1f4ejsh * Basically +CREG=2 vs. +CREG=1 (TS 27.007).
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
23433d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2353f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2354f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_SUBSCRIPTION
23557f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2356f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the location where the CDMA subscription shall
2357f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * be retrieved
2358f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2359f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2360f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 from RUIM/SIM (default)
2361f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 from NV
2362f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2363f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2364f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2365f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2366f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2367f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2368f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2369f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SIM_ABSENT
2370f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUBSCRIPTION_NOT_AVAILABLE
2371f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2372f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION 77
2373f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2374f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2375f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE
23767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2377f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the roaming preferences in CDMA
2378f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2379f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2380f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Home Networks only, as defined in PRL
2381f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2382f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 2 for Roaming on Any Network, as defined in the PRL
23837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2384f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
23857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2386f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2387f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2388f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2389f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2390f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2391f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
2392f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2393f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2394f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE
23957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2396f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the actual setting of the roaming preferences in CDMA in the modem
2397f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2398f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
23997f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2400f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2401f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Home Networks only, as defined in PRL
2402f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Roaming on Affiliated networks, as defined in PRL
2403f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 2 for Roaming on Any Network, as defined in the PRL
24047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2405f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24067f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2407f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2408f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2409f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2410f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2411f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2412f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
2413f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2414f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2415f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_SET_TTY_MODE
24167f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2417f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the TTY mode
2418f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2419f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2420f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for TTY off
24211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 1 for TTY Full
24221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 2 for TTY HCO (hearing carryover)
24231b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)data)[0] is == 3 for TTY VCO (voice carryover)
24247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2425f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2427f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2428f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2429f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2430f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2431f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2432f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_SET_TTY_MODE 80
2433f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2434f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2435f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_QUERY_TTY_MODE
24367f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2437f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of TTY mode
2438f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2439f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
24407f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2441f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2442f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for TTY off
24431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 1 for TTY Full
24441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 2 for TTY HCO (hearing carryover)
24451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((int *)response)[0] is == 3 for TTY VCO (voice carryover)
2446f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2447f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2449f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2450f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2451f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2452f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2453f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2454f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_QUERY_TTY_MODE 81
2455f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2456f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2457f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE
2458f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2459f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request to set the preferred voice privacy mode used in voice
2460f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * scrambling
2461f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2462f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int *
2463f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2464f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
24657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2466f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2468f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2469f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2470f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2471f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2472f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2473f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
2474f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2475f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2476f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE
24777f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2478f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of preferred voice privacy mode
2479f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2480f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
24817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2482f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2483f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 0 for Standard Privacy Mode (Public Long Code Mask)
2484f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)response)[0] is == 1 for Enhanced Privacy Mode (Private Long Code Mask)
24857f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2486f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
24877f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2488f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2489f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2490f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2491f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2492f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2493f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
2494f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2495f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2496f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_FLASH
2497f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2498f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send FLASH
2499f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2500f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
2501f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char *)data)[0] is a FLASH string
25027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2503f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2505f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2506f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2507f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2508f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2509f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2510f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2511f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_FLASH 84
2512f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2513f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2514f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_BURST_DTMF
2515f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2516f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send DTMF string
2517f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2518602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * "data" is const char **
2519602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[0] is a DTMF string
2520602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[1] is the DTMF ON length in milliseconds, or 0 to use
2521602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
2522602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh * ((const char **)data)[2] is the DTMF OFF length in milliseconds, or 0 to use
2523602f80f98a06a8ed009a6c9b9aa3e0bcfc4afb23jsh *                          default
25247f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2525f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25267f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2527f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2528f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2529f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2530f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2531f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2532f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2533f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_BURST_DTMF 85
2534f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2535f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
253603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY
2537f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
253803c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * Takes a 26 digit string (20 digit AKEY + 6 digit checksum).
253903c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * If the checksum is valid the 20 digit AKEY is written to NV,
254003c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * replacing the existing AKEY no matter what it was before.
2541f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2542f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const char *
254303c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla * ((const char *)data)[0] is a 26 digit string (ASCII digits '0'-'9')
254403c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         where the last 6 digits are a checksum of the
254503c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         first 20, as specified in TR45.AHAG
254603c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         "Common Cryptographic Algorithms, Revision D.1
254703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla *                         Section 2.2"
25487f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2549f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25507f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2551f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2552f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2553f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2554f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2555f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2556f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
255703c1edf23e76a83b95ac6847e333cb1329bbfa1dNaveen Kalla#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
2558f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2559f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2560f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SEND_SMS
2561f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2562f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Send a CDMA SMS message
2563f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2564f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Message *
25657f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2566f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is a const RIL_SMS_Response *
25677f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2568bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * Based on the return error, caller decides to resend if sending sms
2569bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * fails. The CDMA error class is derived as follows,
2570bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SUCCESS is error class 0 (no error)
2571bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * SMS_SEND_FAIL_RETRY is error class 2 (temporary failure)
2572bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang * and GENERIC_FAILURE is error class 3 (permanent and no retry)
2573bfb151ba844bb97d8b21e827c0cb1556082151fajohnwang *
2574f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2575f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2576f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
25771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SMS_SEND_FAIL_RETRY
2578f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2579f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2580f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2581f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SEND_SMS 87
2582f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2583f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2584f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
2585f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2586f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Acknowledge the success or failure in the receipt of SMS
2587f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * previously indicated via RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
2588f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2589f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const RIL_CDMA_SMS_Ack *
25907f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2591f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
25927f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
2593f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2594f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2595f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2596f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2597f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2598f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2599f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
2600f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2601f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2602a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG
2603a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2604a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
2605f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2606f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2607a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2608a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_GSM_BroadcastSmsConfigInfo **
2609a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_GSM_BroadcastSmsConfigInfo *)
2610a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2611f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2612f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2613f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2614f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2615f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2616f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2617a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
2618f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2619f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2620a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG
2621f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2622f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set GSM/WCDMA Cell Broadcast SMS config
2623f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2624a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is a const RIL_GSM_BroadcastSmsConfigInfo **
2625a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(RIL_GSM_BroadcastSmsConfigInfo *)
2626a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2627f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2628a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2629f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2630f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2631f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2632f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2633f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2634f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2635a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
2636f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2637f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2638a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION
2639f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2640a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville* Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
2641f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2642f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2643f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2644f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of GSM/WCDMA Cell Broadcast SMS, 0-1,
2645f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2646a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2647f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2648a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2649f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2650f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2651f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2652f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2653f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2654f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2655a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
2656f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2657f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2658a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG
2659f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2660f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the setting of CDMA Broadcast SMS config
2661f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2662f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is NULL
2663a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2664a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "response" is a const RIL_CDMA_BroadcastSmsConfigInfo **
2665a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "responselen" is count * sizeof (RIL_CDMA_BroadcastSmsConfigInfo *)
2666a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2667f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2668f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2669f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2670f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2671f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2672f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2673a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
2674f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2675f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2676a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG
2677f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2678f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Set CDMA Broadcast SMS config
2679f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2680a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "data" is an const RIL_CDMA_BroadcastSmsConfigInfo **
2681a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * "datalen" is count * sizeof(const RIL_CDMA_BroadcastSmsConfigInfo *)
2682a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2683f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2684a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2685f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2686f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2687f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2688f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2689f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2690f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2691a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
2692f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2693f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2694a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville * RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION
2695f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2696f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Enable or disable the reception of CDMA Broadcast SMS
2697f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2698f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is const int *
2699f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * (const int *)data[0] indicates to activate or turn off the
2700f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * reception of CDMA Broadcast SMS, 0-1,
2701f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *                       0 - Activate, 1 - Turn off
2702a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2703f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2704a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville *
2705f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2706f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2707f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2708f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2709f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2710f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2711a592eebc476a3d234f47f93e58252f8c822fc772Wink Saville#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
2712f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2713f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2714f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_SUBSCRIPTION
2715f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2716f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Request the device MDN / H_SID / H_NID.
2717f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2718f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is only allowed when CDMA subscription is available.  When CDMA
2719f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * subscription is changed, application layer should re-issue the request to
2720f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * update the subscription information.
2721f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2722f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * If a NULL value is returned for any of the device id, it means that error
2723f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
2724f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2725f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
2726f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const char **)response)[0] is MDN if CDMA subscription is available
272729be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[1] is a comma separated list of H_SID (Home SID) if
272829be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
272929be25c17885e6c7c32b6aea293d689d5b9fb463jsh * ((const char **)response)[2] is a comma separated list of H_NID (Home NID) if
273029be25c17885e6c7c32b6aea293d689d5b9fb463jsh *                              CDMA subscription is available, in decimal format
27311b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * ((const char **)response)[3] is MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
2732d4ee7dc0e98de1aa990e6c8a63f639779f9a86e9Wink Saville * ((const char **)response)[4] is PRL version if CDMA subscription is available
2733f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2734f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2735f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2736f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RIL_E_SUBSCRIPTION_NOT_AVAILABLE
2737f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2738f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2739eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
2740f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2741f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2742f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM
2743f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2744f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Stores a CDMA SMS message to RUIM memory.
2745f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2746f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is RIL_CDMA_SMS_WriteArgs *
2747f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2748f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is int *
2749f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((const int *)response)[0] is the record index where the message is stored.
2750f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2751f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2752f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2753f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2754f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2755f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2756f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2757eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
2758f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2759f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2760f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM
2761f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2762f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Deletes a CDMA SMS message from RUIM memory.
2763f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2764f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is int  *
2765f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * ((int *)data)[0] is the record index of the message to delete.
2766f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2767f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is NULL
2768f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2769f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2770f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2771f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2772f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2773f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
2774f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2775eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
2776f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2777f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville/**
2778f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_DEVICE_IDENTITY
2779eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2780eafe79ddae0509f3173274c338e69241f5055111Wink Saville * Request the device ESN / MEID / IMEI / IMEISV.
2781eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2782f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * The request is always allowed and contains GSM and CDMA device identity;
2783eafe79ddae0509f3173274c338e69241f5055111Wink Saville * it substitutes the deprecated requests RIL_REQUEST_GET_IMEI and
2784f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_REQUEST_GET_IMEISV.
2785eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2786eafe79ddae0509f3173274c338e69241f5055111Wink Saville * If a NULL value is returned for any of the device id, it means that error
2787f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * accessing the device.
2788eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2789eafe79ddae0509f3173274c338e69241f5055111Wink Saville * When CDMA subscription is changed the ESN/MEID may change.  The application
2790f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * layer should re-issue the request to update the device identity in this case.
2791eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2792f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "response" is const char **
2793eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[0] is IMEI if GSM subscription is available
2794eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[1] is IMEISV if GSM subscription is available
2795eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[2] is ESN if CDMA subscription is available
2796eafe79ddae0509f3173274c338e69241f5055111Wink Saville * ((const char **)response)[3] is MEID if CDMA subscription is available
2797eafe79ddae0509f3173274c338e69241f5055111Wink Saville *
2798f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * Valid errors:
2799f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  SUCCESS
2800f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  RADIO_NOT_AVAILABLE
2801f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *  GENERIC_FAILURE
2802f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville */
2803eafe79ddae0509f3173274c338e69241f5055111Wink Saville#define RIL_REQUEST_DEVICE_IDENTITY 98
2804f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
28051b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
28061b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE
28071b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
28081b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Request the radio's system selection module to exit emergency
28091b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * callback mode.  RIL will not respond with SUCCESS until the modem has
28101b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * completely exited from Emergency Callback Mode.
28111b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
28121b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is NULL
28137f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
28141b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "response" is NULL
28157f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
28161b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Valid errors:
28171b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  SUCCESS
28181b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RADIO_NOT_AVAILABLE
28191b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  GENERIC_FAILURE
28201b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
28211b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
28221b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
2823f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
2824000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
2825000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_GET_SMSC_ADDRESS
2826000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2827000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Queries the default Short Message Service Center address on the device.
2828000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2829000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is NULL
2830000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2831000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is const char * containing the SMSC address.
2832000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2833000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
2834000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
2835000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
2836000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
2837000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2838000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
2839000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_GET_SMSC_ADDRESS 100
2840000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
2841000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh/**
2842000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * RIL_REQUEST_SET_SMSC_ADDRESS
2843000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2844000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Sets the default Short Message Service Center address on the device.
2845000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2846000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "data" is const char * containing the SMSC address.
2847000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2848000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * "response" is NULL
2849000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2850000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh * Valid errors:
2851000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  SUCCESS
2852000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  RADIO_NOT_AVAILABLE
2853000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *  GENERIC_FAILURE
2854000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh *
2855000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh */
2856000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh#define RIL_REQUEST_SET_SMSC_ADDRESS 101
2857000a9fe96fdf9111387d2bc389d2f6bb3e627d0fjsh
2858b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh/**
2859b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * RIL_REQUEST_REPORT_SMS_MEMORY_STATUS
2860b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2861b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Indicates whether there is storage available for new SMS messages.
2862b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2863b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "data" is int *
2864b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * ((int *)data)[0] is 1 if memory is available for storing new messages
2865b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *                  is 0 if memory capacity is exceeded
2866b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2867b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * "response" is NULL
2868b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2869b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh * Valid errors:
2870b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  SUCCESS
2871b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  RADIO_NOT_AVAILABLE
2872b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *  GENERIC_FAILURE
2873b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh *
2874b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh */
2875b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
2876b60444ef2fe63b372e13f3d38ebf8448d6c127f5jsh
28772641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville/**
28782641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
28792641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
28802641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Indicates that the StkSerivce is running and is
28812641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * ready to receive RIL_UNSOL_STK_XXXXX commands.
28822641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
28832641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "data" is NULL
28842641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * "response" is NULL
28852641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
28862641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville * Valid errors:
28872641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  SUCCESS
28882641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  RADIO_NOT_AVAILABLE
28892641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *  GENERIC_FAILURE
28902641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville *
28912641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville */
28922641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
28932641d5b8426beb86870611e5bc7c4eb0a877025bWink Saville
2894f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
289500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
289600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2897f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
289800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
289900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
290000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
290100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
290200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
290300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
290400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
290500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
290600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
290700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
290800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
290900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
291000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
291100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
291200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
291300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
291400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
291500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
291600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
291700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
291800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
291900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
292000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
292100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
29227f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Response should be invoked on, for example,
292300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
292400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
292500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
292600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
292700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
292800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
292900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
293000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
293100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
29327f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
293300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
293400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when network state, operator name, or GPRS state has changed
293500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Basically on, +CREG and +CGREG
293600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
293700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
293800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
293900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_REGISTRATION_STATE
294000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GPRS_REGISTRATION_STATE
294100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
294200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
294300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
294400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
294500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
294600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
294700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
294800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED 1002
294900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
295000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
295100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
295200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
295300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
29547f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
295500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
295600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
295700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
295800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
295900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
296000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
296100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
296200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
29637f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
296400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
296500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
296600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
296700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
296800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
296900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
297000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
297100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
297200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
297300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
29747f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
297500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
297600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
297700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
297800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
297900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
298000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
298100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
298200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
29837f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * No new RIL_UNSOL_RESPONSE_NEW_SMS
298400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
298500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
298600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
298700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
298800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
298900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
299000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
299100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
299200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
299300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
29947f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
299500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
299600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
299700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
299800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
299900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
300000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
300100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
300200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
300300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
300400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
300500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
300600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
300700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
30087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * ((const char **)data)[0] points to a type code, which is
300900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
301000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
301100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
301200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
301300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
301400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
301500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
301600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
301700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
301800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
301900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
302000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
302100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
302200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
302300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
302400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
302500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
302600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
302700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
302800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
302900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
303000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
30317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville#define RIL_UNSOL_ON_USSD_REQUEST 1007
303200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
303300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
303400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
303500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
303600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
303700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
303800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
303900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
304000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
304100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
304200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
304300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
304400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
304500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
304600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
304700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
304800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is a const RIL_SignalStrength *
305000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
305100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
305200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
305300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
305400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
3055f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * RIL_UNSOL_DATA_CALL_LIST_CHANGED
305600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
305700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate a PDP context state has changed, or a new context
305800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been activated or deactivated
3059f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * replaces RIL_UNSOL_PDP_CONTEXT_LIST_CHANGED
306000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3061f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * "data" is an array of RIL_Data_Call_Response identical to that
3062f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * returned by RIL_REQUEST_DATA_CALL_LIST
306300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
3064f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville * See also: RIL_REQUEST_DATA_CALL_LIST
306500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
306600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3067f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_DATA_CALL_LIST_CHANGED 1010
306800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
306900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
307000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
307100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
307200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
307300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
307400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
307500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
307600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
307700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
307800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
307900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
308000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
308100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
308200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
308300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
308400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
308500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
308600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
308700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
308800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
308900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
309000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
309100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
309200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
309300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
309400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
309500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
309600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
309700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
309800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
309900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
310000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
310100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
310200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
310300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
310400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
310500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
310600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
310700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
310800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
310900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
311000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
311100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
311200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
311300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
311400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
311500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
311600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
311700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
311800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
311900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
312000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
312100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
312200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
312300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
312400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
312500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
312600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
312700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
312800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
312900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
313000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
313100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
313200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
313300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
313400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
313500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
313600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
313700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
313800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
313900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
314000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
314100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
314200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
314300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
314400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
314500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
314600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_FILE_UPDATE or NULL for any other result.
314700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
314800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note: If the radio state changes as a result of the SIM refresh (eg,
314900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
315000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
315100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
315200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
315300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
315400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
315500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
315600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
315700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
31586453306c90eee1356a14a9e6679d1171ec126173Wink Saville * There must be at least one RIL_UNSOL_CALL_RING at the beginning
31596453306c90eee1356a14a9e6679d1171ec126173Wink Saville * of a call and sending multiple is optional. If the system property
31606453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is false then the upper layers
31616453306c90eee1356a14a9e6679d1171ec126173Wink Saville * will generate the multiple events internally. Otherwise the vendor
31626453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ril must generate multiple RIL_UNSOL_CALL_RING if
31636453306c90eee1356a14a9e6679d1171ec126173Wink Saville * ro.telephony.call_ring.multiple is true or if it is absent.
31646453306c90eee1356a14a9e6679d1171ec126173Wink Saville *
31656453306c90eee1356a14a9e6679d1171ec126173Wink Saville * The rate of these events is controlled by ro.telephony.call_ring.delay
31666453306c90eee1356a14a9e6679d1171ec126173Wink Saville * and has a default value of 3000 (3 seconds) if absent.
316700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
31683d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is null for GSM
31693d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville * "data" is const RIL_CDMA_SignalInfoRecord * if CDMA
317000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
317100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
317200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
317334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
317434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
317534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
317634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
31773d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
317834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
3179f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
318034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
318134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
318234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
318334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
318434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
318534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
318634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
318734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
31883d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
318934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
31903d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
319134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
319234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
31933d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
319434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
319534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
31963d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *
319734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
319834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
319934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
320034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
320134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
320234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
320334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
32047f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
320534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const char * of 88 bytes which indicates each page
320634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * of a CBS Message sent to the MS by the BTS as coded in 3GPP
320734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * 23.041 Section 9.4.1.1
3208f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
320934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
321034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
3211f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
321234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
321334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
321434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
321534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
321634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
321734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
321834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
3219f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville *
322034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
3221f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
3222f4c4d36c410a3501d282dd7de1c7c3350734f27eWink Saville
322334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
322434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
322534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
322634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
322734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
322834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
322934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
323034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
323134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
323234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
323334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
323434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
32351b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
32361b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE
32371b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32381b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Indicates that the radio system selection module has
32391b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * autonomously entered emergency callback mode.
32401b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32411b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is null
32421b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32431b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
32441b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE 1024
32451b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
32461b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
32471b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_CALL_WAITING
32481b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32491b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives a call waiting indication.
32501b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32511b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_CallWaiting *
32527f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
32531b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
32541b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_CALL_WAITING 1025
325534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
32561b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
32571b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_OTA_PROVISION_STATUS
32581b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32591b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives an update of the progress of an
32601b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * OTASP/OTAPA call.
32611b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32621b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const int *
32631b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  For CDMA this is an integer OTASP/OTAPA status listed in
32641b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *  RIL_CDMA_OTA_ProvisionStatus.
32651b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32661b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
32671b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_OTA_PROVISION_STATUS 1026
32681b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville
32691b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville/**
32701b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * RIL_UNSOL_CDMA_INFO_REC
32711b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32721b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * Called when CDMA radio receives one or more info recs.
32731b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32741b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville * "data" is const RIL_CDMA_InformationRecords *
32751b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville *
32761b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville */
32771b5fd23e2bc82e5bed48125317cf2f9837cf6ae8Wink Saville#define RIL_UNSOL_CDMA_INFO_REC 1027
327834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
3279af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh/**
3280af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * RIL_UNSOL_OEM_HOOK_RAW
3281af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3282af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * This is for OEM specific use.
3283af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh *
3284af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh * "data" is a byte[]
3285af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh */
3286af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh#define RIL_UNSOL_OEM_HOOK_RAW 1028
3287af6ecbf0fa03379818038459ee1b61ea393ffd4fJaikumar Ganesh
32885d621da539abea83309d77317ede40126f47d5f0John Wang/**
32895d621da539abea83309d77317ede40126f47d5f0John Wang * RIL_UNSOL_RINGBACK_TONE
32905d621da539abea83309d77317ede40126f47d5f0John Wang *
32915d621da539abea83309d77317ede40126f47d5f0John Wang * Indicates that nework doesn't have in-band information,  need to
32925d621da539abea83309d77317ede40126f47d5f0John Wang * play out-band tone.
32935d621da539abea83309d77317ede40126f47d5f0John Wang *
32945d621da539abea83309d77317ede40126f47d5f0John Wang * "data" is an int *
32955d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 0 for stop play ringback tone.
32965d621da539abea83309d77317ede40126f47d5f0John Wang * ((int *)data)[0] == 1 for start play ringback tone.
32975d621da539abea83309d77317ede40126f47d5f0John Wang */
32985d621da539abea83309d77317ede40126f47d5f0John Wang#define RIL_UNSOL_RINGBACK_TONE 1029
32995d621da539abea83309d77317ede40126f47d5f0John Wang
330000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
330100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
330200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
330300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
330400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
330500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
330600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
330700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
330800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
330900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
331000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
331100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
331200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
33137f8568086f2ea14885b0091c793e14c2656f0da2Wink Savilletypedef void (*RIL_RequestFunc) (int request, void *data,
331400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
331500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
331600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
331700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
331800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
331900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
332000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
332100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
332200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
332300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
332400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
332500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
332600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
332700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
332800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
332900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
333000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
33317f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * This function is called from a separate thread--not the
333200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
333300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
33347f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *
333500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
333600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
333700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
333800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
333900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
334000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
334100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
334300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33447f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
334500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
334600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
334700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
334800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
334900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
335100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
335300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
335500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
335600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
335700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
335800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
335900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
336000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
336100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
336200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
336300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
336400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
336500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
336600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
336700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
336800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
336900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
337000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
337100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
337200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
337300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
337400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
337500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
33767f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * "response" is owned by caller, and should not be modified or
337700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
337800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
337900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
338000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
33817f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
338200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
338300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
338400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
338500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
338600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
338700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
338800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
338900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
339000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
33917f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
339200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
339300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
339400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
33957f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville     * Call user-specifed "callback" function on on the same thread that
339600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
339700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
339800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
339900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
340000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
340100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34027f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville    void (*RequestTimedCallback) (RIL_TimedCallback callback,
34037f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville                                   void *param, const struct timeval *relativeTime);
340400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
340500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
340600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34077f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville/**
34087f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville *  RIL implementations must defined RIL_Init
340900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
341000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
341100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
341300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
341400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
341500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
341600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
341700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
341800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
341900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
342000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
342200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
342300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
342400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
342500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
342600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
342700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
342900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
343000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
343100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
343200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
343300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
34343d54e74bc450bb40977e3ae6fab6185fe687bdaeWink Saville *          routine.
343500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
343600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
343700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
343800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
343900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
344000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
34417f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
344200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
344300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
344400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
344500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
344600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
344700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
344800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
344900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
345000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34517f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
345200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
345300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
345400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
345500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
34567f8568086f2ea14885b0091c793e14c2656f0da2Wink Saville * Call user-specifed "callback" function on on the same thread that
345700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
345800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
345900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
346000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
346100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
346200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
346300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
346400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
346500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
346600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34677f8568086f2ea14885b0091c793e14c2656f0da2Wink Savillevoid RIL_requestTimedCallback (RIL_TimedCallback callback,
346800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                               void *param, const struct timeval *relativeTime);
346900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
347200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
347400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
347500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
347600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
347700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
3478