[Feature][T108][task-view-1499] change gsw .h file

Only Configure: No
Affected branch: GSW_V1453
Affected module: libgsw
Is it affected on IC: only ASR
Self-test: yes
Doc Update: no

Change-Id: I678871907e2be939e6673ee09bfed88992013348
diff --git a/mbtk/libgsw_lib/gsw_at.c b/mbtk/libgsw_lib/gsw_at_interface.c
similarity index 96%
rename from mbtk/libgsw_lib/gsw_at.c
rename to mbtk/libgsw_lib/gsw_at_interface.c
index 6fe12e9..2f48b47 100755
--- a/mbtk/libgsw_lib/gsw_at.c
+++ b/mbtk/libgsw_lib/gsw_at_interface.c
@@ -13,8 +13,7 @@
 #include <stdint.h>

 #include <dlfcn.h>

 #include <stdbool.h>

-#include "gsw_at.h"

-

+#include "gsw_at_interface.h"

 #ifndef LOG_ERR_LEVEL

 #define LOG_ERR_LEVEL  3      /* error conditions */

 #endif

@@ -104,8 +103,6 @@
     } while(0)

     

 

-#define GSW_HAL_SUCCESS 0

-#define GSW_HAL_FAIL -1	//表示失败(通用性)

 #define GSW_HAL_MEM_INVAILD -2 //表示入参地址为NULL

 

 #define OUT_MAX_SIZE 1024

@@ -132,7 +129,7 @@
 char buffer_at[OUT_MAX_SIZE] = {0};

 struct sockaddr_in addr_serv;

 struct sockaddr_un addr_server;

-AT_CALLBACK tmp = NULL;

+LYNQ_AT_CALLBACK tmp = NULL;

 static pthread_mutex_t s_startupMutex = PTHREAD_MUTEX_INITIALIZER;

 socklen_t len;

 bool connect_state = false;

@@ -312,17 +309,17 @@
  * @param callback Type:[IN]

  * @return int 

  */

-int32_t gsw_reg_atcmd(const char *atcmd,AT_CALLBACK func)

+int32_t gsw_reg_atcmd(const char *atcmd,LYNQ_AT_CALLBACK func)

 {

     if(NULL == atcmd || NULL == func)

     {

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     dlHandle_at = dlopen(lynqLib_at, RTLD_NOW);

     fun_ptr_log = (mbtk_log)dlsym(dlHandle_at, "mbtk_log");

     if(fun_ptr_log == NULL || dlHandle_at == NULL)

     {

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     memcpy(buffer_at, atcmd, strlen(atcmd));

     tmp = func;

@@ -332,7 +329,7 @@
     if(ret != 0)

     {

         LOGE("lynq_connect_service_start start failed\n");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     LOGD("lynq_connect_service_start success ret:%d\n",ret);

     return GSW_HAL_SUCCESS;

diff --git a/mbtk/libgsw_lib/gsw_gpio.c b/mbtk/libgsw_lib/gsw_hwpin_interface.c
similarity index 89%
rename from mbtk/libgsw_lib/gsw_gpio.c
rename to mbtk/libgsw_lib/gsw_hwpin_interface.c
index 231ddd3..9837b97 100755
--- a/mbtk/libgsw_lib/gsw_gpio.c
+++ b/mbtk/libgsw_lib/gsw_hwpin_interface.c
@@ -7,7 +7,7 @@
 #include <string.h>

 #include <dlfcn.h>

 

-#include "gsw_gpio.h"

+#include "gsw_hwpin_interface.h"

 

 #ifndef LOG_ERR_LEVEL

 #define LOG_ERR_LEVEL  3      /* error conditions */

@@ -98,12 +98,29 @@
     } while(0)

     

 

-#define GSW_HAL_SUCCESS 0

-#define GSW_HAL_FAIL -1	//表示失败(通用性)

 #define GSW_HAL_MEM_INVAILD -2 //表示入参地址为NULL

-

 #define wakeout 117

 

+typedef enum{

+  GSW_HAL_PINDIR_IN,

+  GSW_HAL_PINDIR_OUT,

+}gsw_hal_pinDirection;

+

+typedef enum{

+  GSW_HAL_LEVEL_LOW,

+  GSW_HAL_LEVEL_HIGH,

+}gsw_hal_pinLevel;

+

+typedef enum{

+  GSW_HAL_PULL_NULL,

+  GSW_HAL_PULL_DOWN,

+  GSW_HAL_PULL_UP,

+}gsw_hal_pinPullSel;

+

+typedef enum{

+  GSW_HAL_USB_DISCONNECTED,

+  GSW_HAL_USB_CONNECTED,

+}gsw_hal_usbStatus;

 typedef void (*mbtk_log)(int level, const char *format,...);

 static mbtk_log fun_ptr_log = NULL;

 void *dlHandle_gpio = NULL;

@@ -125,7 +142,7 @@
         fun_ptr_log = (mbtk_log)dlsym(dlHandle_gpio, "mbtk_log");

         if(fun_ptr_log == NULL || dlHandle_gpio == NULL)

         {

-            return GSW_HAL_FAIL;

+            return GSW_HAL_NORMAL_FAIL;

         }

     }

     return GSW_HAL_SUCCESS;

@@ -204,7 +221,7 @@
     char direction[10] = {0};

     memset(buffer,0,128);

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     

     if (gpio_check(gpioNum) == -1)

     {

@@ -231,7 +248,7 @@
         LOGE("Set gpio[%d] direct fail.", gpioNum);

         close(file);

         gpio_unexport(gpioNum);

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     close(file);

     gpio_unexport(gpioNum);

@@ -247,7 +264,7 @@
     memset(path,0,128);

     memset(buffer,0,50);

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

 

     if (gpio_check(gpioNum) == -1)

     {

@@ -267,7 +284,7 @@
         LOGE("Get gpio[%d] value fail", gpioNum);

         close(file);

         gpio_unexport(gpioNum);

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     close(file);

     gpio_unexport(gpioNum);

@@ -281,7 +298,7 @@
     int result =-1;

     memset(buffer,0,50);

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

 

     if (gpio_check(gpioNum) == -1)

     {

@@ -306,7 +323,7 @@
         LOGE("Set gpio[%d] value fail err =%d.", gpioNum, errno);

         close(file);

         gpio_unexport(gpioNum);

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     close(file);

     gpio_unexport(gpioNum);

@@ -317,7 +334,7 @@
 int32_t gsw_gpio_Init(uint32_t gpioNum, gsw_hal_pinDirection dir, gsw_hal_pinLevel level, gsw_hal_pinPullSel pullsel)

 {

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

 

     if (dir != 1 && dir != 0)

     {

@@ -328,29 +345,29 @@
     if (level != 1 && level != 0)

     {

         LOGE("[lynq_gpio_init] value fail.");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

 

     if(gpio_export(gpioNum))

     {

         LOGE("[lynq_gpio_init]gpio_export fail.");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

 

     if(gsw_gpio_SetDirection(gpioNum, dir))

     {

         LOGE("[lynq_gpio_init]gpio_direct_set fail.");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

 

     if(dir == 1 && (gsw_gpio_SetLevel(gpioNum, level) != 0))

     {

         LOGE("[lynq_gpio_init]gpio_value_set fail.");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     return GSW_HAL_SUCCESS;

 }

-gsw_hal_usbStatus gsw_hwpin_is_usb_connected(void)

+int gsw_hwpin_is_usb_connected(void)

 {

     FILE *fp;

     char cmd[128] = {0};

@@ -358,7 +375,7 @@
     //char *CONNECTED = "configured";

     char *DISCONNECTED = "not attached";

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

 

     sprintf(cmd,"cat /sys/devices/platform/soc/d4200000.axi/c0000000.usb/udc/c0000000.usb/state");

     fp=popen(cmd, "r");

@@ -373,9 +390,9 @@
 

 int32_t gsw_setWakeupLevel(gsw_hal_pinLevel level)

 {

-    if (gsw_gpio_SetLevel(wakeout, level) == GSW_HAL_FAIL)

+    if (gsw_gpio_SetLevel(wakeout, level) == GSW_HAL_NORMAL_FAIL)

     {

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     return GSW_HAL_SUCCESS;

 }

diff --git a/mbtk/libgsw_lib/gsw_pm.c b/mbtk/libgsw_lib/gsw_pm_interface.c
similarity index 88%
rename from mbtk/libgsw_lib/gsw_pm.c
rename to mbtk/libgsw_lib/gsw_pm_interface.c
index 9a28e71..25acf7a 100755
--- a/mbtk/libgsw_lib/gsw_pm.c
+++ b/mbtk/libgsw_lib/gsw_pm_interface.c
@@ -13,7 +13,7 @@
 #include <sys/ioctl.h>

 #include <dlfcn.h>

 #include <stdint.h>

-#include "gsw_pm.h"

+#include "gsw_pm_interface.h"

 

 #ifndef LOG_ERR_LEVEL

 #define LOG_ERR_LEVEL  3      /* error conditions */

@@ -104,11 +104,10 @@
     } while(0)

     

 

-#define GSW_HAL_SUCCESS 0

-#define GSW_HAL_FAIL -1	//表示失败(通用性)

+

 #define GSW_HAL_MEM_INVAILD -2 //表示入参地址为NULL

 #define LOCK_MAX_SIZE 129

-

+typedef void (*GSW_PM_WAKEUPCALLBACK)(int32_t wakeup_in);

 typedef void (*mbtk_lpm_handler_t)(int32_t wakeup_in);

 typedef void (*mbtk_log)(int level, const char *format,...);

 

@@ -135,7 +134,7 @@
 /**

 * @brief Enable autosleep

 * @param void

-* @retval GSW_HAL_SUCCESS\GSW_HAL_FAIL

+* @retval GSW_HAL_SUCCESS\GSW_HAL_NORMAL_FAIL

 */

 

 static int handle()

@@ -146,7 +145,7 @@
         fun_ptr_log = (mbtk_log)dlsym(dlHandle_sleep, "mbtk_log");

         if(fun_ptr_log == NULL || dlHandle_sleep == NULL)

         {

-            return GSW_HAL_FAIL;

+            return GSW_HAL_NORMAL_FAIL;

         }

     }

     return GSW_HAL_SUCCESS;

@@ -156,7 +155,7 @@
 {

     int ret;

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     mbtk_autosuspend_enable=(int(*)(char))dlsym(dlHandle_sleep, "mbtk_autosuspend_enable");

     ret = mbtk_autosuspend_enable(1);

     if(ret < 0)

@@ -164,7 +163,7 @@
         LOGE("mbtk_autosuspend_enable FAIL.\n");

         dlclose(dlHandle_sleep);

         dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     dlclose(dlHandle_sleep);

     dlHandle_sleep = NULL;

@@ -174,13 +173,13 @@
 /**

 * @brief Disable autosleep

 * @param void

-* @retval GSW_HAL_SUCCESS\GSW_HAL_FAIL

+* @retval GSW_HAL_SUCCESS\GSW_HAL_NORMAL_FAIL

 */

 int32_t gsw_autosleep_disenable(void)

 {

     int ret;

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     mbtk_autosuspend_enable=(int(*)(char))dlsym(dlHandle_sleep, "mbtk_autosuspend_enable");

     ret = mbtk_autosuspend_enable(0);

     if(ret < 0)

@@ -188,7 +187,7 @@
         LOGE("mbtk_autosuspend_enable FAIL.\n");

         dlclose(dlHandle_sleep);

         dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     dlclose(dlHandle_sleep);

     dlHandle_sleep = NULL;

@@ -198,13 +197,13 @@
 /**

 * @brief Init power manager module

 * @param [in]GSW_PM_WAKEUPCALLBACKHandler wakeup_callback

-* @retval GSW_HAL_SUCCESS\GSW_HAL_FAIL

+* @retval GSW_HAL_SUCCESS\GSW_HAL_NORMAL_FAIL

 */

 int32_t gsw_pm_sdk_init(GSW_PM_WAKEUPCALLBACK wakeup_callback)

 {

     int ret;

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     mbtk_lpm_init=(int(*)(mbtk_lpm_handler_t))dlsym(dlHandle_sleep, "mbtk_lpm_init");

     ret = mbtk_lpm_init((mbtk_lpm_handler_t)wakeup_callback);

     if(ret < 0)

@@ -212,7 +211,7 @@
         LOGE("mbtk_lpm_init FAIL.\n");

         dlclose(dlHandle_sleep);

         dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     return GSW_HAL_SUCCESS;

 }

@@ -227,9 +226,9 @@
     int ret;

     int i;

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     if (gsw_wakelock_name == NULL)

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     for(i=0 ;i<LOCK_MAX_SIZE;i++)

     {

         if(lock_name[i].name != NULL && strcmp(lock_name[i].name, gsw_wakelock_name) == 0)

@@ -241,7 +240,7 @@
     if (i >= LOCK_MAX_SIZE)

     {

         LOGE("mbtk_wakelock_lock not create.\n");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

 

     mbtk_wakelock_unlock=(int(*)(int))dlsym(dlHandle_sleep, "mbtk_wakelock_unlock");

@@ -251,7 +250,7 @@
         LOGE("mbtk_wakelock_unlock FAIL.\n");

         dlclose(dlHandle_sleep);

         dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

 

     mbtk_wakelock_destroy=(int(*)(int))dlsym(dlHandle_sleep, "mbtk_wakelock_destroy");

@@ -261,7 +260,7 @@
         LOGE("mbtk_wakelock_destroy FAIL.\n");

         dlclose(dlHandle_sleep);

         dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     if (lock_name[i].name != NULL)

     {

@@ -285,17 +284,16 @@
     int ret;

     int i;

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     if (gsw_wakelock_name == NULL)

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     mbtk_wakelock_create=(int(*)(const char* name , size_t))dlsym(dlHandle_sleep, "mbtk_wakelock_create");

     lock_fd = mbtk_wakelock_create(gsw_wakelock_name, strlen(gsw_wakelock_name));

     if(lock_fd < 0)

     {

         LOGE("mbtk_wakelock_create FAIL.\n");

-        dlclose(dlHandle_sleep);

-        dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        ret = GSW_HAL_NORMAL_FAIL;

+        goto end;

     }

     mbtk_wakelock_lock=(int(*)(int))dlsym(dlHandle_sleep, "mbtk_wakelock_lock");

 

@@ -303,27 +301,34 @@
     if(ret < 0)

     {

         LOGE("mbtk_wakelock_lock FAIL.\n");

-        dlclose(dlHandle_sleep);

-        dlHandle_sleep = NULL;

-        return GSW_HAL_FAIL;

+        ret = GSW_HAL_NORMAL_FAIL;

+        goto end;

     }

     for(i=0 ;i<LOCK_MAX_SIZE;i++)

     {

         if(lock_name[i].name == NULL)

             break;

     }

+    if(i == LOCK_MAX_SIZE)

+    {

+        LOGE("mbtk_wakelock_lock not space FAIL.\n");

+        ret = GSW_HAL_NORMAL_FAIL;

+        goto end;

+    }

     lock_name[i].name = malloc(strlen(gsw_wakelock_name)+1);

     if (lock_name[i].name == NULL)

     {

         LOGE("mbtk_wakelock_lock remeber FAIL.\n");

-        return GSW_HAL_FAIL;

+        ret = GSW_HAL_NORMAL_FAIL;

+        goto end;

     }

     memcpy(lock_name[i].name, gsw_wakelock_name, strlen(gsw_wakelock_name)+1);

     lock_name[i].fd = lock_fd;

-

+    ret = GSW_HAL_SUCCESS;

+end:

     dlclose(dlHandle_sleep);

     dlHandle_sleep = NULL;

-    return GSW_HAL_SUCCESS;

+    return ret;

 }

 

 /**

diff --git a/mbtk/libgsw_lib/gsw_uart.c b/mbtk/libgsw_lib/gsw_uart_interface.c
similarity index 82%
rename from mbtk/libgsw_lib/gsw_uart.c
rename to mbtk/libgsw_lib/gsw_uart_interface.c
index 718ca47..0544d16 100755
--- a/mbtk/libgsw_lib/gsw_uart.c
+++ b/mbtk/libgsw_lib/gsw_uart_interface.c
@@ -11,7 +11,7 @@
 #include <sys/ioctl.h>

 #include <dlfcn.h>

 

-#include "gsw_uart.h"

+#include "gsw_uart_interface.h"

 

 #ifndef LOG_ERR_LEVEL

 #define LOG_ERR_LEVEL  3      /* error conditions */

@@ -107,6 +107,23 @@
 void *dlHandle_uart = NULL;

 char *lynqLib_uart = "/lib/libmbtk_lib.so";

 

+typedef enum

+{

+  GSW_HAL_BAUDRATE_1200=1200,

+  GSW_HAL_BAUDRATE_1800=1800,

+  GSW_HAL_BAUDRATE_4800=4800,

+  GSW_HAL_BAUDRATE_9600=9600,

+  GSW_HAL_BAUDRATE_19200=19200,

+  GSW_HAL_BAUDRATE_38400=38400,

+  GSW_HAL_BAUDRATE_57600=57600,

+  GSW_HAL_BAUDRATE_115200=115200,

+  GSW_HAL_BAUDRATE_230400=230400,

+  GSW_HAL_BAUDRATE_460800=460800,

+  GSW_HAL_BAUDRATE_500000=500000,

+  GSW_HAL_BAUDRATE_576000=576000,

+  GSW_HAL_BAUDRATE_921600=921600

+}gsw_hal_uart_baudrate;

+

 static int handle()

 {

     if(dlHandle_uart == NULL || fun_ptr_log == NULL)

@@ -115,7 +132,7 @@
         fun_ptr_log = (mbtk_log)dlsym(dlHandle_uart, "mbtk_log");

         if(fun_ptr_log == NULL || dlHandle_uart == NULL)

         {

-            return GSW_HAL_FAIL;

+            return GSW_HAL_NORMAL_FAIL;

         }

     }

     return GSW_HAL_SUCCESS;

@@ -127,7 +144,7 @@
 int32_t gsw_uart_open_ex(int8_t *port, gsw_hal_uart_baudrate baudrate, uint32_t bits, int8_t parity, uint32_t stop)

 {

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     int fd = -1;

     if((fd = open((const char *)port, O_RDWR | O_NOCTTY | O_NONBLOCK)) < 0)

     {

@@ -230,19 +247,19 @@
 

     switch(bits)

     {

-        case CS5:

+        case 5:

             newtio.c_cflag &= ~CSIZE;

             newtio.c_cflag |= CS5;

             break;

-        case CS6:

+        case 6:

             newtio.c_cflag &= ~CSIZE;

             newtio.c_cflag |= CS6;

             break;

-        case CS7:

+        case 7:

             newtio.c_cflag &= ~CSIZE;

             newtio.c_cflag |= CS7;

             break;

-        case CS8:

+        case 8:

             newtio.c_cflag &= ~CSIZE;

             newtio.c_cflag |= CS8;

             break;

@@ -259,15 +276,18 @@
 

     switch (parity)

     {

-        case '1':// 奇校验

+        case 'O':

+        case 'o':// 奇校验

             newtio.c_cflag |= PARENB;

             newtio.c_cflag |= PARODD;

             break;

-        case '2':// 偶校验

+        case 'E':

+        case 'e':// 偶校验

             newtio.c_cflag |= PARENB;

             newtio.c_cflag &= ~PARODD;

             break;

-        case '0':// 无奇偶校验

+        case 'N':

+        case 'n':// 无奇偶校验

             newtio.c_cflag &= ~PARENB;

             break;

         default:

@@ -283,25 +303,33 @@
     return fd;

 }

 

-int32_t gsw_uart_flush(int32_t fd)

+void gsw_uart_flush(int fd)

 {

     if (tcflush(fd, TCIOFLUSH) < 0)

     {

-        return GSW_HAL_FAIL;

+        LOGE("flush fail\n");

+        //return GSW_HAL_NORMAL_FAIL;

     }

-    return GSW_HAL_SUCCESS;

+    else

+        LOGD("flush success\n");

+    //return GSW_HAL_SUCCESS;

 }

 

 

-int32_t gsw_uart_read(int32_t fd, uint8_t *buffer, uint32_t len, int32_t timeout_ms)

+int gsw_uart_read(int fd, unsigned char *buffer, int len, int timeout_ms)

 {

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

+    if(len <= 0 || timeout_ms < -1)

+    {

+        LOGE("timeout_ms = %d, len = %d; timeout_ms needs to be greater than -1 and len needs to be greater than 0!\n",timeout_ms, len);

+        return GSW_HAL_NORMAL_FAIL;

+    }

     int flags = fcntl(fd, F_GETFL); // 获取当前状态标志  

     if (flags == -1)

     {

         perror("fcntl get");

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

 

     struct termios newtio;

@@ -316,12 +344,12 @@
         newtio.c_cc[VMIN] = 0;

         newtio.c_cc[VTIME] = 0;

     }

-    else if (timeout_ms == 1)

+    else if (timeout_ms == -1)

     {

         flags &= ~O_NONBLOCK; // 清除非阻塞标志

         fcntl(fd, F_SETFL, flags);

         newtio.c_cc[VMIN] = 1;

-        newtio.c_cc[VTIME] = timeout_ms/100;

+        newtio.c_cc[VTIME] = 0;

     }

     else

     {

@@ -344,18 +372,18 @@
         if(errno == EAGAIN || errno == EWOULDBLOCK)

             return 0;

         else

-            return GSW_HAL_FAIL;

+            return GSW_HAL_NORMAL_FAIL;

     }

     return data_len;

 }

 

 

-int32_t gsw_uart_write(int32_t fd, const uint8_t *buffer, uint32_t len)

+int gsw_uart_write(int fd, const unsigned char *buffer, int len)

 {

     //gsw_uart_flush(fd);

     if (write(fd, buffer, len) < 0)

     {

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     }

     return GSW_HAL_SUCCESS;

 }

@@ -363,16 +391,16 @@
 int32_t gsw_uart_ioctl(int32_t fd, uint32_t cmd, void *pvalue)

 {

     if (handle())

-        return GSW_HAL_FAIL;

+        return GSW_HAL_NORMAL_FAIL;

     if (fd < 0 || pvalue == NULL)

     {  

         LOGE("Invalid file descriptor");  

-        return GSW_HAL_FAIL;  

+        return GSW_HAL_NORMAL_FAIL;  

     }  

     if (ioctl(fd, cmd, pvalue) < 0)

     {  

         LOGE("Could not set DCB,error:%d, %s\n",errno, strerror(errno));  

-        return GSW_HAL_FAIL;  

+        return GSW_HAL_NORMAL_FAIL;  

     }

     return GSW_HAL_SUCCESS;

 }

@@ -380,12 +408,25 @@
 

 

 

-int32_t gsw_uart_close(int32_t fd)

+void gsw_uart_close(int fd)

 {

     if (fd <= 0)

-        return GSW_HAL_FAIL;

-    //gsw_uart_flush(fd);

-    close(fd);

-    return GSW_HAL_SUCCESS;

+        LOGE("fd = %d fail\n",fd);

+        //return GSW_HAL_NORMAL_FAIL;

+    else

+    {

+        //gsw_uart_flush(fd);

+        int ret = close(fd);

+        if(ret < 0)

+        {

+            LOGE("close fail ret = %d\n",ret);

+        }

+        else

+        {

+            LOGI("close success ret = %d\n",ret);

+        }

+    }

+    

+    //return GSW_HAL_SUCCESS;

 }

 

diff --git a/mbtk/libgsw_lib/gsw_voice.c b/mbtk/libgsw_lib/gsw_voice.c
index c6e5ac3..454c722 100755
--- a/mbtk/libgsw_lib/gsw_voice.c
+++ b/mbtk/libgsw_lib/gsw_voice.c
@@ -1,4 +1,4 @@
-#include "gsw/gsw_voice.h"

+#include "gsw_voice_interface.h"

 #include <dlfcn.h>

 #include <pthread.h>

 

diff --git a/mbtk/libgsw_lib/libgsw_passwd.c b/mbtk/libgsw_lib/libgsw_passwd.c
index ef3fdda..90c95d9 100755
--- a/mbtk/libgsw_lib/libgsw_passwd.c
+++ b/mbtk/libgsw_lib/libgsw_passwd.c
@@ -11,10 +11,6 @@
 #include <sys/ioctl.h>
 #include <dlfcn.h>
 
-
-#include "gsw_passwd.h"
-
-
 int gsw_set_passwd(char *username, char *passwd)
 {
     int ret;
diff --git a/mbtk/libgsw_lib/libgsw_usb.c b/mbtk/libgsw_lib/libgsw_usb_interface.c
similarity index 78%
rename from mbtk/libgsw_lib/libgsw_usb.c
rename to mbtk/libgsw_lib/libgsw_usb_interface.c
index 400fcb2..1b912bd 100755
--- a/mbtk/libgsw_lib/libgsw_usb.c
+++ b/mbtk/libgsw_lib/libgsw_usb_interface.c
@@ -12,29 +12,29 @@
 #include <dlfcn.h>
 
 
-#include "gsw_usb.h"
+#include "gsw_usb_interface.h"
 
 #define TMP_USB_RESTART "/sbin/tmp_usb_init"
 #define USB_OPEN 3300
 #define USB_CLOSE 3329
 
-int32_t gsw_usb_permanent_switch(EN_GSW_USB_SWITCH_TYPE type)
+int gsw_usb_permanent_switch(EN_GSW_USB_SWITCH_TYPE type)
 {
     int ret;
     char cmd[256];
     if(type != EN_GSW_USB_SWITCH_OPEN && type != EN_GSW_USB_SWITCH_CLOSE)
-        return GSW_HAL_FAIL;
+        return GSW_HAL_NORMAL_FAIL;
     sprintf(cmd, "setprop persist.mbtk.usb_pid %d && %s %d &", type?USB_OPEN:USB_CLOSE, TMP_USB_RESTART, type?USB_OPEN:USB_CLOSE);
     ret = system(cmd);
     return ret;
 }
 
-int32_t gsw_usb_tempporary_switch(EN_GSW_USB_SWITCH_TYPE type)
+int gsw_usb_tempporary_switch(EN_GSW_USB_SWITCH_TYPE type)
 {
     int ret;
     char cmd[256];
     if(type != EN_GSW_USB_SWITCH_OPEN && type != EN_GSW_USB_SWITCH_CLOSE)
-        return GSW_HAL_FAIL;
+        return GSW_HAL_NORMAL_FAIL;
     sprintf(cmd, "%s %d &", TMP_USB_RESTART, type?USB_OPEN:USB_CLOSE);
     ret = system(cmd);
     return ret;