r1473 - in developers/sean_chiang/gsm: include/gsmd include/libgsmd src/gsmd src/libgsmd

sean_chiang at sita.openmoko.org sean_chiang at sita.openmoko.org
Thu Mar 22 02:13:40 CET 2007


Author: sean_chiang
Date: 2007-03-22 02:13:32 +0100 (Thu, 22 Mar 2007)
New Revision: 1473

Modified:
   developers/sean_chiang/gsm/include/gsmd/usock.h
   developers/sean_chiang/gsm/include/libgsmd/sms.h
   developers/sean_chiang/gsm/src/gsmd/gsmd.c
   developers/sean_chiang/gsm/src/libgsmd/libgsmd_sms.c
Log:


Modified: developers/sean_chiang/gsm/include/gsmd/usock.h
===================================================================
--- developers/sean_chiang/gsm/include/gsmd/usock.h	2007-03-22 01:05:35 UTC (rev 1472)
+++ developers/sean_chiang/gsm/include/gsmd/usock.h	2007-03-22 01:13:32 UTC (rev 1473)
@@ -87,6 +87,61 @@
 	GSMD_SMS_FMT_TEXT	= 1,
 };
 
+/* Refer to GSM 03.40 subclause 9.2.3.1 */
+enum gsmd_sms_tp_mti {
+	GSMD_SMS_TP_MTI_DELIVER		= 0,
+	GSMD_SMS_TP_MTI_DELIVER_REPORT	= 0,
+	GSMD_SMS_TP_MTI_STATUS_REPORT	= 2,
+	GSMD_SMS_TP_MTI_COMMAND		= 2,
+	GSMD_SMS_TP_MTI_SUBMIT		= 1,
+	GSMD_SMS_TP_MTI_SUBMIT_REPORT	= 1,
+	GSMD_SMS_TP_MTI_RESERVED	= 3,
+};
+
+/* Refer to GSM 03.40 subclause 9.2.3.2, */
+/* for SMS-DELIVER, SMS-STATUS-REPORT */
+enum gsmd_sms_tp_mms {
+	GSMD_SMS_TP_MMS_MORE		= (0<<2),
+	GSMD_SMS_TP_MMS_NO_MORE		= (1<<2),
+};
+
+/* Refer to GSM 03.40 subclause 9.2.3.3, */
+/* for SMS-SUBMIT */
+enum gsmd_sms_tp_vpf {
+	GSMD_SMS_TP_VPF_NOT_PRESENT	= (0<<3),
+	GSMD_SMS_TP_VPF_RESERVED	= (1<<3),
+	GSMD_SMS_TP_VPF_RELATIVE	= (2<<3),	
+	GSMD_SMS_TP_VPF_ABSOLUTE	= (3<<3),
+};
+
+/* Refer to GSM 03.40 subclause 9.2.3.4, */
+/* for SMS-DELIVER */
+enum gsmd_sms_tp_sri {
+	GSMD_SMS_TP_SRI_NOT_RETURN	= (0<<5),
+	GSMD_SMS_TP_SRI_STATUS_RETURN	= (1<<5),
+};
+
+/* Refer to GSM 03.40 subclause 9.2.3.5, */
+/* for SMS-SUBMIT, SMS-COMMAND */
+enum gsmd_sms_tp_srr {
+	GSMD_SMS_TP_SRR_NOT_REQUEST	= (0<<5),
+	GSMD_SMS_TP_SRR_STATUS_REQUEST	= (1<<5),
+};
+
+/* Refer to GSM 03.40 subclause 9.2.3.17, */
+/* for SMS-SUBMIT, SMS-DELIVER */
+enum gsmd_sms_tp_rp {
+	GSMD_SMS_TP_RP_NOT_SET		= (0<<7),
+	GSMD_SMS_TP_RP_SET		= (1<<7),
+};
+
+/* Refer to GSM 03.40 subclause 9.2.3.23 */
+/* for SMS-SUBMIT, SMS-DELIVER */
+enum gsmd_sms_tp_udhi {
+	GSMD_SMS_TP_UDHI_NO_HEADER	= (0<<6),
+	GSMD_SMS_TP_UDHI_WTIH_HEADER	= (1<<6),
+};
+
 /* SMS delflg from 3GPP TS 07.05, Clause 3.5.4 */
 enum gsmd_msg_sms_delflg {
 	GSMD_SMS_DELFLG_INDEX		= 0,
@@ -195,9 +250,25 @@
 /* Refer to GSM 07.05 subclause 4.4 */
 struct gsmd_sms_write {
 	u_int8_t stat;
-	struct gsmd_sms sms;	
+	struct gsmd_sms sms;
 } __attribute__ ((packed));
 
+/* Refer to GSM 03.40 subclause 9.2.2.2 */
+struct gsmd_sms_submit {
+	u_int8_t length;	
+	char data[GSMD_SMS_DATA_MAXLEN+1];	
+} __attribute__ ((packed));
+
+/* Refer to GSM 03.40 subclause 9.2.2.1 */
+struct gsmd_sms_deliver {
+	u_int8_t length;	
+	char origl_addr[12];
+	u_int8_t proto_ident;
+	u_int8_t coding_scheme;
+	char time_stamp[7];	
+	char user_data[140];
+} __attribute__ ((packed));
+
 /* Refer to GSM 07.07 subclause 8.12 */
 struct gsmd_phonebook_readrg {
 	u_int8_t index1;

Modified: developers/sean_chiang/gsm/include/libgsmd/sms.h
===================================================================
--- developers/sean_chiang/gsm/include/libgsmd/sms.h	2007-03-22 01:05:35 UTC (rev 1472)
+++ developers/sean_chiang/gsm/include/libgsmd/sms.h	2007-03-22 01:13:32 UTC (rev 1473)
@@ -8,7 +8,6 @@
 /* Data Coding Scheme, refer to GSM 03.38 Clause 4 */
 #define B5_COMPRESSED	(1<<5)
 #define B4_CLASSMEANING	(1<<4)
-
 enum {
 	MESSAGE_CLASS_CLASS0		= 0x00,
 	MESSAGE_CLASS_CLASS1		= 0x01,
@@ -24,11 +23,10 @@
 };
 
 /* Coding of Alpha fields in the SIM for UCS2, refer to 3GPP TS 11.11 Annex B */
-#if 0
-enum {	
+//enum {	
+		
+//};
 
-};
-#endif
 
 /* SMS delflg from 3GPP TS 07.05, Clause 3.5.4 */
 enum lgsm_msg_sms_delflg {
@@ -93,5 +91,23 @@
 /* Packing of 7-bit characters, refer to GSM 03.38 subclause 6.1.2.1.1 */
 extern int unpacking_7bit_character(char *src, char *dest);
 
+/* Refer to 3GPP TS 11.11 Annex B */
+extern int packing_UCS2_80(char *src, char *dest);
+
+/* Refer to 3GPP TS 11.11 Annex B */
+extern int unpacking_UCS2_80(char *src, char *dest);
+
+/* Refer to 3GPP TS 11.11 Annex B */
+extern int packing_UCS2_81(char *src, char *dest);
+
+/* Refer to 3GPP TS 11.11 Annex B */
+extern int unpacking_UCS2_81(char *src, char *dest);
+
+/* Refer to 3GPP TS 11.11 Annex B */
+extern int packing_UCS2_82(char *src, char *dest);
+
+/* Refer to 3GPP TS 11.11 Annex B */
+extern int unpacking_UCS2_82(char *src, char *dest);
+
 #endif
 

Modified: developers/sean_chiang/gsm/src/gsmd/gsmd.c
===================================================================
--- developers/sean_chiang/gsm/src/gsmd/gsmd.c	2007-03-22 01:05:35 UTC (rev 1472)
+++ developers/sean_chiang/gsm/src/gsmd/gsmd.c	2007-03-22 01:13:32 UTC (rev 1473)
@@ -81,6 +81,10 @@
 	/* configure message format as PDU mode*/
 	/* FIXME: TEXT mode support!! */
 	rc |= gsmd_simplecmd(gsmd, "AT+CMGF=0");
+#if 0
+	/* Select TE character set */		
+	rc |= gsmd_simplecmd(gsmd, "AT+CSCS=\"UCS2\"");
+#endif	
 
 	if (gsmd->vendorpl && gsmd->vendorpl->initsettings)
 		return gsmd->vendorpl->initsettings(gsmd);

Modified: developers/sean_chiang/gsm/src/libgsmd/libgsmd_sms.c
===================================================================
--- developers/sean_chiang/gsm/src/libgsmd/libgsmd_sms.c	2007-03-22 01:05:35 UTC (rev 1472)
+++ developers/sean_chiang/gsm/src/libgsmd/libgsmd_sms.c	2007-03-22 01:13:32 UTC (rev 1473)
@@ -192,3 +192,39 @@
 
         return 0;
 }
+
+/* Refer to 3GPP TS 11.11 Annex B */
+int packing_UCS2_80(char *src, char *dest)
+{
+	return 0;
+}
+
+/* Refer to 3GPP TS 11.11 Annex B */
+int unpacking_UCS2_80(char *src, char *dest)
+{
+	return 0;
+}
+
+/* Refer to 3GPP TS 11.11 Annex B */
+int packing_UCS2_81(char *src, char *dest)
+{
+	return 0;
+}
+
+/* Refer to 3GPP TS 11.11 Annex B */
+int unpacking_UCS2_81(char *src, char *dest)
+{
+	return 0;
+}
+
+/* Refer to 3GPP TS 11.11 Annex B */
+int packing_UCS2_82(char *src, char *dest)
+{
+	return 0;
+}
+
+/* Refer to 3GPP TS 11.11 Annex B */
+int unpacking_UCS2_82(char *src, char *dest)
+{
+	return 0;
+}
\ No newline at end of file





More information about the commitlog mailing list