gpio: fix gpio factory test
Change-Id: I3299ee1511102a630d5b2f6d7b8ed54b516943a9
diff --git a/mbtk/mbtk_lib/src/mbtk_gpio.c b/mbtk/mbtk_lib/src/mbtk_gpio.c
index 65d6bb5..bd641e1 100755
--- a/mbtk/mbtk_lib/src/mbtk_gpio.c
+++ b/mbtk/mbtk_lib/src/mbtk_gpio.c
@@ -586,10 +586,11 @@
{
0,2,1,6,16,15,17,99,
34,36,35,33,14,49,50,12,118,120,
- 43,19,7,122,3,
+ 43,19,7,3,
20,59,126,117,125,18,56,55,58,48,57,5,4,21,
- 23,24,13,27,28,26,25,
- 54,53,123,32,31
+ 23,24,13,27,28,26,25
+ //32,31
+ //,54,53,123,122
};
int total;
total = (sizeof(test_gpio)/sizeof(int));
@@ -599,8 +600,8 @@
{
int i,j,ret;
//int *fail_io = (int *)arg;
-
- printf("[init] L508 GPIOTEST v1 \n");
+ printf("[init] L508 GPIOTEST v1.2 \n");
+ system("i2cset -y -f 2 0x31 0x12 0x46");
gpio_register_set_func_0(22);
gpio_register_set_direction(22, 0); //GPIO22 DTR做输入,检测电压
@@ -643,9 +644,10 @@
return 0;
}
-int gpio_test(void)
+int gpio_test(void* arg)
{
int ret,i,j;
+ int *fail_io = (int *)arg;
int n = 0;
for(i = 0; i < total; i++){
ret = gpio_register_get_value(test_gpio[i]);
@@ -658,7 +660,7 @@
ret = gpio_register_get_value(22);
if(1 != ret){
printf("gpio [%d] test high failed\n", test_gpio[i]);
- //fail_io[n] = test_gpio[i];
+ fail_io[n] = test_gpio[i];
n++;
}else{
printf("gpio[%d] test high success\n", test_gpio[i]);
@@ -672,7 +674,7 @@
ret = gpio_register_get_value(22);
if(0 != ret){
printf("gpio [%d] test low failed\n", test_gpio[i]);
- //fail_io[n] = test_gpio[i];
+ fail_io[n] = test_gpio[i];
n++;
}else{
printf("gpio [%d] test low success\n", test_gpio[i]);
@@ -687,10 +689,10 @@
int mbtk_at_gpio(void* arg)
{
int i, j, ret, total, n = 0;
- int *fail_io = (int *)arg;
+ //int *fail_io = (int *)arg;
gpio_test_init();
- n = gpio_test();
+ n = gpio_test(arg);
return n;
}