修复sleep模块demo错误,优化sleep模块符合T106的特性,优化SMS模块符合T106使用特性

Change-Id: I1395209baad0a8cc670f73f8fa550bc0986c32d1
diff --git a/mbtk/include/lynq/lynq_qser_network.h b/mbtk/include/lynq/lynq_qser_network.h
index fa0c5c5..35d4292 100755
--- a/mbtk/include/lynq/lynq_qser_network.h
+++ b/mbtk/include/lynq/lynq_qser_network.h
@@ -393,13 +393,13 @@
     nw_client_handle_type       h_nw,
     QSER_NW_OOS_CONFIG_INFO_T     *pt_info
 );
-
+/*
 int qser_nw_event_register
 (
     nw_client_handle_type       h_nw,
     uint32_t                    bitmask // bit OR of NW_IND_xxxx_EVENT_ON
 );
-
+*/
 int qser_nw_get_operator_name
 (
     nw_client_handle_type           h_nw,
diff --git a/mbtk/lynq_lib/src/lynq_sleep.c b/mbtk/lynq_lib/src/lynq_sleep.c
index fb7591f..78a7ec1 100755
--- a/mbtk/lynq_lib/src/lynq_sleep.c
+++ b/mbtk/lynq_lib/src/lynq_sleep.c
@@ -18,13 +18,16 @@
 #include "mbtk_info_api.h"
 
 /*
-该模块是系统睡眠,锁存在的时候系统无法休眠
-验证是否在睡眠状态,则需要测试功耗
-电源管理原则,只要有一个wakelock锁存在,系统就不会进入Suspend状态
-所以名字可以随便取,表示需要这样的一个锁,所以系统就不会进行睡眠
+This module is system sleep, the system cannot sleep when the lock exists
+To verify whether it is in sleep state, it is necessary to test the power consumption
+Power management principle, as long as a wakelock lock exists, the system will not enter the Suspend state
+So the name can be arbitrarily chosen to indicate that such a lock is needed so that the system does not sleep
 */
+#if defined(MBTK_PLATFORM_ASR1806)
 #define MTBK_POWERIND           "/system/etc/powerind"      //1806
-//#define MTBK_POWERIND           "/etc/powerind"             //1803
+#else if defined(MBTK_PLATFORM_ASR1803)
+#define MTBK_POWERIND           "/etc/powerind"             //1803
+#endif
 
 static bool call_Off  = FALSE;
 static bool nw_off = FALSE;
@@ -109,7 +112,7 @@
 {
     //UNUSED(enable);
 
-    if(enable == 1)
+    if((enable == 1) || enable == '1')
     {
         if(!access("/sys/power/autosleep", W_OK))
         {
@@ -123,7 +126,7 @@
             return -1;
         }
     }
-    else
+    else if((enable == 0) || enable == '0')
     {
         if(!access("/sys/power/autosleep", W_OK))
         {
@@ -137,6 +140,11 @@
             return -1;
         }
     }
+    else
+    {
+        LOGE("qser_autosuspend_enablecan enable err.");
+        return -1;
+    }
 
     return 0;
 }
@@ -145,15 +153,28 @@
 {
     //UNUSED(name);
     //UNUSED(len);
+    int len_t;
 
     if(!autosleep_enable) {
         LOGE("Autosleep not enable.");
         return -1;
     }
 
-    if((name != NULL) && (len < 33))
+    len_t = strlen(name);
+
+    if((name != NULL) && (len < 33) && (len_t < 33))
     {
         int i;
+        //name
+        for(i=1 ;i<LOCK_MAX_SIZE;i++)
+        {
+            if(strcmp(lynq_lock_name[i].name, name) == 0)
+            {
+                LOGE("Repeated names.");
+                return -1;
+            }
+        }
+
         for(i=1 ;i<LOCK_MAX_SIZE;i++)
         {
             if(lynq_lock_name[i].fd == 0)
@@ -168,12 +189,12 @@
 
         memcpy(lynq_lock_name[i].name, name, strlen(name)+1);
         lynq_lock_name[i].fd = i;
-        return lynq_lock_name[i].fd;
+        return lynq_lock_name[i].fd -1;//Starting from scratch
     }
     else
         return -1;
 
-    return 0;
+    return -1;
 }
 
 int qser_wakelock_lock(int fd)
@@ -185,15 +206,17 @@
         return -1;
     }
 
-    
     int i;
     for(i=1;i<LOCK_MAX_SIZE;i++)
     {
-        if(lynq_lock_name[i].fd == fd)
+        if(lynq_lock_name[i].fd -1 == fd)
             break;
     }
     if(i == LOCK_MAX_SIZE)
+    {
+        LOGE("LOCK_MAX_SIZE is full\n");
         return -1;
+    }
 
     if(!access("/sys/power/wake_lock", W_OK))
     {
@@ -223,11 +246,14 @@
     int i;
     for(i=1;i<LOCK_MAX_SIZE;i++)
     {
-        if(lynq_lock_name[i].fd == fd)
+        if(lynq_lock_name[i].fd -1 == fd)
             break;
     }
     if(i == LOCK_MAX_SIZE)
+    {
+        LOGE("LOCK_MAX_SIZE is full\n");
         return -1;
+    }
 
     if(!access("/sys/power/wake_unlock", W_OK))
     {
@@ -257,15 +283,19 @@
     int i;
     for(i=1;i<LOCK_MAX_SIZE;i++)
     {
-        if(lynq_lock_name[i].fd == fd)
+        if(lynq_lock_name[i].fd -1 == fd)
         break;
     }
+
     if(i == LOCK_MAX_SIZE)
+    {
+        LOGE("LOCK_MAX_SIZE is full\n");
         return -1;
+    }
     else
     {
         lynq_lock_name[i].fd = 0;
-        memset(lynq_lock_name[i].name, 0, 128);
+        memset(lynq_lock_name[i].name, 0, 64);
         return 0;
     }
 
diff --git a/mbtk/lynq_lib/src/lynq_sms.c b/mbtk/lynq_lib/src/lynq_sms.c
index 0fbed26..955e4d9 100755
--- a/mbtk/lynq_lib/src/lynq_sms.c
+++ b/mbtk/lynq_lib/src/lynq_sms.c
@@ -164,7 +164,7 @@
         return -1;
 
     //设置存储器
-
+/*
     if (pt_sms_info->storage == 0)
     {
         strcpy(mem, "SM");
@@ -186,7 +186,7 @@
     } else {
         LOGI("cpms set success. resp:%s", resp);
     }
-
+*/
     if(data == NULL)
     {
         LOGE("qser_sms_send_sms data NULL");
@@ -361,7 +361,7 @@
         LOGE("qser_sms_deletefromstorage sms_info_handle NULL");
         return -1;
     }
-
+/*
     t_storage = pt_sms_storage->storage; //设置存储器
 
     if (t_storage == 0)
@@ -385,6 +385,7 @@
     } else {
         LOGI("cpms set success. resp:%s", resp);
     }
+*/
 
     id_x = pt_sms_storage->storage_idx;//获取idx的值
 
diff --git a/mbtk/test/asr1806/lynq_qser_sms_test.c b/mbtk/test/asr1806/lynq_qser_sms_test.c
index e6f56a1..9128cf0 100755
--- a/mbtk/test/asr1806/lynq_qser_sms_test.c
+++ b/mbtk/test/asr1806/lynq_qser_sms_test.c
@@ -282,7 +282,7 @@
             "\t2 send text sms\n"

             "\t3 wait receive new sms\n"

             "\t4 send PDU sms\n"

-            "\t5 delete sms list\n"

+            "\t5 //delete sms list\n"

             "\t6 delete sms\n"

             "\t7 query service number\n"

             "\t8 set service number\n"

@@ -315,8 +315,6 @@
                 int len = strlen(tmp);

                 int num_len = strlen(num);

                 test_sms_info.format = 0;

-                test_sms_info.storage = 1; //默认 ME

-                //test_sms_info.sms_data_len = len;

                 memcpy(test_sms_info.sms_data, tmp, len);

                 memcpy(test_sms_info.src_addr, num, num_len);

                 qser_sms_send_sms(handle, &test_sms_info);

@@ -333,8 +331,6 @@
                 int len = strlen(tmp);

                 int num_len = strlen(num);

                 test_sms_info.format = 2;

-                test_sms_info.storage = 1; //默认 ME

-                //test_sms_info.sms_data_len = len;

                 memcpy(test_sms_info.sms_data, tmp, len);

                 memcpy(test_sms_info.src_addr, num, num_len);

 

@@ -344,13 +340,14 @@
             break;

         case 5:

             {

+                /*

                 char list_del[1024] = {0};

 

-                qser_sms_deletefromstoragelist(handle, list_del);

                 if (strcmp(list_del, "") == 0)

                     printf("list_del = NULL\n");

                 else

                     printf("list_del = [%s]\n",list_del);

+                 */

             }

             break;

         case 6:

@@ -358,27 +355,10 @@
                 memset(&test_sms_storage, 0x00, sizeof(QSER_sms_storage_info_t));

                 memset(operator,0x00, sizeof(operator));

                 printf("please input index \n");

-                fgets(operator, sizeof(operator), stdin);

+                fgets(operator, sizeof(operator)-1, stdin);

                 fflush(stdin);

                 opt = atoi(operator);

                 int t_index = opt;

-                memset(operator,0x00, sizeof(operator));

-                printf("please input Storage area\n"

-                        "\t 0 : Message store to UIM(SIM) \n"

-                        "\t 1 : Message store to NV(ME) \n"

-                        "\t default :   store to NV(ME) \n");

-                fgets(operator, sizeof(operator), stdin);

-                fflush(stdin);

-                opt = atoi(operator);

-

-                if (opt == 0 || opt == 1)

-                {

-                    test_sms_storage.storage = opt;

-                }

-                else

-                {

-                    test_sms_storage.storage = 1;

-                }

                 test_sms_storage.storage_idx = t_index;

                 qser_sms_deletefromstorage(handle, &test_sms_storage);

                 break;

@@ -394,7 +374,7 @@
         case 8:

             {

                 memset(&test_sca_cfg, 0x00, sizeof(QSER_sms_service_center_cfg_t));

-                char *num = "+8613800280500";//成都移动中心号码不用更改(根据情况可以写死值或者动态获取)

+                char *num = "+8613800280500";//成都移动中心号码(根据情况可以写死值或者动态获取)

                 int len = strlen(num);

                 memcpy(test_sca_cfg.service_center_addr, num, len);

 

diff --git a/mbtk/test/asr1806/lynq_sleep_test.c b/mbtk/test/asr1806/lynq_sleep_test.c
index cbb5844..34b7412 100755
--- a/mbtk/test/asr1806/lynq_sleep_test.c
+++ b/mbtk/test/asr1806/lynq_sleep_test.c
@@ -11,7 +11,7 @@
 其中PS DATA目前暂时不支持,只是保留了这个标志位(ARS人员回复当前平台结论)
 AP power state: 1~31 means suspend, bitmap: bit0 - NETWORK;bit1 - SIM;bit2 - SMS;bit3 - CS CALL;bit4 - PS DATA
 0 means resume all.
-目标文件"/system/etc/powerind"
+
 该值上电默认值是1,既平台默认是NW不主动上报
 
 白名单的状态由四位数字组成,从左往右判断
@@ -70,19 +70,16 @@
             return 0;
         case 1:
             {
-                int en;
                 printf(">>>>>Input 0 or 1<<<<<\n");
                 char tmp_en[4]={0};
                 memset(tmp_en, 0x00, sizeof(tmp_en));
                 fgets(tmp_en, sizeof(tmp_en)-1, stdin);
                 fflush(stdin);
-                en = atoi(tmp_en);
-            if (en == 0 || en == 1)
-            {
-                qser_autosuspend_enable(en);
-            }
-            else
-                printf(">>>>>re Input 0 or 1 error<<<<<\n");
+
+                if (tmp_en[0] == '0' || tmp_en[0] == '1')
+                    qser_autosuspend_enable(tmp_en[0]);
+                else
+                    printf(">>>>>re Input 0 or 1 error<<<<<\n");
             }
             break;
         case 2: