Part Number: AM3357
Hi Ti,
We are running the latest kernel 5.10 from SDK am335x-evm-linux-sdk-src-08.02.00.24 from Ti on our custom board, we are running a deep sleep loop test, with rtc wake set to 30 secs, We are seeing a failure to enter deep sleep after couple of iterations, once we see this suspend failure error, the system is still responding and running but when we try to put it to sleep the next time system hangs, the only way to recover is to do a power reboot.
The command used to put to sleep is rtcwake
Processor Information:
```
processor : 0
model name : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 715.89
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc08
CPU revision : 2
```
When the system fails to enter deep sleep we are seeing the following failure in the log:
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: PM: suspend entry (deep)
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Filesystems sync: 0.001 seconds
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Freezing user space processes ... (elapsed 0.006 seconds) done.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: OOM killer disabled.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: pm33xx pm33xx: PM: Kernel suspend failure
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can0: c_can_hw_raminit_wait_syscon: time out
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481cc000.can can0: setting BTR=1c02 BRPE=0000
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can1: c_can_hw_raminit_wait_syscon: time out
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481d0000.can can1: setting BTR=1c02 BRPE=0000
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: OOM killer enabled.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Restarting tasks ... done.
Corresponding dmesg output is as follows:
vg3x-0-3-3-debug_mem_ftrace.txt
We even tried to capture the ftrace, dmesg logs which are attached to this thread, with init_call_debug passed to the kernel, we cannot find any issues with the drivers during pre, late suspend.
Any thoughts on how to further debug or collect more information to pinpoint the problem is much appreciated. I
My Observation:
It looks like from the dmesg output, the only error line we can observe is pm33xx pm33xx: PM: Kernel suspend failure, the failure seems to be coming from a very low level i.e the stage where the CM3 tries to take control. we would like to understand how we can further debug this to pinpoint the root cause they by arrive at a solution.
Also,
We have not tried this on a eval-kit, as the problem is when we are running only the latest kernel 5.10 fromTi sdk am335x-evm-linux-sdk-src-08.02.00.24, the previous kernel 4.19 from Ti we do not have this issue on our board.