Hello,
I have a Linux kernel with version 4.1.15-1.2.0 running on a custom board that is very similar to the iMX6DL Sabre.
I am trying to get the system to wake up from standby and suspend-to-ram mode using GPIOs.
This works for GPIO2 and GPIO9 (gpio1 IO2 and gpio1 IO9) but does *not* work for GPIO203 and GPIO204 (gpio7 IO11 and gpio7 IO12).
When I export the gpios under sysfs and activate the edge-triggered interrupts (echo falling > edge), I can see the value change when I examine the 'value' file and I can also see the interrupts getting triggered when I examine /proc/interrupts.
So,
a) the GPIO is seeing a change and is reflecting the changed value
b) is triggering an interrupt according to the change.
However, this does *not* wake the system up for GPIO203 and GPIO204.
This *does* work for GPIO2 and GPIO9.
It seems that some irq wakeup flag is set for GPIO2 and GPIO9 and is not set for GPIO203 and GPIO204.
Does anyone know what I'm doing wrong?
Hi Gerald
one can check if gpio7 IO11 and gpio7 IO12 are configured in uboot for other purposes
and try to debug it using jtag or printf gpio7 IO11 and gpio7 IO12
registers. Also may be useful to test with baremetal SDK:
Github SDK
https://github.com/backenklee/swp-report/tree/master/iMX6_Platform_SDK
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------