ril.h revision 34a5108969fbfc6cf8140513b7246da805902b7a
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
1700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/*
1800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ISSUES:
1900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * - SMS retransmit (specifying TP-Message-ID)
2000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
2200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
2400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TODO
2500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supp Service Notification (+CSSN)
2700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GPRS PDP context deactivate notification
2800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
2900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
3000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifndef ANDROID_RIL_H
3300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define ANDROID_RIL_H 1
3400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <stdlib.h>
3600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#include <sys/time.h>
3700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
3800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
3900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectextern "C" {
4000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
4100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_VERSION 2
4300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void * RIL_Token;
4500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
4600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
4700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SUCCESS = 0,
4800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_RADIO_NOT_AVAILABLE = 1,     /* If radio did not start or is resetting */
4900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_GENERIC_FAILURE = 2,
5000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_PASSWORD_INCORRECT = 3,      /* for PIN/PIN2 methods only! */
5100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PIN2 = 4,                /* Operation requires SIM PIN2 to be entered */
5200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SIM_PUK2 = 5,                /* Operation requires SIM PIN2 to be entered */
5300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_REQUEST_NOT_SUPPORTED = 6,
5400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_CANCELLED = 7,
5500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, /* data ops are not allowed during voice
5600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   call on a Class C GPRS device */
5700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9,  /* data ops are not allowed before device
5800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                                   registers in network */
5900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_E_SMS_SEND_FAIL_RETRY = 10		/* fail to send sms and need retry */
6000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Errno;
6100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
6200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
6300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ACTIVE = 0,
6400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_HOLDING = 1,
6500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_DIALING = 2,    /* MO call only */
6600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_ALERTING = 3,   /* MO call only */
6700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_INCOMING = 4,   /* MT call only */
6800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CALL_WAITING = 5     /* MT call only */
6900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_CallState;
7000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
7100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
7200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RADIO_STATE_OFF = 0,          /* Radio explictly powered off (eg CFUN=0) */
7300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RADIO_STATE_UNAVAILABLE = 1,  /* Radio unavailable (eg, resetting or not booted) */
7400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RADIO_STATE_SIM_NOT_READY = 2,      /* Radio is on, but the SIM interface is not ready */
7500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RADIO_STATE_SIM_LOCKED_OR_ABSENT = 3, /* SIM PIN locked, PUK required, network
7600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                               personalization locked, or SIM absent */
7700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RADIO_STATE_SIM_READY = 4           /* Radio is on and SIM interface is available */
7800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioState;
7900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
8000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
8100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_CallState   state;
8200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             index;      /* GSM Index for use with, eg, AT+CHLD */
8300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             toa;        /* type of address, eg 145 = intl */
8400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char            isMpty;     /* nonzero if is mpty call */
8500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char            isMT;       /* nonzero if call is mobile terminated */
8600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char            als;        /* ALS line indicator if available
8700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (0 = line 1) */
8800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char            isVoice;    /* nonzero if this is is a voice call */
8900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
9000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          number;     /* phone number */
9100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Call;
9200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
9300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
9400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             cid;        /* Context ID */
9500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             active;     /* nonzero if context is active */
9600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          type;       /* X.25, IP, IPV6, etc. */
9700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          apn;
9800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          address;
9900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_PDP_Context_Response;
10000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
10100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
10200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int messageRef;   /*TP-Message-Reference*/
10300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *ackPDU;     /* or NULL if n/a */
10400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_Response;
10500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
10600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_WRITE_SMS_TO_SIM */
10700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
10800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int status;     /* Status of message.  See TS 27.005 3.1, "<stat>": */
10900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      0 = "REC UNREAD"    */
11000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      1 = "REC READ"      */
11100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      2 = "STO UNSENT"    */
11200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                    /*      3 = "STO SENT"      */
11300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * pdu;     /* PDU of message to write, as a hex string. */
11400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * smsc;    /* SMSC address in GSM BCD format prefixed by a length byte
11500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       (as expected by TS 27.005) or NULL for default SMSC */
11600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SMS_WriteArgs;
11700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
11800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/** Used by RIL_REQUEST_DIAL */
11900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
12000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char * address;
12100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int clir;
12200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project            /* (same as 'n' paremeter in TS 27.007 7.7 "+CLIR"
12300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 0 on "use subscription default value"
12400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 1 on "CLIR invocation" (restrict CLI presentation)
12500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             * clir == 2 on "CLIR suppression" (allow CLI presentation)
12600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project             */
12700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
12800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_Dial;
12900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
13000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
13100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int command;    /* one of the commands listed for TS 27.007 +CRSM*/
13200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int fileid;     /* EF id */
13300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *path;     /* "pathid" from TS 27.007 +CRSM command.
13400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                       Path is in hex asciii format eg "7f205f70"
13500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                     */
13600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p1;
13700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p2;
13800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int p3;
13900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *data;     /* May be NULL*/
14000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *pin2;     /* May be NULL*/
14100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO;
14200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
14300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
14400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw1;
14500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int sw2;
14600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *simResponse;  /* In hex string format ([a-fA-F0-9]*). */
14700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SIM_IO_Response;
14800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
14900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See also com.android.internal.telephony.gsm.CallForwardInfo */
15000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
15100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
15200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             status;     /*
15300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
15400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status 1 = active, 0 = not active
15500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 *
15600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * For RIL_REQUEST_SET_CALL_FORWARD:
15700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * status is:
15800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = disable
15900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = enable
16000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 2 = interrogate
16100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 3 = registeration
16200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 4 = erasure
16300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
16400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
16500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             reason;     /* from TS 27.007 7.11 "reason" */
16600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             serviceClass;/* From 27.007 +CCFC/+CLCK "class"
16700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    See table for Android mapping from
16800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    MMI service code
16900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project				    0 means user doesn't input class */
17000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             toa;        /* "type" from TS 27.007 7.11 */
17100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *          number;     /* "number" from TS 27.007 7.11. May be NULL */
17200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int             timeSeconds; /* for CF no reply only */
17300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}RIL_CallForwardInfo;
17400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
17500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
17600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project   char * cid;         /* Cell Id (as described in TS 27.005) in 16 bits in GSM
17700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Primary Scrambling Code (as described in TS 25.331)
17800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        *         in 9 bits in UMTS
17900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Valid values are hexadecimal 0x0000 - 0xffff.
18000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
18100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project   int    rssi;        /* Received RSSI in 2G,
18200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        * Level index of CPICH Received Signal Code Power in 3G
18300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                        */
18400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_NeighboringCell;
18500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
18600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_CALL_FAIL_CAUSE */
18700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
18800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_NORMAL = 16,
18900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_BUSY = 17,
19000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CONGESTION = 34,
19100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ACM_LIMIT_EXCEEDED = 68,
19200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_CALL_BARRED = 240,
19300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_FDN_BLOCKED = 241,
19400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    CALL_FAIL_ERROR_UNSPECIFIED = 0xffff
19500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastCallFailCause;
19600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
19700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* See RIL_REQUEST_LAST_PDP_FAIL_CAUSE */
19800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
19900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    PDP_FAIL_BARRED = 8,         /* no retry; prompt user */
20000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    PDP_FAIL_BAD_APN = 27,       /* no retry; prompt user */
20100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    PDP_FAIL_USER_AUTHENTICATION = 29, /* no retry; prompt user */
20200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    PDP_FAIL_SERVICE_OPTION_NOT_SUPPORTED = 32,  /*no retry; prompt user */
20300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    PDP_FAIL_SERVICE_OPTION_NOT_SUBSCRIBED = 33, /*no retry; prompt user */
20400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    PDP_FAIL_ERROR_UNSPECIFIED = 0xffff  /* This and all other cases: retry silently */
20500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_LastPDPActivateFailCause;
20600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
20700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Used by RIL_UNSOL_SUPP_SVC_NOTIFICATION */
20800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
20900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     notificationType;   /*
21000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 0 = MO intermediate result code
21100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 * 1 = MT unsolicited result code
21200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                 */
21300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     code;               /* See 27.007 7.17
21400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code1" for MO
21500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   "code2" for MT. */
21600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     index;              /* CUG index. See 27.007 7.17. */
21700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int     type;               /* "type" from 27.007 7.17 (MT only). */
21800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    char *  number;             /* "number" from 27.007 7.17
21900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   (MT only, may be NULL). */
22000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SuppSvcNotification;
22100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
22200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* see RIL_REQUEST_GET_SIM_STATUS */
22300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_SIM_ABSENT      		0
22400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_SIM_NOT_READY   		1
22500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* RIL_SIM_READY means that the radio state is RADIO_STATE_SIM_READY.
22600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is more
22700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * than "+CPIN: READY". It also means the radio is ready for SIM I/O
22800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
22900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_SIM_READY       		2
23000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_SIM_PIN         		3
23100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_SIM_PUK         		4
23200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_SIM_NETWORK_PERSONALIZATION 5
23300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
23400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* The result of a SIM refresh, returned in data[0] of RIL_UNSOL_SIM_REFRESH */
23500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef enum {
23600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* A file on SIM has been updated.  data[1] contains the EFID. */
23700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_FILE_UPDATE = 0,
23800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM initialized.  All files should be re-read. */
23900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_INIT = 1,
24000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /* SIM reset.  SIM power required, SIM may be locked and all files should be re-read. */
24100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    SIM_RESET = 2
24200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_SimRefreshResult;
24300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
24434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* No restriction at all including voice/SMS/USSD/SS/AV64 and packet data. */
24534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_NONE           0x00
24634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block emergency call due to restriction. But allow all normal voice/SMS/USSD/SS/AV64. */
24734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_EMERGENCY   0x01
24834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all normal voice/SMS/USSD/SS/AV64 due to restriction. Only Emergency call allowed. */
24934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_NORMAL      0x02
25034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block all voice/SMS/USSD/SS/AV64	including emergency call due to restriction.*/
25134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_CS_ALL         0x04
25234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/* Block packet data access due to restriction. */
25334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_RESTRICTED_STATE_PS_ALL         0x10
25434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
25500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
25600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_SIM_STATUS
25700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
25800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests status of the SIM interface and the SIM card
25900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
26100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be an int * pointing to RIL_SIM_* constant
26300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This should always succeed (RIL_SUCCESS)
26400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the radio is off or unavailable, return RIL_SIM_NOT_READY
26600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
26700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note: RIL_SIM_READY means that the radio state
26800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is RADIO_STATE_SIM_READY.   This is more than "+CPIN: READY".
26900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * It also means the radio is ready for SIM I/O
27000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
27100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
27200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Must never fail
27300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
27400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_SIM_STATUS 1
27500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
27600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
27700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN
27800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
27900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN. Only called if SIM status is RIL_SIM_PIN
28000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
28100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
28200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN value
28300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
28400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
28500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
28600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
28700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
28800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SUCCESS
28900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RADIO_NOT_AVAILABLE (radio resetting)
29000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * GENERIC_FAILURE
29100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * PASSWORD_INCORRECT
29200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
29300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN 2
29500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
29700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
29800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK
29900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PUK and new PIN.
30100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
30300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK value
30400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
30500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
30700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
30800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
30900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
31000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
31100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
31200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
31300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
31400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK is invalid)
31500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
31600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
31700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK 3
31800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
31900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
32000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PIN2
32100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PIN2. Only called following operation where SIM_PIN2 was
32300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned as a a failure from a previous operation.
32400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
32600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PIN2 value
32700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
32800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
32900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
33100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
33200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
33300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
33400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
33500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
33600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
33700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
33800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PIN2 4
33900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
34000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
34100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_SIM_PUK2
34200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies SIM PUK2 and new PIN2.
34400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
34600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is PUK2 value
34700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
34800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
34900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
35000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
35100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
35200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
35300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
35400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
35500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
35600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
35700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (PUK2 is invalid)
35800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
35900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
36000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_SIM_PUK2 5
36100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
36200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
36300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN
36400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
36500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies old SIM PIN and new PIN.
36600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
36700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
36800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN value
36900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN value
37000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
37200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
37400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
37500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
37600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
37700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
37800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
37900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN is invalid)
38000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
38200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN 6
38400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
38600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
38700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_SIM_PIN2
38800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
38900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Supplies old SIM PIN2 and new PIN2.
39000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
39200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is old PIN2 value
39300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is new PIN2 value
39400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
39600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
39800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
39900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
40000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
40100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
40200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
40300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (old PIN2 is invalid)
40400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
40500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
40600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
40700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_SIM_PIN2 7
40800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
40900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
41000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION
41100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests that network personlization be deactivated
41300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
41500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)(data))[0]] is network depersonlization code
41600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be NULL
41800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
41900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
42000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
42100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
42200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
42300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
42400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  PASSWORD_INCORRECT
42500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     (code is invalid)
42600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
42700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
42800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
42900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
43000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
43100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CURRENT_CALLS
43200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current call list
43400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
43600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a "const RIL_Call **"
43800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
43900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
44000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
44100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
44200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
44300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
44400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      (request will be made again in a few hundred msec)
44500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
44600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
44700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CURRENT_CALLS 9
44800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
44900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
45000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
45100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DIAL
45200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
45300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Initiate voice call
45400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
45500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_Dial *
45600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
45700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
45800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This method is never used for supplementary service codes
45900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
46000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
46100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
46200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
46300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
46400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
46500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DIAL 10
46600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
46700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
46800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMSI
46900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
47000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the SIM IMSI
47100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
47200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only valid when radio state is "RADIO_STATE_SIM_READY"
47300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
47400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
47500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMSI
47600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
47700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
47800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
47900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
48000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
48100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
48200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
48300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMSI 11
48400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
48500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
48600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP
48700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
48800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up a specific line (like AT+CHLD=1x)
48900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
49000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
49100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] contains GSM call index (value of 'x' in CHLD above)
49200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
49300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
49400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
49500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
49600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
49700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
49800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
49900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
50000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
50100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP 12
50200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
50300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
50400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND
50500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
50600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=0)
50700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
50800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
50900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
51000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
51100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
51200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
51300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
51400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
51500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
51600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
51700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
51800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
51900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
52000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND
52100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
52200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Hang up waiting or held (like AT+CHLD=1)
52300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
52400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
52500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
52600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
52700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
52800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
52900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
53000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
53100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
53200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
53300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
53400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
53500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
53600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE
53700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
53800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Switch waiting or holding call and active call (like AT+CHLD=2)
53900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
54000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * State transitions should be is follows:
54100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
54200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If call 1 is waiting and call 2 is active, then if this re
54300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
54400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   BEFORE                               AFTER
54500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call 1   Call 2                 Call 1       Call 2
54600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   HOLDING                HOLDING     ACTIVE
54700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   WAITING                HOLDING     ACTIVE
54800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * HOLDING  WAITING                HOLDING     ACTIVE
54900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ACTIVE   IDLE                   HOLDING     IDLE
55000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * IDLE     IDLE                   IDLE        IDLE
55100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
55200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
55300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
55400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
55500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
55600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
55700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
55800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
55900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
56000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
56100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE 15
56200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
56300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
56400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
56500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CONFERENCE
56600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
56700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Conference holding and active (like AT+CHLD=3)
56800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
56900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
57000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
57100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
57200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
57300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
57400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
57500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
57600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
57700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CONFERENCE 16
57800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
57900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
58000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_UDUB
58100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
58200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send UDUB (user determined used busy) to ringing or
58300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * waiting call answer)(RIL_BasicRequest r);
58400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
58500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
58600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
58700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
58800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
58900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
59000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
59100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
59200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
59300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_UDUB 17
59400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
59500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
59600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_CALL_FAIL_CAUSE
59700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
59800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently terminated call
59900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
60000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
60100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
60200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
60300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   Annex H or close approximation
60400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
60534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * The implementation should return CALL_FAIL_ERROR_UNSPECIFIED for blocked
60634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * MO calls by restricted state (See RIL_UNSOL_RESTRICTED_STATE_CHANGED)
60734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
60800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
60900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in RIL_LastCallFailCause,
61000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the UI layer needs to distinguish these cases for tone generation or
61100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * error notification.
61200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
61300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
61400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
61500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
61600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
61700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
61800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_PDP_FAIL_CAUSE
61900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
62000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
62100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
62200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
62300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIGNAL_STRENGTH
62400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
62500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests current signal strength and bit error rate
62600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
62700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Must succeed if radio is on.
62800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
62900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
63000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an "int *"
63100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is received signal strength (0-31, 99)
63200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[1] is bit error rate (0-7, 99)
63300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  as defined in TS 27.007 8.5
63400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Other values (eg -1) are not legal
63500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
63600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
63700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
63800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
63900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
64000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
64100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIGNAL_STRENGTH 19
64200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
64300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_REGISTRATION_STATE
64400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
64500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current registration state
64600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
64700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
64800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
64900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[0] is registration state 0-5 from TS 27.007 7.2
65000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
65100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
65200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
65300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
65400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
65500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
65600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     In GSM, CID is Cell ID (as described in TS 27.007) in 16 bits
65700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     In UMTS, CID is UMTS Cell Identity (as described in TS 25.331) in 28 bits
65800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
65900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that registration state 4 ("unknown") is treated
66000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
66100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
66200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
66300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
66400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
66500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
66600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
66700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_REGISTRATION_STATE 20
66800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
66900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
67000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GPRS_REGISTRATION_STATE
67100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
67200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current GPRS registration state
67300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
67400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
67500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "char **"
67600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[0] is registration state 0-5 from TS 27.007 7.2
67700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is LAC if registered or NULL if not
67800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is CID if registered or NULL if not
67900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[3] indicates the available radio technology, where:
68000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      0 == unknown
68100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      1 == GPRS only
68200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      2 == EDGE
68300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      3 == UMTS
68400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
68500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and CID are in hexadecimal format.
68600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid LAC are 0x0000 - 0xffff
68700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * valid CID are 0x00000000 - 0x0fffffff
68800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
68900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that registration state 4 ("unknown") is treated
69000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as "out of service" in the Android telephony system
69100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
69200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
69300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
69400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
69500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
69600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
69700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GPRS_REGISTRATION_STATE 21
69800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
69900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
70000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
70100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
70200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request current operator ONS or EONS
70300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
70400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
70500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "const char **"
70600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[0] is long alpha ONS or EONS
70700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
70800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
70900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[1] is short alpha ONS or EONS
71000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
71100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[2] is 5 or 6 digit numeric code (MCC + MNC)
71200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                                  or NULL if unregistered
71300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
71400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
71500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
71600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
71700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
71800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
71900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OPERATOR 22
72000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
72100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
72200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RADIO_POWER
72300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
72400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Toggle radio on and off (for "airplane" mode)
72500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
72600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "Radio On"
72700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Radio Off"
72800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
72900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
73000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
73100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio on if "on" > 0
73200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn radio off if "on" == 0
73300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
73400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
73500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
73600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
73700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
73800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
73900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RADIO_POWER 23
74000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
74100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
74200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF
74300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
74400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a DTMF tone
74500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
74600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation is currently playing a tone requested via
74700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START, that tone should be cancelled and the new tone
74800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be played instead
74900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
75000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
75100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
75200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[1] is a single character with one of 3 values:
75300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    'S' -- tone should be played for a short time
75400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    'L' -- tone should be played for a long time
75500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
75600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
75700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this block/mute microphone?
75800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * How does this interact with local DTMF feedback?
75900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
76000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
76100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
76200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
76300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
76400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
76500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF_STOP, RIL_REQUEST_DTMF_START
76600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
76700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
76800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF 24
76900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
77000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
77100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS
77200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
77300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message
77400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
77500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
77600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
77700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
77800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
77900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
78000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
78100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
78200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
78300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
78400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
78500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
78600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
78700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
78800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
78900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
79000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
79100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
79200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
79300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
79400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME how do we specify TP-Message-Reference if we need to resend?
79500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
79600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS 25
79700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
79900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
80000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_SMS_EXPECT_MORE
80100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
80200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send an SMS message. Identical to RIL_REQUEST_SEND_SMS,
80300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * except that more messages are expected to be sent soon. If possible,
80400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command)
80500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
80600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
80700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is SMSC address in GSM BCD format prefixed
80800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      by a length byte (as expected by TS 27.005) or NULL for default SMSC
80900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is SMS in PDU format as an ASCII hex string
81000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      less the SMSC address
81100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      TP-Layer-Length is be "strlen(((const char **)data)[1])/2"
81200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SMS_Response *
81400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Based on the return error, caller decides to resend if sending sms
81600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * fails. SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332)
81700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and GENERIC_FAILURE means no retry (i.e. error cause is 500)
81800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
81900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
82000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
82100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
82200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SMS_SEND_FAIL_RETRY
82300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
82400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
82500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
82600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
82700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
82900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
83000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SETUP_DEFAULT_PDP
83100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure and activate PDP context (CID 1) for default IP connection
83300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Android Telephony layer will start up pppd process on specified
83500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * tty when this request responded to.
83600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
83700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **
83800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is the APN to connect to
83900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the username, or NULL
84000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the password, or NULL
84100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char **
84300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char **)response)[0] indicating PDP CID, which is generated by RIL
84400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char **)response)[1] indicating the network interface name
84500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char **)response)[2] indicating the IP address for this interface
84600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME may need way to configure QoS settings
84800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
84900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
85000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
85100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
85200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
85300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
85400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DEACTIVATE_DEFAULT_PDP
85500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
85600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
85700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SETUP_DEFAULT_PDP 27
85800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
85900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
86100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
86200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SIM_IO
86300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request SIM I/O operation.
86500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is similar to the TS 27.007 "restricted SIM" operation
86600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * where it assumes all of the EF selection will be done by the
86700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * callee.
86800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
86900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SIM_IO *
87000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please note that RIL_SIM_IO has a "PIN2" field which may be NULL,
87100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or may specify a PIN2 for operations that require a PIN2 (eg
87200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * updating FDN records)
87300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const RIL_SIM_IO_Response *
87500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Arguments and responses that are unused for certain
87700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * values of "command" should be ignored or set to NULL
87800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
87900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
88000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
88100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
88200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
88300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PIN2
88400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SIM_PUK2
88500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
88600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SIM_IO 28
88700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
88800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
88900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEND_USSD
89000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Send a USSD message
89200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a USSD session already exists, the message should be sent in the
89400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context of that session. Otherwise, a new session should be created.
89500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The network reply should be reported via RIL_UNSOL_ON_USSD
89700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
89800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Only one USSD session may exist at a time, and the session is assumed
89900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to exist until:
90000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   a) The android system invokes RIL_REQUEST_CANCEL_USSD
90100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   b) The implementation sends a RIL_UNSOL_ON_USSD with a type code
90200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      of "0" (USSD-Notify/no further action) or "2" (session terminated)
90300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing the USSD request in UTF-8 format
90500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
90600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
90700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
90800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
90900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
91000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
91100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
91200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_CANCEL_USSD, RIL_UNSOL_ON_USSD
91300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
91400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEND_USSD 29
91600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
91700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
91800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CANCEL_USSD
91900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Cancel the current USSD session if one exists
92100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
92300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
92400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
92500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
92600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
92700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
92800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
92900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
93000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
93100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CANCEL_USSD 30
93200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
93300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
93400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_CLIR
93500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
93600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Gets current CLIR status
93700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
93800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
93900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
94000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is "m" parameter from TS 27.007 7.7
94100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
94200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
94300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
94400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
94500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
94600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
94700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_CLIR 31
94800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
94900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
95000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CLIR
95100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
95300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "n" parameter from TS 27.007 7.7
95400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
95600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
95700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
95800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
95900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
96000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
96100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
96200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CLIR 32
96300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
96400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
96500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_FORWARD_STATUS
96600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
96800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
96900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const RIL_CallForwardInfo **
97000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of RIL_CallForwardInfo *'s, one for
97100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each distinct registered phone number.
97200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if data is forwarded to +18005551212 and voice is forwarded
97400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to +18005559999, then two separate RIL_CallForwardInfo's should be returned
97500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
97600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If, however, both data and voice are forwarded to +18005551212, then
97700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a single RIL_CallForwardInfo can be returned with the service class
97800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * set to "data + voice = 3")
97900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
98000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
98100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
98200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
98300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
98400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
98500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
98600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
98700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
98800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
98900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_FORWARD
99000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure call forward rule
99200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const RIL_CallForwardInfo *
99400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
99500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
99600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
99700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
99800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
99900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
100000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
100100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_FORWARD 34
100200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
100400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
100500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CALL_WAITING
100600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current call waiting state
100800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
100900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
101000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is the TS 27.007 service class to query.
101100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const int *
101200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is 0 for "disabled" and 1 for "enabled"
101300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If ((const int *)response)[0] is = 1, then ((const int *)response)[1]
101500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * must follow, with the TS 27.007 service class bit vector of services
101600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for which call waiting is enabled.
101700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
101800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For example, if ((const int *)response)[0]  is 1 and
101900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[1] is 3, then call waiting is enabled for data
102000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and voice and disabled for everything else
102100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
102200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
102300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
102400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
102500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
102600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
102700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CALL_WAITING 35
102800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
102900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
103000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
103100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_CALL_WAITING
103200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Configure current call waiting state
103400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
103500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
103600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] is 0 for "disabled" and 1 for "enabled"
103700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[1] is the TS 27.007 service class bit vector of
103800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to modify
103900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
104000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
104100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
104200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
104300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
104400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
104500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
104600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_CALL_WAITING 36
104700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
104800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
104900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
105000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Acknowledge successful or failed receipt of SMS previously indicated
105200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * via RIL_UNSOL_RESPONSE_NEW_SMS
105300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
105400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
105500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "1" on successful receipt
105600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=1 from TS 27.005
105700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is "0" on failed receipt
105800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                  (basically, AT+CNMA=2 from TS 27.005)
105900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
106100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
106200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME would like request that specified RP-ACK/RP-ERROR PDU
106300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
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_SMS_ACKNOWLEDGE  37
107000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
107100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
107200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMEI
107300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEI, including check digit
107500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
107700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
107800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
107900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEI
108000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
108100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
108200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
108300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
108400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
108500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
108600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEI 38
108800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
108900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
109000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_IMEISV
109100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Get the device IMEISV, which should be two decimal digits
109300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid when RadioState is not RADIO_STATE_UNAVAILABLE
109500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
109700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing the IMEISV
109800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
109900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
110000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
110100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
110200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
110300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
110400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_IMEISV 39
110600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
110800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
110900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_ANSWER
111000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Answer incoming call
111200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will not be called for WAITING calls.
111400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE will be used in this case
111500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * instead
111600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
111700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
111800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
111900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
112000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
112100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
112200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
112300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
112400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
112500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_ANSWER 40
112700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
112800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
112900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DEACTIVATE_DEFAULT_PDP
113000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deactivate PDP context created by RIL_REQUEST_SETUP_DEFAULT_PDP
113200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
113400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char**)data)[0] indicating PDP CID
113500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
113600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
113700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
113800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
113900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
114000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
114100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
114200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SETUP_DEFAULT_PDP
114300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
114400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DEACTIVATE_DEFAULT_PDP 41
114600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
114700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
114800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_FACILITY_LOCK
114900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the status of a facility lock state
115100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
115300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] is the facility string code from TS 27.007 7.4
115400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                      (eg "AO" for BAOC, "SC" for SIM lock)
115500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] is the password, or "" if not required
115600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] is the TS 27.007 service class bit vector of
115700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services to query
115800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
115900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
116000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response) 0 is the TS 27.007 service class bit vector of
116100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           services for which the specified barring facility
116200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           is active. "0" means "disabled for all"
116300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
116500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
116600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
116700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
116800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
116900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
117100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
117200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
117300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
117400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_FACILITY_LOCK
117500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enable/disable one facility lock
117700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
117800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
117900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
118100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
118200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = "0" for "unlock" and "1" for "lock"
118300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = password
118400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[3] = string representation of decimal TS 27.007
118500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            service class bit vector. Eg, the string
118600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                            "1" means "set this facility for voice services"
118700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
118800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
118900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
119100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
119200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
119300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
119400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
119500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
119600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_FACILITY_LOCK 43
119700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
119800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
119900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_CHANGE_BARRING_PASSWORD
120000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Change call barring facility password
120200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
120400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
120500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] = facility string code from TS 27.007 7.4
120600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (eg "AO" for BAOC)
120700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] = old password
120800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[2] = new password
120900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
121100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
121300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
121400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
121500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
121600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
121700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
121800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
121900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
122000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
122100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE
122200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query current network selectin mode
122400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
122600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
122700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
122800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is
122900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     0 for automatic selection
123000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     1 for manual selection
123100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
123300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
123400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
123500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
123600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
123700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
123800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
123900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
124000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
124100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC
124200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Specify that the network should be selected automatically
124400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
124600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
124700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
124800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request must not respond until the new operator is selected
124900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
125000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
125200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
125300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
125400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
125500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
125600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
125700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
125800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
125900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
126000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL
126100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Manually select a specified network.
126300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The radio baseband/RIL implementation is expected to fall back to
126500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * automatic selection mode if the manually selected network should go
126600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * out of range in the future.
126700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
126800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * specifying MCCMNC of network to select (eg "310170")
126900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
127000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request must not respond until the new operator is selected
127200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
127300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
127500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
127600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
127700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
127800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
127900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
128000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
128100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
128200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
128300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
128400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Scans for available networks
128600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
128700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
128800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char ** that should be an array of n*4 strings, where
128900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *    n is the number of available networks
129000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * For each available network:
129100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
129200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+0] is long alpha ONS or EONS
129300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+1] is short alpha ONS or EONS
129400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
129500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)response)[n+3] is a string value of the status:
129600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "unknown"
129700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "available"
129800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "current"
129900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *           "forbidden"
130000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request must not respond until the new operator is selected
130200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and registered
130300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
130500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
130600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
130700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
130800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
130900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
131000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
131100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
131200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
131300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_START
131400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Start playing a DTMF tone. Continue playing DTMF tone until
131600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP is received
131700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
131800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If a RIL_REQUEST_DTMF_START is received while a tone is currently playing,
131900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * it should cancel the previous tone and play the new one.
132000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char *
132200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((char *)data)[0] is a single character with one of 12 values: 0-9,*,#
132300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
132400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
132500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
132600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
132700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
132800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
132900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_STOP
133100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
133200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_START 49
133300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
133400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
133500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DTMF_STOP
133600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stop playing a currently playing DTMF tone.
133800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
133900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
134000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
134100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
134300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
134400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
134500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
134600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
134700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_DTMF, RIL_REQUEST_DTMF_START
134800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
134900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DTMF_STOP 50
135000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
135100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
135200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_BASEBAND_VERSION
135300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return string value indicating baseband version, eg
135500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * response from AT+CGMR
135600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
135700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
135800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is const char * containing version string for log reporting
135900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
136100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
136200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
136300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
136400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
136500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
136600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_BASEBAND_VERSION 51
136700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
136800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
136900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SEPARATE_CONNECTION
137000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Separate a party from a multiparty call placing the multiparty call
137200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (less the specified party) on hold and leaving the specified party
137300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as the only other member of the current (active) call
137400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Like AT+CHLD=2x
137600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
137700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See TS 22.084 1.3.8.2 (iii)
137800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 22.030 6.5.5 "Entering "2X followed by send"
137900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * TS 27.007 "AT+CHLD=2x"
138000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
138200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] contains GSM call index (value of 'x' in CHLD above)
138300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
138400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
138500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
138600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
138700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
138800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
138900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
139000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SEPARATE_CONNECTION 52
139100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
139200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
139300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
139400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_MUTE
139500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Turn on or off uplink (microphone) mute.
139700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
139800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will only be sent while voice call is active.
139900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Will always be reset to "disable mute" when a new voice call is initiated
140000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
140200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)data)[0] is 1 for "enable mute" and 0 for "disable mute"
140300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
140500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
140600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
140700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
140800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
140900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
141000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
141100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
141200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_MUTE 53
141300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
141400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
141500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_MUTE
141600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the current state of the uplink mute setting
141800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
141900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
142000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
142100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "mute enabled" and 0 for "mute disabled"
142200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
142300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
142400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
142500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
142600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
142700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
142800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
142900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_MUTE 54
143000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
143100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
143200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_CLIP
143300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of the CLIP supplementary service
143500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (for MMI code "*#30#")
143700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
143800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
143900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an int *
144000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (int *)response)[0] is 1 for "CLIP provisioned"
144100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 0 for "CLIP not provisioned"
144200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                           and 2 for "unknown, e.g. no network etc"
144300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
144400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
144500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
144600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
144700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
144800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
144900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
145000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_CLIP 55
145100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
145200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
145300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_LAST_PDP_FAIL_CAUSE
145400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the failure cause code for the most recently failed PDP
145600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * context activate
145700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
145800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
145900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a "int *"
146100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is an integer cause code defined in TS 24.008
146200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *   section 6.1.3.1.3 or close approximation
146300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
146400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * If the implementation does not have access to the exact cause codes,
146500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * then it should return one of the values listed in
146600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_LastPDPActivateFailCause, as the UI layer needs to distinguish these
146700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cases for error notification
146800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * and potential retries.
146900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
147100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
147200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
147300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
147400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_LAST_CALL_FAIL_CAUSE
147600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
147700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
147800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
147900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_LAST_PDP_FAIL_CAUSE 56
148000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
148100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
148200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_PDP_CONTEXT_LIST
148300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Queries the status of PDP contexts, returning for each
148500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * its CID, whether or not it is active, and its PDP type,
148600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * APN, and PDP adddress.
148700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
148800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
148900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is an array of RIL_PDP_Context_Response
149000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
149100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
149200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
149300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
149400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
149500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
149600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_PDP_CONTEXT_LIST 57
149800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
149900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
150000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_RESET_RADIO
150100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request a radio reset. The RIL implementation may postpone
150300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the reset until after this request is responded to if the baseband
150400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * is presently busy.
150500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
150700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
150800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
150900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The reset action could be delayed for a while
151000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in case baseband modem is just busy.
151100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
151200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
151300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
151400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
151500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
151600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
151700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
151800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_RESET_RADIO 58
151900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
152000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
152100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_RAW
152200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes raw byte arrays
152400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
152500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * It can be invoked on the Java side from
152700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestRaw()
152800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
152900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a char * of bytes copied from the byte[] data argument in java
153000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a char * of bytes that will returned via the
153100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * caller's "response" Message here:
153200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (byte[])(((AsyncResult)response.obj).result)
153300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * An error response here will result in
153500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).result) == null and
153600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
153700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
153800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
153900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
154000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
154100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
154200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
154300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_RAW 59
154400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
154500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
154600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OEM_HOOK_STRINGS
154700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
154800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This request reserved for OEM-specific uses. It passes strings
154900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * back and forth.
155000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * It can be invoked on the Java side from
155200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.Phone.invokeOemRilRequestStrings()
155300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char **, representing an array of null-terminated UTF-8
155500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * strings copied from the "String[] strings" argument to
155600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * invokeOemRilRequestStrings()
155700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
155800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char **, representing an array of null-terminated UTF-8
155900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * stings that will be returned via the caller's response message here:
156000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (String[])(((AsyncResult)response.obj).result)
156200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * An error response here will result in
156400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).result) == null and
156500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (((AsyncResult)response.obj).exception) being an instance of
156600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * com.android.internal.telephony.gsm.CommandException
156700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
156800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
156900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  All
157000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
157100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_OEM_HOOK_STRINGS 60
157300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
157400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
157500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SCREEN_STATE
157600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
157700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates the current state of the screen.  When the screen is off, the
157800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL should notify the baseband to suppress certain notifications (eg,
157900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * signal strength and changes in LAC or CID) in an effort to conserve power.
158000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * These notifications should resume when the screen is on.
158100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
158300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "Screen On"
158400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "Screen Off"
158500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
158700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
158800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
158900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
159000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
159100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
159200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SCREEN_STATE 61
159300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
159500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
159600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION
159700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
159800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables supplementary service related notifications
159900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * from the network.
160000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Notifications are reported via RIL_UNSOL_SUPP_SVC_NOTIFICATION.
160200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
160400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for notifications enabled
160500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for notifications disabled
160600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
160800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
160900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
161000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
161100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
161200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
161300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
161400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_UNSOL_SUPP_SVC_NOTIFICATION.
161500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
161600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
161700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
161800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
161900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_WRITE_SMS_TO_SIM
162000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Stores a SMS message to SIM memory.
162200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is RIL_SMS_WriteArgs *
162400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
162600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)response)[0] is the record index where the message is stored.
162700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
162800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
162900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
163000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
163100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
163300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
163400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
163500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
163600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_DELETE_SMS_ON_SIM
163700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
163800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Deletes a SMS message from SIM memory.
163900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int  *
164100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is the record index of the message to delete.
164200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
164400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
164600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
164700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
164800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
164900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
165000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
165100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
165200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
165300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_BAND_MODE
165400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Assign a specified band for RF configuration.
165600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
165700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
165800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "unspecified" (selected by baseband automatically)
165900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
166000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
166100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
166200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
166300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
166400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
166600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
166700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
166800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
166900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
167000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
167100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
167200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_BAND_MODE 65
167300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
167400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
167500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE
167600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the list of band mode supported by RF.
167800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
167900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
168000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
168200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" points to an array of int's, the int[0] is the size of array, reset is one for
168300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * each available band mode.
168400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
168500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  0 for "unspecified" (selected by baseband automatically)
168600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  1 for "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000)
168700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  2 for "US band" (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900)
168800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  3 for "JPN band" (WCDMA-800 / WCDMA-IMT-2000)
168900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  4 for "AUS band" (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000)
169000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  5 for "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850)
169100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
169300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
169400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
169500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
169600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
169700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_BAND_MODE
169800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
169900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
170000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
170100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
170200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_GET_PROFILE
170300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests the profile of SIM tool kit.
170500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The profile indicates the SAT/USAT features supported by ME.
170600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT features refer to 3GPP TS 11.14 and 3GPP TS 31.111
170700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
170800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
170900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT profile
171100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
171200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
171300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
171400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
171500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
171600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
171700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
171800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_GET_PROFILE 67
171900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
172000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
172100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SET_PROFILE
172200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Download the STK terminal profile as part of SIM initialization
172400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * procedure
172500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT profile
172700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of terminal profile
172800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
172900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
173000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
173100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
173200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
173300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
173400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
173500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
173600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SET_PROFILE 68
173700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
173800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
173900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND
174000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a SAT/USAT envelope command to SIM.
174200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
174300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT command
174500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
174600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
174700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is a const char * containing SAT/USAT response
174800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response
174900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (May be NULL)
175000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
175100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
175200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
175300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
175400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
175500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
175600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
175700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
175800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
175900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE
176000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to send a terminal response to SIM for a received
176200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * proactive command
176300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT response
176500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with first byte of response data
176600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
176800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
176900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
177000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
177100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
177200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
177300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
177400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
177500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
177600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
177700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM
177800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
177900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * When STK application gets RIL_UNSOL_STK_CALL_SETUP, the call actually has
178000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * been initialized by ME already. (We could see the call has been in the 'call
178100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * list') So, STK application needs to accept/reject the call according as user
178200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * operations.
178300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
178500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is > 0 for "accept" the call setup
178600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for "reject" the call setup
178700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
178800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
178900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
179000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
179100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
179200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
179300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
179400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
179500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
179600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
179700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
179800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_EXPLICIT_CALL_TRANSFER
179900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Connects the two calls and disconnects the subscriber from both calls.
180100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
180300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
180400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
180500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
180600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
180700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE (radio resetting)
180800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
180900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
181000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
181100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
181200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
181300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
181400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Requests to set the preferred network type for searching and registering
181600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * (CS/PS domain, RAT, and operation mode)
181700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
181800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
181900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for WCDMA preferred (auto mode)
182000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for GSM only
182100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 2 for WCDMA only
182200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
182400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
182500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
182600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_SUCCESS
182700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_RADIO_NOT_AVAILABLE (radio resetting)
182800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL_E_GENERIC_FAILURE
182900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
183000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
183100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
183200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
183300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE
183400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Query the preferred network type (CS/PS domain, RAT, and operation mode)
183600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * for searching and registering
183700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
183800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
183900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is int *
184100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 0 for WCDMA preferred (auto mode)
184200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 1 for GSM only
184300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is == 2 for WCDMA only
184400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
184500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
184600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
184700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
184800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
184900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE
185100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
185200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
185300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
185400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
185500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_NEIGHBORING_CELL_IDS
185600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Request neighboring cell id in GSM network
185800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
185900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
186000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" must be a " const RIL_NeighboringCell** "
186100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
186200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
186300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
186400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
186500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
186600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
186700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
186800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
186900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
187000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SET_LOCATION_UPDATES
187100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Enables/disables network state change notifications due to changes in
187300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * LAC and/or CID (basically, +CREG=2 vs. +CREG=1).
187400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note:  The RIL implementation should default to "updates enabled"
187600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * when the screen is on and "updates disabled" when the screen is off.
187700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
187800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is int *
187900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 1 for updates enabled (+CREG=2)
188000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is == 0 for updates disabled (+CREG=1)
188100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "response" is NULL
188300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Valid errors:
188500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  SUCCESS
188600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RADIO_NOT_AVAILABLE
188700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  GENERIC_FAILURE
188800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
188900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_SCREEN_STATE, RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
189000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
189100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_REQUEST_SET_LOCATION_UPDATES 76
189200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
189400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_BASE 1000
189600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
189700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
189800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
189900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when value of RIL_RadioState has changed.
190100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_RadioStateRequest method on main thread
190300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
190400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
190500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
190600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED 1000
190800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
190900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
191000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
191100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED
191200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when call state has changed
191400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke RIL_REQUEST_GET_CURRENT_CALLS on main thread
191600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
191800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
191900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Response should be invoked on, for example,
192000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "RING", "BUSY", "NO CARRIER", and also call state
192100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * transitions (DIALING->ALERTING ALERTING->ACTIVE)
192200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
192300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Redundent or extraneous invocations are tolerated
192400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
192500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED 1001
192600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
192800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
192900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED
193000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when network state, operator name, or GPRS state has changed
193200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Basically on, +CREG and +CGREG
193300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will invoke the following requests on main thread:
193500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
193600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_REGISTRATION_STATE
193700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_GPRS_REGISTRATION_STATE
193800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_OPERATOR
193900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
194100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
194200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * FIXME should this happen when SIM records are loaded? (eg, for
194300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * EONS)
194400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
194500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED 1002
194600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
194700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
194800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS
194900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS is received.
195100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
195300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-DELIVER
195400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
195500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CMT:)
195600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
195700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of thei SMS with a
195800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
195900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
196000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * No new RIL_UNSOL_RESPONSE_NEW_SMS
196100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
196200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
196300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
196400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS 1003
196600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
196700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
196800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT
196900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS Status Report is received.
197100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char *
197300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This is a pointer to a string containing the PDU of an SMS-STATUS-REPORT
197400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * as an ascii string of hex digits. The PDU starts with the SMSC address
197500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * per TS 27.005 (+CDS:).
197600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
197700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with a
197800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE
197900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
198000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * No new RIL_UNSOL_RESPONSE_NEW_SMS
198100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * or RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT messages should be sent until a
198200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_REQUEST_SMS_ACKNOWLEDGE has been received
198300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
198400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
198500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT 1004
198600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
198700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
198800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM
198900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when new SMS has been stored on SIM card
199100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
199200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
199300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains the slot index on the SIM that contains
199400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the new message
199500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
199600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM 1005
199800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
199900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
200000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD
200100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when a new USSD message is received.
200300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
200400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char **
200500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[0] points to a type code, which is
200600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  one of these string values:
200700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "0"   USSD-Notify -- text in ((const char **)data)[1]
200800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "1"   USSD-Request -- text in ((const char **)data)[1]
200900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "2"   Session terminated by network
201000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "3"   other local client (eg, SIM Toolkit) has responded
201100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "4"   Operation not supported
201200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *      "5"   Network timeout
201300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * The USSD session is assumed to persist if the type code is "1", otherwise
201500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * the current session (if any) is assumed to have terminated.
201600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
201700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const char **)data)[1] points to a message string if applicable, which
201800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should always be in UTF-8.
201900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
202000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD 1006
202100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/* Previously #define RIL_UNSOL_ON_USSD_NOTIFY 1006   */
202200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
202300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
202400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_ON_USSD_REQUEST
202500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
202600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Obsolete. Send via RIL_UNSOL_ON_USSD
202700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
202800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_ON_USSD_REQUEST 1007
202900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
203100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
203200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_NITZ_TIME_RECEIVED
203300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Called when radio has received a NITZ time message
203500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
203600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const char * pointing to NITZ time string
203700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
203800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
203900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_NITZ_TIME_RECEIVED  1008
204000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
204100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
204200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIGNAL_STRENGTH
204300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Radio may report signal strength rather han have it polled.
204500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
204600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an "int *"
204700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[0] is received signal strength (0-31, 99)
204800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)response)[1] is bit error rate (0-7, 99)
204900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  as defined in TS 27.007 8.5
205000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Other values (eg -1) are not legal
205100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
205200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIGNAL_STRENGTH  1009
205300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
205400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
205500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
205600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_PDP_CONTEXT_LIST_CHANGED
205700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
205800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate a PDP context state has changed, or a new context
205900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been activated or deactivated
206000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an array of RIL_PDP_Context_Response identical to that
206200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * returned by RIL_REQUEST_PDP_CONTEXT_LIST
206300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
206400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * See also: RIL_REQUEST_PDP_CONTEXT_LIST
206500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
206600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
206700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_PDP_CONTEXT_LIST_CHANGED 1010
206800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
206900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
207000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SUPP_SVC_NOTIFICATION
207100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Reports supplementary service related notification from the network.
207300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const RIL_SuppSvcNotification *
207500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
207600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
207700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
207800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SUPP_SVC_NOTIFICATION 1011
207900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
208000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
208100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_SESSION_END
208200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when STK session is terminated by SIM.
208400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
208500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is NULL
208600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
208700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_SESSION_END 1012
208800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
208900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
209000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_PROACTIVE_COMMAND
209100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM issue a STK proactive command to applications
209300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT proactive command
209500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * in hexadecimal format string starting with command tag
209600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
209700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
209800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_PROACTIVE_COMMAND 1013
209900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
210000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
210100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_EVENT_NOTIFY
210200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM notifies applcations some event happens.
210400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Generally, application does not need to have any feedback to
210500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM but shall be able to indicate appropriate messages to users.
210600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
210700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is a const char * containing SAT/USAT commands or responses
210800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * sent by ME to SIM or commands handled by ME, in hexadecimal format string
210900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * starting with first byte of response data or command tag
211000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
211200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_EVENT_NOTIFY 1014
211300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
211400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
211500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_STK_CALL_SETUP
211600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicate when SIM wants application to setup a voice call.
211800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
211900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is const int *
212000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((const int *)data)[0] contains timeout value (in milliseconds)
212100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
212200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_STK_CALL_SETUP 1015
212300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
212400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
212500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_SMS_STORAGE_FULL
212600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
212700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that SMS storage on the SIM is full.  Sent when the network
212800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * attempts to deliver a new SMS message.  Messages cannot be saved on the
212900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM until space is freed.  In particular, incoming Class 2 messages
213000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * cannot be stored.
213100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
213300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
213400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
213500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_SMS_STORAGE_FULL 1016
213600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
213700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
213800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_SIM_REFRESH
213900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Indicates that file(s) on the SIM have been updated, or the SIM
214100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * has been reinitialized.
214200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is an int *
214400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[0] is a RIL_SimRefreshResult.
214500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * ((int *)data)[1] is the EFID of the updated file if the result is
214600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_FILE_UPDATE or NULL for any other result.
214700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
214800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Note: If the radio state changes as a result of the SIM refresh (eg,
214900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * SIM_READY -> SIM_LOCKED_OR_ABSENT), RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED
215000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * should be sent.
215100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
215200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_SIM_REFRESH 1017
215300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
215400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
215500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_UNSOL_CALL_RING
215600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Ring indication for an incoming call (eg, RING or CRING event).
215800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
215900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * "data" is null
216000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
216100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#define RIL_UNSOL_CALL_RING 1018
216200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
216334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
216434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/*
216534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Import four CDMA notifications 1019 - 1022. Need fix when do real CDMA merge.
216634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
216734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
216834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
216934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED
217034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
217134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SIM state changes.
217234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
217334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will invoke RIL_REQUEST_GET_SIM_STATUS on main thread
217434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
217534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
217634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED 1019
217734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
217834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
217934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_CDMA_NEW_SMS
218034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
218134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new CDMA SMS is received
218234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
218334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const RIL_CDMA_SMS_Message *
218434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
218534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Callee will subsequently confirm the receipt of the SMS with
218634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * a RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE
218734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
218834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * No new RIL_UNSOL_RESPONSE_CDMA_NEW_SMS should be sent until
218934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE has been received
219034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
219134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_CDMA_NEW_SMS 1020
219234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
219334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
219434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS
219534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
219634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Called when new Broadcast SMS is received
219734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
219834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is const char * of 88 bytes which indicates each page
219934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * of a CBS Message sent to the MS by the BTS as coded in 3GPP
220034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * 23.041 Section 9.4.1.1
220134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
220234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS 1021
220334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
220434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
220534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL
220634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
220734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates that SMS storage on the RUIM is full.  Messages
220834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * cannot be saved on the RUIM until space is freed.
220934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
221034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is null
221134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
221234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL 1022
221334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
221434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project/**
221534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * RIL_UNSOL_RESTRICTED_STATE_CHANGED
221634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
221734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Indicates a restricted state change (eg, for Domain Specific Access Control).
221834a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
221934a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * Radio need send this msg after radio off/on cycle no matter it is changed or not.
222034a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project *
222134a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * "data" is an int *
222234a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project * ((int *)data)[0] contains a bitmask of RIL_RESTRICTED_STATE_* values.
222334a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project */
222434a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project#define RIL_UNSOL_RESTRICTED_STATE_CHANGED 1023
222534a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
222634a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
222734a5108969fbfc6cf8140513b7246da805902b7aThe Android Open Source Project
222800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/***********************************************************************/
222900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
223000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
223100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
223200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Request Function pointer
223300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
223400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param request is one of RIL_REQUEST_*
223500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_REQUEST_*
223600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *        data is owned by caller, and should not be modified or freed by callee
223700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t should be used in subsequent call to RIL_onResponse
223800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data
223900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
224000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
224100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_RequestFunc) (int request, void *data,
224200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen, RIL_Token t);
224300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
224500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function should return the current radio state synchronously
224600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
224700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef RIL_RadioState (*RIL_RadioStateRequest)();
224800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
224900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
225000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function returns "1" if the specified RIL_REQUEST code is
225100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * supported and 0 if it is not
225200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
225300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param requestCode is one of RIL_REQUEST codes
225400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
225500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
225600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef int (*RIL_Supports)(int requestCode);
225700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
225800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
225900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * This function is called from a separate thread--not the
226000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * thread that calls RIL_RequestFunc--and indicates that a pending
226100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * request should be cancelled.
226200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * On cancel, the callee should do its best to abandon the request and
226400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * call RIL_onRequestComplete with RIL_Errno CANCELLED at some later point.
226500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
226600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Subsequent calls to  RIL_onRequestComplete for this request with
226700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * other results will be tolerated but ignored. (That is, it is valid
226800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * to ignore the cancellation request)
226900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_Cancel calls should return immediately, and not wait for cancellation
227100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Please see ITU v.250 5.6.1 for how one might implement this on a TS 27.007
227300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * interface
227400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
227500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t token wants to be canceled
227600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
227700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
227800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_Cancel)(RIL_Token t);
227900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef void (*RIL_TimedCallback) (void *param);
228100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
228300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Return a version string for your RIL implementation
228400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
228500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef const char * (*RIL_GetVersion) (void);
228600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
228700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projecttypedef struct {
228800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    int version;        /* set to RIL_VERSION */
228900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RequestFunc onRequest;
229000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_RadioStateRequest onStateRequest;
229100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Supports supports;
229200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_Cancel onCancel;
229300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    RIL_GetVersion getVersion;
229400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project} RIL_RadioFunctions;
229500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
229600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef RIL_SHLIB
229700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectstruct RIL_Env {
229800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
229900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "t" is parameter passed in on previous call to RIL_Notification
230000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * routine.
230100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
230200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * If "e" != SUCCESS, then response can be null/is ignored
230300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
230400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "response" is owned by caller, and should not be modified or
230500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * freed by callee
230600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
230700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_onRequestComplete will return as soon as possible
230800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
230900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    void (*OnRequestComplete)(RIL_Token t, RIL_Errno e,
231000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
231100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
231200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
231300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "unsolResponse" is one of RIL_UNSOL_RESPONSE_*
231400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is pointer to data defined for that RIL_UNSOL_RESPONSE_*
231500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     *
231600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * "data" is owned by caller, and should not be modified or freed by callee
231700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
231800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
231900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    void (*OnUnsolicitedResponse)(int unsolResponse, const void *data,
232000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                    size_t datalen);
232100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
232200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    /**
232300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * Call user-specifed "callback" function on on the same thread that
232400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
232500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * a relative time value at which the callback is invoked. If relativeTime is
232600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * NULL or points to a 0-filled structure, the callback will be invoked as
232700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     * soon as possible
232800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project     */
232900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project    void (*RequestTimedCallback) (RIL_TimedCallback callback,
233100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                   void *param, const struct timeval *relativeTime);
233200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project};
233300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
233500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
233600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  RIL implementations must defined RIL_Init
233700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  argc and argv will be command line arguments intended for the RIL implementation
233800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *  Return NULL on error
233900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param env is environment point defined as RIL_Env
234100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argc number of arguments
234200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param argv list fo arguments
234300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
234400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
234500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectconst RIL_RadioFunctions *RIL_Init(const struct RIL_Env *env, int argc, char **argv);
234600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#else /* RIL_SHLIB */
234800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
234900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
235000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call this once at startup to register notification routine
235100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callbacks user-specifed callback function
235300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
235400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_register (const RIL_RadioFunctions *callbacks);
235500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
235700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
235800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
235900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_onRequestComplete will return as soon as possible
236000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
236100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param t is parameter passed in on previous call to RIL_Notification
236200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          routine.
236300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param e error code
236400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *          if "e" != SUCCESS, then response can be null/is ignored
236500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param response is owned by caller, and should not be modified or
236600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *                 freed by callee
236700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param responselen the length of response in byte
236800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
236900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
237000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                           void *response, size_t responselen);
237100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
237300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param unsolResponse is one of RIL_UNSOL_RESPONSE_*
237400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param data is pointer to data defined for that RIL_UNSOL_RESPONSE_*
237500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *     "data" is owned by caller, and should not be modified or freed by callee
237600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param datalen the length of data in byte
237700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
237800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
237900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
238000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                                size_t datalen);
238100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
238200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
238300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project/**
238400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * Call user-specifed "callback" function on on the same thread that
238500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * RIL_RequestFunc is called. If "relativeTime" is specified, then it specifies
238600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * a relative time value at which the callback is invoked. If relativeTime is
238700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * NULL or points to a 0-filled structure, the callback will be invoked as
238800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * soon as possible
238900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project *
239000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param callback user-specifed callback function
239100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param param parameter list
239200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project * @param relativeTime a relative time value at which the callback is invoked
239300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project */
239400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Projectvoid RIL_requestTimedCallback (RIL_TimedCallback callback,
239600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project                               void *param, const struct timeval *relativeTime);
239700f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239800f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
239900f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /* RIL_SHLIB */
240000f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
240100f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#ifdef __cplusplus
240200f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project}
240300f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif
240400f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
240500f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project#endif /*ANDROID_RIL_H*/
240600f06fc3fdb05d4276e76091cacb42b6f6862222The Android Open Source Project
2407