修复gpioinit失败
Change-Id: I18a3b9ff747b548492c23f3aa4794de3f6297796
diff --git a/mbtk/liblynq_lib/src/lynq_gpio.c b/mbtk/liblynq_lib/src/lynq_gpio.c
index 344c011..4dcd694 100755
--- a/mbtk/liblynq_lib/src/lynq_gpio.c
+++ b/mbtk/liblynq_lib/src/lynq_gpio.c
@@ -4,6 +4,7 @@
#include "fcntl.h"
#include "mbtk_log.h"
+#include <errno.h>
static int gpio_export(int gpio)
{
int index=0;
@@ -32,7 +33,7 @@
result = write(file,pin_index_buffer,strlen(pin_index_buffer));
if(result < 0)
{
- LOGE("Gpio[%d] export fail.", gpio);
+ LOGE("Gpio[%d] export fail. err = %d", gpio, errno);
close(file);
return -1;
}
@@ -183,7 +184,7 @@
}
if(result != 1)
{
- LOGE("Set gpio[%d] value fail.", gpio);
+ LOGE("Set gpio[%d] value fail err =%d.", gpio, errno);
close(file);
return -1;
}
@@ -200,13 +201,13 @@
//UNUSED(value);
UNUSED(pullsel);
- if (direction != 1 || direction != 0)
+ if (direction != 1 && direction != 0)
{
LOGE("[lynq_gpio_init] direction fail.");
return -1;
}
- if (value != 1 || value != 0)
+ if (value != 1 && value != 0)
{
LOGE("[lynq_gpio_init] value fail.");
return -1;
@@ -223,8 +224,8 @@
LOGE("[lynq_gpio_init]gpio_direct_set fail.");
return -1;
}
-
- if(gpio_value_set(gpio, value))
+
+ if(direction == 1 && (gpio_value_set(gpio, value) != 0))
{
LOGE("[lynq_gpio_init]gpio_value_set fail.");
return -1;