Merge "[feature] key infomation output by AT" into SZZT
diff --git a/src/kernel/linux/v4.14/drivers/misc/mediatek/usb20/mt2731/usb20.c b/src/kernel/linux/v4.14/drivers/misc/mediatek/usb20/mt2731/usb20.c
index 6bcd1f1..4157777 100644
--- a/src/kernel/linux/v4.14/drivers/misc/mediatek/usb20/mt2731/usb20.c
+++ b/src/kernel/linux/v4.14/drivers/misc/mediatek/usb20/mt2731/usb20.c
@@ -1510,7 +1510,9 @@
if (!gpio_get_value(musb->wakeup_gpio)) {
DBG(0, "low, keep waklock\n");
- pm_stay_awake(musb->controller);
+ /*++++++modify by chencheng 2022/2/8+++++++*/
+ //pm_stay_awake(musb->controller);
+ /*------modify by chencheng 2022/2/8-------*/
irq_set_irq_type(irq, IRQF_TRIGGER_HIGH);
} else {
DBG(0, "high, free wakelock\n");
diff --git a/src/lynq/framework/lynq-atsvc/src/factory/lynq_factory.cpp b/src/lynq/framework/lynq-atsvc/src/factory/lynq_factory.cpp
index 6098f99..d30b6e0 100755
--- a/src/lynq/framework/lynq-atsvc/src/factory/lynq_factory.cpp
+++ b/src/lynq/framework/lynq-atsvc/src/factory/lynq_factory.cpp
@@ -377,28 +377,64 @@
int lynq_check_gpio()
{
FILE *fp;
- int lynq_gpio_arr[58] = {61,47,49,50,48,43,14,15,13,6,7,5,4,93,94,96,95,87,88,82,81,27,26,132,131,130,133,79,80,77,78,90,28,60,62,63,19,18,64,59,10,3,8,41,42,40,39,38,37,55,54,53,52,89,24,46,44,45};
+ int lynq_gpio_arr[57] = {47,49,50,48,43,14,15,13,6,7,5,4,93,94,96,95,87,88,82,81,27,26,132,131,130,133,79,80,77,78,90,28,60,62,63,19,18,64,59,10,3,8,41,42,40,39,38,37,55,54,53,52,89,24,46,44,45};
char lynq_set_gpio_arr[256] = {0};
char lynq_get_gpio_state[512] = {0};
char lynq_show_gpio_state[64] = {0};
int lynq_gpio_low = 0;
int lynq_gpio_hig = 0;
- int i = 0;
+ int i = 0,m = 0;
int lynq_gpio_beta_state = 1;
- for(i = 0; i < 58; i++)
+ for(m = 0; m < 57; m++)
+ {
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo mode %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[m]);
+ system(lynq_set_gpio_arr);
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo out %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[m]);
+ system(lynq_set_gpio_arr);
+ }
+
+ for(i = 0; i < 57; i++)
{
lynq_gpio_low = 0;
lynq_gpio_hig = 0;
+
bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo mode %d 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio & echo dir %d 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio & echo out %d 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i],(char*)lynq_gpio_arr[i],(char*)lynq_gpio_arr[i]);
+ sprintf(lynq_set_gpio_arr,"echo mode %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
system(lynq_set_gpio_arr);
+
bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio |grep %03d:",(char *)lynq_gpio_arr[i]);
+ sprintf(lynq_set_gpio_arr,"echo out %d 1 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
+ system(lynq_set_gpio_arr);
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 061");
fp=popen(lynq_set_gpio_arr, "r");
bzero(lynq_get_gpio_state, 512);
fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
-/* if(strlen(lynq_get_gpio_state) > 0)
+ /* if(strlen(lynq_get_gpio_state) > 0)
+ {
+ lynq_factory_response_ttyGS3(lynq_get_gpio_state);
+ lynq_factory_response_ttyGS3("\n");
+ }*/
+ pclose(fp);
+ if(lynq_get_gpio_state[8] == '1')
+ {
+ lynq_gpio_hig = 1;
+ }
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo out %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
+ system(lynq_set_gpio_arr);
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 061");
+ fp=popen(lynq_set_gpio_arr, "r");
+ bzero(lynq_get_gpio_state, 512);
+ fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
+ /* if(strlen(lynq_get_gpio_state) > 0)
{
lynq_factory_response_ttyGS3(lynq_get_gpio_state);
lynq_factory_response_ttyGS3("\n");
@@ -408,25 +444,6 @@
{
lynq_gpio_low = 1;
}
-
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo mode %d 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio & echo dir %d 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio & echo out %d 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i],(char*)lynq_gpio_arr[i],(char*)lynq_gpio_arr[i]);
- system(lynq_set_gpio_arr);
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio |grep %03d:",(char *)lynq_gpio_arr[i]);
- fp=popen(lynq_set_gpio_arr, "r");
- bzero(lynq_get_gpio_state, 512);
- fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
-/* if(strlen(lynq_get_gpio_state) > 0)
- {
- lynq_factory_response_ttyGS3(lynq_get_gpio_state);
- lynq_factory_response_ttyGS3("\n");
- }*/
- pclose(fp);
- if(lynq_get_gpio_state[8] == '1')
- {
- lynq_gpio_hig = 1;
- }
bzero(lynq_show_gpio_state, 64);
if((lynq_gpio_low != 1) || (lynq_gpio_hig != 1))
{