修复sleep模块demo错误,优化sleep模块符合T106的特性,优化SMS模块符合T106使用特性
Change-Id: I1395209baad0a8cc670f73f8fa550bc0986c32d1
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的值