[Feature][T106][task-view-517]Add AT+HALTENABLE for enables power supply to enable button shutdown function

Only Configure :No
Affected branch: master
Affected module: power
Is it affected on both ZXIC and MTK:only ZXIC
Self-test: Yes
Doc Update: No

Change-Id: Ia0a677d8676b44f7a6c6c0c39d5f06f8875f6653
diff --git a/cap/zx297520v3/src/lynq/framework/lynq-atcid/lynq_atsvc_plugin.xml b/cap/zx297520v3/src/lynq/framework/lynq-atcid/lynq_atsvc_plugin.xml
index ce7d965..5cc5f7f 100755
--- a/cap/zx297520v3/src/lynq/framework/lynq-atcid/lynq_atsvc_plugin.xml
+++ b/cap/zx297520v3/src/lynq/framework/lynq-atcid/lynq_atsvc_plugin.xml
@@ -10,7 +10,7 @@
   />
   <module name="/lib/liblynq-at-common.so"
                  register="lynq_register_at_common"
-                 cmd="AT+MNETCALL;AT+GTARNDIS;AT+CGIR;AT+LGMDS;AT+LRNDISHANDLE;AT+LEELSP;AT+NETLED;AT+STATUSLED;AT+DDRID"
+                 cmd="AT+MNETCALL;AT+GTARNDIS;AT+CGIR;AT+LGMDS;AT+LRNDISHANDLE;AT+LEELSP;AT+NETLED;AT+STATUSLED;AT+DDRID;AT+HALTENABLE"
   />
   <module name="/lib/liblynq-at-factory.so"
                  register="lynq_register_at_factory"
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-at-common/liblynq-at-common.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-at-common/liblynq-at-common.cpp
index 1ff7efa..110a97c 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-at-common/liblynq-at-common.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-at-common/liblynq-at-common.cpp
@@ -148,6 +148,19 @@
     return;
 }
 
+void lynq_handle_halt_enable()
+{
+    int ret;
+    ret = system("echo 0x7:0x0  >/sys/kernel/debug/pmu_zx29/regs");
+    if(ret != 0)
+    {
+        lynq_response_error(100);
+        return;
+    }
+    lynq_response_ok();
+    return;
+}
+
 static Command commands[] =
 {
     {"CGIR",lynq_handle_version},
@@ -155,6 +168,7 @@
     {"NETLED",lynq_handle_netled},
     {"STATUSLED",lynq_handle_statusled},
     {"DDRID",lynq_handle_ddr_identify},
+    {"HALTENABLE",lynq_handle_halt_enable},
     {NULL, NULL}
 };