OpenAMP_TTY_echo_wakeup example prevents A7 processor from going into low power mode.
I'm trying to develop an application that puts the A7 into a low power mode and only uses the M4 to do some basic processing. I'm starting with the OpenAMP_TTY_echo_wakeup example. In the example it says to issue the following commands:
echo "*delay" >/dev/ttyRPMSG0
echo mem > /sys/power/state
Then after 20 seconds, the M4 will wake-up the A7. But when I have ANY M4 program running and I issue a:
echo mem > /sys/power/state
I get the following error messages;
root@stm32mp1:~# [ 1008.496994] PM: suspend entry (s2idle)
[ 1008.499292] PM: Syncing filesystems ... done.
[ 1008.509780] Freezing user space processes ... (elapsed 0.045 seconds) done.
[ 1008.560707] OOM killer disabled.
[ 1008.563608] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
[ 1008.571108] Suspending console(s) (use no_console_suspend to debug)
[ 1008.633238] dwc2 49000000.usb-otg: suspending usb gadget configfs-gadget
[ 1008.633257] dwc2 49000000.usb-otg: dwc2_hsotg_ep_disable: called for ep0
[ 1008.633267] dwc2 49000000.usb-otg: dwc2_hsotg_ep_disable: called for ep0
[ 1008.698329] stm32-dma 48001000.dma: Suspend is prevented by Chan 1
[ 1008.698362] dpm_run_callback(): platform_pm_suspend+0x0/0x48 returns -16
[ 1008.698373] PM: Device 48001000.dma failed to suspend: error -16
[ 1008.698383] PM: Some devices failed to suspend, or early wake event detected
[ 1008.709397] dwmac4: Master AXI performs any burst length
[ 1008.709429] stm32-dwmac 5800a000.ethernet eth0: No Safety Features support found
[ 1008.751562] dwc2 49000000.usb-otg: resuming usb gadget configfs-gadget
[ 1009.294489] OOM killer enabled.
[ 1009.297551] Restarting tasks ... done.
[ 1009.316305] PM: suspend exit
[ 1012.901203] stm32-dwmac 5800a000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
If I reboot and attempt to enter low power mode, it succeds, but it will always fail after I start or start then stop an M4 program.
