summaryrefslogtreecommitdiffstats
path: root/include/telephony/ril.h
diff options
context:
space:
mode:
authorWink Saville <wink@google.com>2009-12-22 15:35:41 -0800
committerWink Saville <wink@google.com>2009-12-22 15:35:41 -0800
commit74fa38884320698c1623764850e3131b9769dff0 (patch)
treed632c43fd96f9d022b15454f435e763c6aadd2f2 /include/telephony/ril.h
parent8ebaff8bec727eab4cdc2ae3090dde9465a16081 (diff)
downloadandroid_hardware_ril-74fa38884320698c1623764850e3131b9769dff0.tar.gz
android_hardware_ril-74fa38884320698c1623764850e3131b9769dff0.tar.bz2
android_hardware_ril-74fa38884320698c1623764850e3131b9769dff0.zip
ril interface: Add support for User-User Signaling Information during call setup
Define the UUS data structures and add a pointer to it in RIL_Call for MT Calls and RIL_Dial for MO calls. UUS information can be used to pass the skypeId on some networks. Make the corresponding changes to serialize and deserialize the data at the RIL interface. Change-Id: Ibbd471cd062910fd4c365f76e809cfb224bd34a2
Diffstat (limited to 'include/telephony/ril.h')
-rw-r--r--include/telephony/ril.h39
1 files changed, 37 insertions, 2 deletions
diff --git a/include/telephony/ril.h b/include/telephony/ril.h
index e921fa6..c988fe4 100644
--- a/include/telephony/ril.h
+++ b/include/telephony/ril.h
@@ -40,7 +40,7 @@
extern "C" {
#endif
-#define RIL_VERSION 2
+#define RIL_VERSION 3
#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
@@ -94,7 +94,40 @@ typedef enum {
RADIO_STATE_NV_READY = 9 /* Radio is on and the NV interface is available */
} RIL_RadioState;
- /* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
+/* User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 */
+typedef enum {
+ RIL_UUS_TYPE1_IMPLICIT = 0,
+ RIL_UUS_TYPE1_REQUIRED = 1,
+ RIL_UUS_TYPE1_NOT_REQUIRED = 2,
+ RIL_UUS_TYPE2_REQUIRED = 3,
+ RIL_UUS_TYPE2_NOT_REQUIRED = 4,
+ RIL_UUS_TYPE3_REQUIRED = 5,
+ RIL_UUS_TYPE3_NOT_REQUIRED = 6
+} RIL_UUS_Type;
+
+/* User-to-User Signaling Information data coding schemes. Possible values for
+ * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been
+ * specified in section 10.5.4.25 of 3GPP TS 24.008 */
+typedef enum {
+ RIL_UUS_DCS_USP = 0, /* User specified protocol */
+ RIL_UUS_DCS_OSIHLP = 1, /* OSI higher layer protocol */
+ RIL_UUS_DCS_X244 = 2, /* X.244 */
+ RIL_UUS_DCS_RMCF = 3, /* Reserved for system mangement
+ convergence function */
+ RIL_UUS_DCS_IA5c = 4 /* IA5 characters */
+} RIL_UUS_DCS;
+
+/* User-to-User Signaling Information defined in 3GPP 23.087 v8.0
+ * This data is passed in RIL_ExtensionRecord and rec contains this
+ * structure when type is RIL_UUS_INFO_EXT_REC */
+typedef struct {
+ RIL_UUS_Type uusType; /* UUS Type */
+ RIL_UUS_DCS uusDcs; /* UUS Data Coding Scheme */
+ int uusLength; /* Length of UUS Data */
+ char * uusData; /* UUS Data */
+} RIL_UUS_Info;
+
+/* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5 */
typedef struct {
char isPresent; /* non-zero if signal information record is present */
char signalType; /* as defined 3.7.5.5-1 */
@@ -116,6 +149,7 @@ typedef struct {
int numberPresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
char * name; /* Remote party name */
int namePresentation; /* 0=Allowed, 1=Restricted, 2=Not Specified/Unknown 3=Payphone */
+ RIL_UUS_Info * uusInfo; /* NULL or Pointer to User-User Signaling Information */
} RIL_Call;
typedef struct {
@@ -158,6 +192,7 @@ typedef struct {
* clir == 1 on "CLIR invocation" (restrict CLI presentation)
* clir == 2 on "CLIR suppression" (allow CLI presentation)
*/
+ RIL_UUS_Info * uusInfo; /* NULL or Pointer to User-User Signaling Information */
} RIL_Dial;
typedef struct {