07-30-2017 08:05 PM
When putting the processor into memory sleep mode as follows:
zynq> rtcwake -m mem -s 10 wakeup from "mem" at Sat Jul 29 13:25:03 2017 PM: Syncing filesystems ... done. Freezing user space processes ... (elapsed 0.012 seconds) done. Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done. sd 0:0:0:0: [sda] Synchronizing SCSI cache sd 0:0:0:0: [sda] Stopping disk PM: suspend of devices complete after 9.482 msecs PM: suspend devices took 0.010 seconds PM: late suspend of devices complete after 0.657 msecs PM: noirq suspend of devices complete after 0.731 msecs Dsabling non-boot CPUs ... CPU1: shutdown
The system never wakes back up. The RTC wake-up interrupt comes from the FPGA fabric, and is triggering correctly, the system recognizes it when it is running. I am using Petalinux 2015.4.
Here is my device tree entry:
rtc@6F { compatible = "microchip,mcp7940x"; reg = <0x6F>; interrupt-parent = <&intc>; interrupts = <0 30 4>; interrupt-names = "wakeup"; wakeup-source; };
Am I missing something?
08-03-2017 08:21 PM
A quick update, I am able to setup the board to be woken up using input from the UART, therefore I know that the sleep/wake is working. However, no matter what I do, I cannot get the board to wakeup on the RTC interrupt.
Could it have something to do with the interrupt coming from the FPGA fabric?