AnsweredAssumed Answered

i.MX6 wakeup difficulties

Question asked by sebastienraillet on Mar 31, 2016
Latest reply on Sep 8, 2016 by Carl Sherratt

Dear all,

 

I have a custom board based on a i.MX6Quad.

 

I'm able to put into suspend mode the processor and to wakeup it by sending a character on the serial connection.

 

Now, I want wake up the processor through a specific GPIO. For that, I added this code on my device tree (This code allows the GPIO1 21 to wake up the processor) :

/* Allows the gpio21 to wakeup
   * the system in suspend to RAM
   * mode
   */
  gpio-keys {
    compatible = "gpio-keys";
    wakeup {
      label = "wakeup gpio";
      gpios = <&gpio1 21 0>;
      linux,code = <29>;
      gpio-key,wakeup;
    };
  };

 

Now, the processor go correctly in suspend mode but immediatly after, the processor is wake up without a signal change on the gpio.

 

Questions :

1) How I can know the real reason of the wake up ?

2) I understand that the irq line is shared for the GPIO1 15 to 32. So, if a interrupt appears on the GPIO1 16 for example, my processor will be wake up ? If it's the case, what is the solution to permit only ONE GPIO to wake up the processor ?

 

Thanks.

 

Regards,

 

Sébastien

Outcomes