This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SK-AM62P-LP: Is Deep Sleep actually working?

Part Number: SK-AM62P-LP
Other Parts Discussed in Thread: AM62P, AM625

Hi!, 

I am working with the EVM board, and I'm trying to use the Deep Sleep mode. 

I've followed this step: https://software-dl.ti.com/processor-sdk-android/esd/AM62X/09_01_00/docs/devices/AM62X/android/Application_Notes_Android_Low_Power.html
I've followed these stepts: https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_01_00_08/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Power_Management/pm_low_power_modes.html
I've followed these stepts: https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_01_00_08/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Power_Management/pm_wakeup_sources.html

These are the logs I get:

console:/ # rtcwake -s 10 -m mem
wakeup using "mem" from /dev/rtc0 at Thu Feb  1 20:57:03 2024
[  121.525624][ T2623] PM: suspend entry (deep)
[  121.533531][ T2623] Filesystems sync: 0.003 seconds
[  121.556552][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_ctrl
[  121.560118][ T2623] remoteproc remoteproc0: stopped remote processor 79000000.r5f
[  121.564800][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_ns
[  121.572372][ T2623] Freezing user space processes
[  121.579586][  T125] ueventd: LoadWithAliases was unable to load rpmsg:ti.ipc4.ping-pong
[  121.594747][ T2623] Freezing user space processes completed (elapsed 0.011 seconds)
[  121.602453][ T2623] OOM killer disabled.
[  121.606377][ T2623] Freezing remaining freezable tasks
[  121.615203][ T2623] Freezing remaining freezable tasks completed (elapsed 0.003 seconds)
[  121.623333][ T2623] printk: Suspending console(s) (use no_console_suspend to debug)
[  121.650442][ T2623] omap8250 2800000.serial: PM domain pd:146 will not be powered off
[  121.661408][   T76] android_work: sent uevent USB_STATE=DISCONNECTED
[  121.663157][ T2623] PM: suspend devices took 0.036 seconds
[  121.668897][ T2623] Disabling non-boot CPUs ...
[  121.671297][ T2623] psci: CPU1 killed (polled 0 ms)
[  121.677286][ T2623] psci: CPU2 killed (polled 0 ms)
[  121.686031][ T2623] psci: CPU3 killed (polled 0 ms)
[  121.691297][    C0] PM: pm_system_irq_wakeup: 244 triggered 2b1f0000.rtc
[  121.691378][ T2623] Enabling non-boot CPUs ...
[  121.691792][    T0] Detected VIPT I-cache on CPU1
[  121.691862][    T0] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
[  121.691928][    T0] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[  121.693319][ T2623] CPU1 is up
[  121.693648][    T0] Detected VIPT I-cache on CPU2
[  121.693709][    T0] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
[  121.693774][    T0] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[  121.695465][ T2623] CPU2 is up
[  121.695824][    T0] Detected VIPT I-cache on CPU3
[  121.695890][    T0] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
[  121.695961][    T0] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[  121.698003][ T2623] CPU3 is up
[  121.698568][ T2623] ti-sci 44043000.system-controller: ti_sci_resume: wakeup source: 0x50
[  122.195324][ T2630] usb 1-1: reset low-speed USB device number 2 using xhci-hcd
[  122.229331][    T6] android_work: sent uevent USB_STATE=CONNECTED
[  122.335423][    T6] android_work: sent uevent USB_STATE=CONFIGURED
[  122.502231][ T2623] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
[  122.508045][ T2623] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [Generic PHY] (irq=POLL)
[  122.508073][ T2623] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
[  122.512436][ T2623] am65-cpsw-nuss 8000000.ethernet eth1: PHY [8000f00.mdio:01] driver [Generic PHY] (irq=POLL)
[  122.512451][ T2623] am65-cpsw-nuss 8000000.ethernet eth1: configuring for phy/rgmii-rxid link mode
[  122.514619][ T2623] PM: resume devices took 0.728 seconds
[  122.710407][ T2623] OOM killer enabled.
[  122.714243][ T2623] Restarting tasks ...
[  122.717442][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_chrdev
[  122.723363][ T2623] done.
[  122.731311][  T125] ueventd: LoadWithAliases was unable to load virtio:d00000007v00000000
[  122.732269][ T2623] random: crng reseeded on system resumption
[  122.745035][  T125] ueventd: LoadWithAliases was unable to load platform:rproc-virtio
[  122.763299][ T2623] Resume caused by IRQ 244, 2b1f0000.rtc
[  122.769088][ T2623] remoteproc remoteproc0: powering up 79000000.r5f
[  122.776370][ T2623] remoteproc remoteproc0: Booting fw image am62p-mcu-r5f0_0-fw, size 55272
[  122.780118][  T125] ueventd: LoadWithAliases was unable to load of:Nethernet-phyT(null)
[  122.786635][ T2623] rproc-virtio rproc-virtio.4.auto: assigned reserved memory node mcu-r5fss-dma-memory-region@9b800000
[  122.797169][  T125] ueventd: LoadWithAliases was unable to load of:Nethernet-phyT(null)
[  122.801584][  T592] dwc3 31000000.usb: request 0000000000000000 was not queued to ep0out
[  122.801818][   T50] android_work: sent uevent USB_STATE=DISCONNECTED
[  122.804668][ T2623] virtio_rpmsg_bus virtio1: rpmsg host is online
[  122.812155][ T2640] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
[  122.813285][  T607] read descriptors
[  122.813315][  T607] read strings
[  122.818606][  T125] ueventd: LoadWithAliases was unable to load platform:rproc-virtio
console:/ # [  122.820151][ T2623] rproc-virtio rproc-virtio.4.auto: registered virtio1 (type 7)
[  122.822082][  T125] ueventd: LoadWithAliases was unable to load platform:rproc-virtio
[  122.826960][ T2640] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
[  122.829855][  T125] ueventd: LoadWithAliases was unable to load virtio:d00000007v00000000
[  122.832682][ T2623] remoteproc remoteproc0: remote processor 79000000.r5f is now up
[  122.832746][ T2623] PM: suspend exit
[  122.833163][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_ctrl
[  122.836212][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_ns
[  122.839110][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_ns
[  122.842045][  T125] ueventd: LoadWithAliases was unable to load virtio:d00000007v00000000
[  122.932627][  T125] ueventd: LoadWithAliases was unable to load rpmsg:ti.ipc4.ping-pong
[  122.943994][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_chrdev
[  122.958146][  T125] ueventd: LoadWithAliases was unable to load rpmsg:rpmsg_chrdev
[  123.851375][  T607] read descriptors
[  123.855081][  T607] read strings
[  124.797708][ T2640] android_work: sent uevent USB_STATE=CONNECTED
[  124.904231][ T2640] android_work: sent uevent USB_STATE=CONFIGURED

I can see that the screen and the peripherals such as a mouse, are disabled. 

But, in: https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_01_00_08/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Power_Management/pm_low_power_modes.html says:

"This partially indicates that linux has finished it’s deep sleep sequence. For further confirmation, one can take a look at the TP25/PMIC_LPM_EN pin on the EVM (after programming the PMCTRL_SYS register (0x43018080) to 0x15). Here, if the pin is 3.3V when active and 0V when in deep sleep."

The test point according to the schematic is: TP46
The value es 3v3 and never changes.

Also, If I reed the register:

am62p:/ # devmem 0x43018080
0x00000010

In this question: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1310915/am625-device-not-able-to-wakeup-from-deep-sleep Anush says: "It should be done by default, but if not, a Linux Command you can run is "devmem2 0x43018080" which will read the register and "devmem2 0x43018080 w 0x15" to write to the register."

But if I write 0x15 to the register and send the device to DP, it reboots, so It does not work.

Q1: Is Deep Sleep actually working and turning things off? How could I know?

Q2: Where is set the 0x10 of the register? Should It be 0x10? (It in the Table 14-7826, page 7071 spruj83)

 Thank for your response.