[Bugfix][T108-GSW][bug-view-1717] gsw modem state monitor doesn't work
Only Configure: No
Affected branch: unknown
Affected module: network
Is it affected on both ZXIC and ASR: only ASR
Self-test: yes
Doc Update: no
Change-Id: I16471282a8ffd5a9a5c8a4b297d056146bc8312f
diff --git a/mbtk/include/mbtk/mbtk_info_api.h b/mbtk/include/mbtk/mbtk_info_api.h
index c2dfde5..583ddb0 100755
--- a/mbtk/include/mbtk/mbtk_info_api.h
+++ b/mbtk/include/mbtk/mbtk_info_api.h
@@ -39,8 +39,19 @@
#define MBTK_APN_PASSWORD_SIZE 127+1
#define MBTK_APN_TYPE_SIZE 127+1
+#define MBTK_READY_UCI "persist.mbtk.sdk.state"
+#define MBTK_READY_STRING_SIZE_MAX (3+1)
+typedef enum{
+ MBTK_READY_INIT = -1,
+ MBTK_READY_SUCCESS,
+ MBTK_READY_MODEM_FAIL,
+ MBTK_READY_RESPONSE_FAIL,
+ MBTK_READY_SOCKET_FAIL,
+ MBTK_READY_RIL_FAIL
+}mbtk_ready_status_type;
+
typedef void (*mbtk_info_callback_func)(const void* data, int data_len);
typedef enum {
diff --git a/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c b/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c
index 6082367..489e0ac 100644
--- a/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c
+++ b/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c
@@ -422,8 +422,16 @@
pthread_mutex_lock(&handle->mutex);
handle->is_waitting = true;
- mbtk_info_pack_send(handle->client_fd, pack);
+ int ret=mbtk_info_pack_send(handle->client_fd, pack);
mbtk_info_pack_free(&pack);
+ if(ret<0)
+ {
+ LOG("pack_send error, ret is %d",ret);
+ handle->info_err=MBTK_INFO_ERR_TIMEOUT;
+ handle->is_waitting = false;
+ pthread_mutex_unlock(&handle->mutex);
+ return -1;
+ }
if(recv_buff != NULL)
handle->data = recv_buff;
diff --git a/mbtk/mbtk_sdk_ready/src/main.c b/mbtk/mbtk_sdk_ready/src/main.c
index c1ab041..127684a 100755
--- a/mbtk/mbtk_sdk_ready/src/main.c
+++ b/mbtk/mbtk_sdk_ready/src/main.c
@@ -19,14 +19,6 @@
#define NORMAL_CHECK_TIME 30000 //30s
#define PERIOD_LEN 10
int in_period[PERIOD_LEN] = {100,100,200,200,500,500,500,500,2000,5000};//ms
-typedef enum{
- MBTK_READY_INIT = -1,
- MBTK_READY_SUCCESS,
- MBTK_READY_MODEM_FAIL,
- MBTK_READY_RESPONSE_FAIL,
- MBTK_READY_SOCKET_FAIL,
- MBTK_READY_RIL_FAIL
-}mbtk_ready_status_type;
static mbtk_ready_status_type mbtk_ready_status = MBTK_READY_INIT;
static mbtk_info_handle_t* mbtk_handle = NULL;
@@ -75,9 +67,9 @@
UNUSED(arg);
LOGE("[SDK_READY] sdk_ready_check_pthread entry.");
mbtk_ready_status_type now_ready_status = MBTK_READY_INIT;
- char buf[2] = {0};
+ char buf[MBTK_READY_STRING_SIZE_MAX] = {0};
buf[0] = '0' + now_ready_status;
- property_set("persist.mbtk.sdk.state", buf);// init state value
+ property_set(MBTK_READY_UCI, buf);// init state value
int sleep_time = 30;
long uptime = 0;
int count = 0;
@@ -87,7 +79,7 @@
if(now_ready_status != mbtk_ready_status)
{
buf[0] = '0' + now_ready_status;
- property_set("persist.mbtk.sdk.state", buf);
+ property_set(MBTK_READY_UCI, buf);
mbtk_ready_status = now_ready_status;
}
uptime = get_uptime();
@@ -172,4 +164,4 @@
LOGE("[SDK_READY]!!!mbtk_sdk_ready exit!!!");
return MBTK_RESULT_SUCCESS;
}
-#endif
+#endif
\ No newline at end of file