[Feature][R307L/MD310EDT][task-view-1041][AT] optimize AT+SLEEP_MODE and AT+LED

Change-Id: Ifdf2bd82dc2e964f28d5800cedc64aea9e270f36
diff --git a/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 45bb386..8682964 100755
--- a/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/CPE_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -229,6 +230,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 742d20d..1aac687 100755
--- a/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/CPE_TELKOMSEL/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -210,6 +211,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi.c
index a76bc7b..3b9f1ea 100755
--- a/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi.c
@@ -118,7 +118,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(1 == g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 12277ba..d7c7003 100755
--- a/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/MD310/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -23,6 +23,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -241,6 +242,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/MD310EU/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c b/lynq/MD310EU/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
index 034f270..1506891 100755
--- a/lynq/MD310EU/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
+++ b/lynq/MD310EU/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
@@ -14,6 +14,7 @@
 int g_at_d = 0;

 extern int g_mmi_at_led_flag;

 extern int g_mmi_at_lcd_flag;

+extern int g_mmi_at_sleep_flag;

 

 /* ½«À©Õ¹ATÃüÁî²ÎÊý½âÎö³Éreq_msg_id¶ÔÓ¦µÄÏûÏ¢½á¹¹Ì壬Èç¹ûÏûϢûÓÐÄÚÈÝ£¬res_msg=NULL£¬res_msglen=0

 ·µ»ØAT_END_AND_MSG£¬ÓÉ¿ò¼ÜÍùat_fdÖÐд\r\nOK\r\n£¬²¢½«req_msg_id·¢Ë͵½·þÎñ¶Ëapp*/

@@ -451,6 +452,7 @@
 

 int ext_at_sleep_mode_func(char *at_paras, void ** res_msg)

 {

+	g_mmi_at_sleep_flag = 1;

 	char *at_str = malloc(256);

 	char buf[32] = {0};

 	char sim_state[32] = {0};

@@ -465,6 +467,8 @@
 	{

 		printf("***send msg error\n");

 	}

+	sleep(1);

+	g_mmi_at_led_flag = 1;

 	cfg_get_item("modem_main_state", sim_state, sizeof(sim_state));

 	cfg_get_item("network_type", network_type, sizeof(network_type));

 	cfg_get_item("ppp_status", ppp_status, sizeof(ppp_status));

diff --git a/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi.c
index 51fd0f2..ad9e8c6 100755
--- a/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi.c
@@ -118,7 +118,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(1 == g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 8d2805e..184b0f9 100755
--- a/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -240,6 +241,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_led.c b/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_led.c
index bb526a4..bb38865 100755
--- a/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_led.c
+++ b/lynq/MD310EU/ap/app/zte_comm/zte_mmi/mmi_led.c
@@ -19,6 +19,7 @@
 extern UINT32 g_smstask_enable;
 extern UINT32 g_voicetask_enable;
 extern UINT32 g_led_sleep_mode;
+int g_mmi_at_sleep_flag = 0;
 
 /*****************************************************************************
  È«¾Ö±äÁ¿¶¨Òå
@@ -732,7 +733,13 @@
 
 		mmi_led_operate(&userInfo);
 	} else if (mode == MODE_CHARGING) {
-
+		if(g_mmi_at_sleep_flag == 1)
+		{
+			g_mmi_at_sleep_flag = 0;
+			userInfo.led_name = LED_BATTERY;
+			userInfo.led_state = LED_STATE_OFF;
+			mmi_led_operate(&userInfo);
+		}
 	} else if (mode == MODE_STANDBY) {
 		userInfo.led_name = LED_BATTERY;
 		userInfo.led_color = LED_COLOR_GREEN;
diff --git a/lynq/R305/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/R305/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100644
--- a/lynq/R305/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/R305/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/R305/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/R305/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 47db4dd..5d6ac8c 100644
--- a/lynq/R305/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/R305/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -240,6 +241,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/R306/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/R306/ap/app/zte_comm/zte_mmi/mmi.c
index 325a9ce..c711e69 100755
--- a/lynq/R306/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/R306/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/R306/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/R306/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 45bb386..8682964 100755
--- a/lynq/R306/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/R306/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -229,6 +230,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi.c
index 325a9ce..c711e69 100755
--- a/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 45bb386..8682964 100755
--- a/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/R306BR/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -229,6 +230,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi.c
index 325a9ce..c711e69 100755
--- a/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 45bb386..8682964 100755
--- a/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/R306_MTN/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -229,6 +230,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/R307/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c b/lynq/R307/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
index 7cad8b5..0c4a7e1 100755
--- a/lynq/R307/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
+++ b/lynq/R307/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
@@ -13,6 +13,7 @@
 int g_atq = 0;

 int g_at_d = 0;

 extern int g_mmi_at_led_flag;

+extern int g_mmi_at_sleep_flag;

 

 /* ½«À©Õ¹ATÃüÁî²ÎÊý½âÎö³Éreq_msg_id¶ÔÓ¦µÄÏûÏ¢½á¹¹Ì壬Èç¹ûÏûϢûÓÐÄÚÈÝ£¬res_msg=NULL£¬res_msglen=0

 ·µ»ØAT_END_AND_MSG£¬ÓÉ¿ò¼ÜÍùat_fdÖÐд\r\nOK\r\n£¬²¢½«req_msg_id·¢Ë͵½·þÎñ¶Ëapp*/

@@ -450,6 +451,7 @@
 

 int ext_at_sleep_mode_func(char *at_paras, void ** res_msg)

 {

+	g_mmi_at_sleep_flag = 1;

 	char *at_str = malloc(256);

 	char buf[32] = {0};

 	char sim_state[32] = {0};

@@ -464,6 +466,8 @@
 	{

 		printf("***send msg error\n");

 	}

+	sleep(1);

+	g_mmi_at_led_flag = 1;

 	cfg_get_item("modem_main_state", sim_state, sizeof(sim_state));

 	cfg_get_item("network_type", network_type, sizeof(network_type));

 	cfg_get_item("ppp_status", ppp_status, sizeof(ppp_status));

diff --git a/lynq/R307/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/R307/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/R307/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/R307/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index ab11484..5e84441 100755
--- a/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -240,6 +241,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_led.c b/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_led.c
index 7b0792d..fa52199 100755
--- a/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_led.c
+++ b/lynq/R307/ap/app/zte_comm/zte_mmi/mmi_led.c
@@ -19,6 +19,7 @@
 extern UINT32 g_smstask_enable;
 extern UINT32 g_voicetask_enable;
 extern UINT32 g_led_sleep_mode;
+int g_mmi_at_sleep_flag = 0;
 
 /*****************************************************************************
  È«¾Ö±äÁ¿¶¨Òå
@@ -668,7 +669,13 @@
 
 		mmi_led_operate(&userInfo);
 	} else if (mode == MODE_CHARGING) {
-
+		if(g_mmi_at_sleep_flag == 1)
+		{
+			g_mmi_at_sleep_flag = 0;
+			userInfo.led_name = LED_BATTERY;
+			userInfo.led_state = LED_STATE_OFF;
+			mmi_led_operate(&userInfo);
+		}
 	} else if (mode == MODE_STANDBY) {
 		userInfo.led_name = LED_BATTERY;
 		userInfo.led_color = LED_COLOR_GREEN;
diff --git a/lynq/R307L/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c b/lynq/R307L/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
index 7cad8b5..0c4a7e1 100755
--- a/lynq/R307L/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
+++ b/lynq/R307L/ap/app/zte_comm/at_ctl/src/atconfig/extat_softap_register.c
@@ -13,6 +13,7 @@
 int g_atq = 0;

 int g_at_d = 0;

 extern int g_mmi_at_led_flag;

+extern int g_mmi_at_sleep_flag;

 

 /* ½«À©Õ¹ATÃüÁî²ÎÊý½âÎö³Éreq_msg_id¶ÔÓ¦µÄÏûÏ¢½á¹¹Ì壬Èç¹ûÏûϢûÓÐÄÚÈÝ£¬res_msg=NULL£¬res_msglen=0

 ·µ»ØAT_END_AND_MSG£¬ÓÉ¿ò¼ÜÍùat_fdÖÐд\r\nOK\r\n£¬²¢½«req_msg_id·¢Ë͵½·þÎñ¶Ëapp*/

@@ -450,6 +451,7 @@
 

 int ext_at_sleep_mode_func(char *at_paras, void ** res_msg)

 {

+	g_mmi_at_sleep_flag = 1;

 	char *at_str = malloc(256);

 	char buf[32] = {0};

 	char sim_state[32] = {0};

@@ -464,6 +466,8 @@
 	{

 		printf("***send msg error\n");

 	}

+	sleep(1);

+	g_mmi_at_led_flag = 1;

 	cfg_get_item("modem_main_state", sim_state, sizeof(sim_state));

 	cfg_get_item("network_type", network_type, sizeof(network_type));

 	cfg_get_item("ppp_status", ppp_status, sizeof(ppp_status));

diff --git a/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index a616cd1..38d4444 100755
--- a/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -22,6 +22,7 @@
 #include "mmi_lcd.h"
 
 extern int g_customer_type;
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -240,6 +241,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_led.c b/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_led.c
index 7b0792d..fa52199 100755
--- a/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_led.c
+++ b/lynq/R307L/ap/app/zte_comm/zte_mmi/mmi_led.c
@@ -19,6 +19,7 @@
 extern UINT32 g_smstask_enable;
 extern UINT32 g_voicetask_enable;
 extern UINT32 g_led_sleep_mode;
+int g_mmi_at_sleep_flag = 0;
 
 /*****************************************************************************
  È«¾Ö±äÁ¿¶¨Òå
@@ -668,7 +669,13 @@
 
 		mmi_led_operate(&userInfo);
 	} else if (mode == MODE_CHARGING) {
-
+		if(g_mmi_at_sleep_flag == 1)
+		{
+			g_mmi_at_sleep_flag = 0;
+			userInfo.led_name = LED_BATTERY;
+			userInfo.led_state = LED_STATE_OFF;
+			mmi_led_operate(&userInfo);
+		}
 	} else if (mode == MODE_STANDBY) {
 		userInfo.led_name = LED_BATTERY;
 		userInfo.led_color = LED_COLOR_GREEN;
diff --git a/lynq/S300/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/S300/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/S300/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/S300/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/S300/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/S300/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 00af703..fd531ff 100755
--- a/lynq/S300/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/S300/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -24,6 +24,7 @@
 extern int g_customer_type;
 extern void send_button_inform_action(char* info);
 extern int get_production_tool_connection_status();
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -212,6 +213,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 00af703..fd531ff 100755
--- a/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/S300_AIC/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -24,6 +24,7 @@
 extern int g_customer_type;
 extern void send_button_inform_action(char* info);
 extern int get_production_tool_connection_status();
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -212,6 +213,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {
diff --git a/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi.c b/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi.c
index c0b3571..7ca91e8 100755
--- a/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi.c
+++ b/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi.c
@@ -117,7 +117,7 @@
 //ÏÔʾledµÆ
 static VOID mmi_show_led_item(T_zMMITaskInfoItem* taskInfoItem)
 {
-	if(g_mmi_at_led_flag)
+	if(g_mmi_at_led_flag == 1)
 	{
 		return;
 	}
diff --git a/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c b/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
index 00af703..fd531ff 100755
--- a/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
+++ b/lynq/S300_COMMON/ap/app/zte_comm/zte_mmi/mmi_keystrokes.c
@@ -24,6 +24,7 @@
 extern int g_customer_type;
 extern void send_button_inform_action(char* info);
 extern int get_production_tool_connection_status();
+extern int g_mmi_at_led_flag;
 
 /************************************************************************************
                             È«¾Ö±äÁ¿¶¨Òå
@@ -212,6 +213,7 @@
 ***********************************************************************************/
 static VOID mmi_handle_keystroke_down()
 {
+	g_mmi_at_led_flag = 0;
 	BOOL long_press = mmi_get_longpress_flag();
 	slog(MMI_PRINT, SLOG_DEBUG, "ZTE_MMI  KEYDOWN  long_press=%d!!!\n ", long_press);
 	if (FALSE == long_press) {