[WP77][R14.1][19.11.5] How to use UART1_DTR to wakeup from Sleep State and register interrupt on this gpio

I mean you set these first to see if DTR pin can wake up the wp77 module

At!mapuart=1,1
At+ksleep=0

BTW, here shows how to change DTR to GPIO in yocto source of WP76 in R13, you can see if you can do the same in WP77:

As the implementation of yocto linux gpio part in WP76 FW R16.0.1 and R13 is different, I have also tried the following in the yocto linux of WP76 R16.0.1, I can control the UART1 DTR pin as other gpio through sysfs. You might try the same in WP77 R14.1 yocto source:

  1. open yocto/kernel/arch/arm/boot/dts/qcom/mdm9607-wp76xx.dtsi
  2. around line 367, add the following line for UART1 DTR:


		alias-42 = <&tlmm_pinmux 79 0>;
		alias-RI = <&tlmm_pinmux 25 0>;
		/* WIFI aliases */
		alias-WLAN_EN = <&tlmm_pinmux 58 0>;
		alias-WIFI_IRQ = <&tlmm_pinmux 79 0>;
		alias-UART1_DTR = <&tlmm_pinmux 17 0>;
  1. type make to build the yocto.cwe
  2. download to the module with FW 16
  3. I can control the UART1 DTR pin by the following commands:

echo UART1_DTR > /sys/class/gpio/v2/alias_export
echo out > /sys/class/gpio/v2/aliases_exported/UART1_DTR/direction
echo 1 > /sys/class/gpio/v2/aliases_exported/UART1_DTR/value

echo 0 > /sys/class/gpio/v2/aliases_exported/UART1_DTR/value

If it works, then you can see here to make this DTR (GPIO pin 17) as wake up pin in kernel driver.