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: wkup domain features low power consumption with mcu sleep

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

Tool/software:

Hello, ti engineers

I can't find a specific description of what the wkup domain does.

My current understanding is that the first stage boot will start the DM(Device Managemen) program, the DM program contains the second boot and wkup application, it will be divided into two threads, one is to execute the second boot, it will boot the mcu application, and the other thread executes the wkup application.

Our current project is to use mcu to receive can messages and use soc chips to develop linux applications.

 DM is not used now, DM only plays the role of boot loading.

The first question is that the DM in the current project is only the second boot, and no important application is executed on the DM. Does this go against your design vision? What is your purpose of designing wkup domain?

For mcu processing can messages and soc processing linux applications, wkup domain does not know how to develop now. For such project requirements, may I ask what your suggestions are?

The project will control mcu and soc sleep wake up according to the received can signal.I have seen the function of DM low power consumption. The second question is, is DM low power consumption the same function as mcu sleep.Is there a detailed introduction to the function of low power consumption of DM.
Another is to ask if it is the mcu that receives the can message that can control soc sleep

So the question to ask in summary is this
1, What is the function of wkup domain, is there a detailed introduction
2. According to my description, DM only plays a guiding role in the current project, and there are no important applications running on DM. Does this go against your design vision? What is your purpose of designing wkup domain?
3. For the mcu to process can messages, soc to process linux applications, mcu according to the received can messages to achieve such requirements as system sleep wake up, wkup domain does not know how to develop, for such project requirements, may I ask what your suggestions are, how to design the system?
4. Is the low-power function of wkup the same as the system sleep I said

  • Hi,the previous project used 1145 plus pmic to achieve sleep and Wake up.

    This is a similar schematic and does not represent the actual project

    The principle is that the INH pin of the 1145 chip is connected to the PMIC, and the PMIC controls the output high and low levels.
    After hibernation, the INH pin of 1145 is pulled down, PMIC outputs low level, MCU is powered off and sleeps, then 1145 will detect the message on the bus, if it conforms to a specific frame, 1145 will be awakened, INH is pulled up, PMIC outputs high level, and MCU is powered on. Round and round again.

    1.Where can I find the original explanation like my comment,describe function and explain principle

    The i2c for setting PMIC in demo uses wkup i2c0 and mcu i2c0. 2.How do I know how PMIC is connected to wkup and MCU? where can I see the schematic diagram of the PMIC, including its connection with other chip pins.Is there any reference document

    Therefore, I am not clear about the functions of the PMIC module of am62p. I have seen the demo of PMIC in the latest sdk, which implements functions similar to hardware watchdog. When the watchdog makes mistakes, it will reset.
    3.Then, can PMIC be set to sleep and wake up? Is there any relationship between PMIC and low power consumption mode of DM

    Thank you for your reply.

  • Hello,

    1, What is the function of wkup domain, is there a detailed introduction

    I recommended you review Section 7.3 in the AM62P TRM: https://www.ti.com/lit/pdf/spruj83

    As you've noted, the WKUP Domains primary function is to run the Device Manager (DM) Firmware which is required for low power modes. At the moment, there is no software support for running another application concurrently with the DM Firmware on the Wakeup Domain R5 Core. This means if you want to use a low power mode, then you cannot run another application on the core.

    2. According to my description, DM only plays a guiding role in the current project, and there are no important applications running on DM. Does this go against your design vision? What is your purpose of designing wkup domain?

    As mentioned above, there is no software support for running another application besides the DM. This is because the DM R5's peripherals context is not saved when entering a low power mode.

    See the Introduction portion of the MCU+ SDK documentation: https://software-dl.ti.com/mcu-plus-sdk/esd/AM62PX/10_00_00_14/exports/docs/api_guide_am62px/DEVELOP_AND_DEBUG_DMR5.html

    3. For the mcu to process can messages, soc to process linux applications, mcu according to the received can messages to achieve such requirements as system sleep wake up, wkup domain does not know how to develop, for such project requirements, may I ask what your suggestions are, how to design the system?

    I recommended you review the SW architecture for Low Power Modes: https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/10_00_07_04/exports/docs/linux/Foundational_Components/Power_Management/pm_sw_arch.html

    Can you please clarify what you mean?

    The Main and MCU CBASS remain on during low power modes so the wakeup source like Can are able to receive a message to wakeup.

    4. Is the low-power function of wkup the same as the system sleep I said

    One of the tasks of the DM Firmware is to put the A53 in Standby.

    The i2c for setting PMIC in demo uses wkup i2c0 and mcu i2c0. 2.How do I know how PMIC is connected to wkup and MCU? where can I see the schematic diagram of the PMIC, including its connection with other chip pins.Is there any reference document

    You can find the schematics for SK-AM62P-LP here under "Design Files Package": https://www.ti.com/tool/SK-AM62P-LP

    Is there any relationship between PMIC and low power consumption mode of DM

    PMICs are independent & not required of Low Power Modes expect for Partial I/O Mode. Partial I/O Mode requires a PMIC.

    PMICs don't have suspend/resume functionality, so they remain on during low power modes.

    Best Regards,

    Anshu

  • PMIC is a power control chip that supplies power to Linux and MCU, and the role of the DM firmware library running on the wkup domain is to provide a low-power interface for linux
    1. What effect does linux have on the mcu when it enters low-power mode

    2. when deep sleep, mcu will stop running, because I saw this explanation
    "MCU Only Similar to Deep Sleep, with the major distinction being that the MCU core is kept alive to run applications."

    Since the mcu program runs on sram, the ddr self-refresh will not affect the mcu after entering low power consumption, right

    Why is PMIC not associated with low power mode.Since linux is in low power mode.

    3.so what is the use of setting pmic in mcu, as a watchdog function?Is the function of the pmic just a hardware watchdog, which can be activated through a register.

    4. Can the MCU power down by setting PMIC?

    5.When linux enters low power means that linux is shut down, exit low power is to restart, or will save the data, when wake up will be recovered from the hibernation state.

    Which of these two understandings is correct?

    I understand the low power entry and exit process
    After entering the low-power mode, the SOC saves the ram data, sends the Settings to the DM to obtain pause and enter WFI, and the DM enters WFI to wait for the wake up signal
    When the wake source wakes the DM up to resume, and then the DM recovers the main field program, the process is roughly like this.

    If the mcu wants to control soc sleep, if the architecture is designed with low power consumption, does the mcu need to use rpmsg to send a message to linux, and then linux executes a command to enter the low power mode?
    However, at this time, the mcu is still running programs, and the low-power function of the mcu is not realized.

    6.AM62P itself has MCU and CAN. The power supply uses PMIC, is it possible to do low power design, I hope mcu also enters a low power state or power down state, only can message to wake up mcu, and then wake up linux, how should it be designed?

    I think linux can enter the MCU-only mode and use the CAN signal of MCU as the wake-up source. Is this OK? But I don't know how to control the MCU to enter the low-power mode, and how should I wake up the MCU? Is it through PMIC setting?

    7.About linux into low power, mcu set the wake source. Is there sample code for this?

    I have read your reply carefully, thank you. The current power management mode of am62p is very different from the implementation of sleep and wake up of previous projects, and there are a lot of questions to consult in this aspect.

    Thank you for your reply.

  • Hello,

    What effect does linux have on the mcu when it enters low-power mode

    The MCU will be turned off in all the low power modes. The exception is MCU Only mode where the MCU remain online to run an application in the background. Linux sysfs is able to set if the DM firmware will turn the MCU domain on or off during a low power mode.


    Why is PMIC not associated with low power mode.Since linux is in low power mode.

    Since the DM firmware will be adjusting the PLLs and peripherals states, the PMIC is not required to remove the power supply to those peripherals. The schematic will show how the power is routed through the board design.

    3.so what is the use of setting pmic in mcu, as a watchdog function?Is the function of the pmic just a hardware watchdog, which can be activated through a register.

    Create a new E2E thread for the PMIC focused questions so the hardware team can comment.

    Can the MCU power down by setting PMIC

    Its possible, but the software implementation will not do this in the sequence of entering a low power mode. 

    5.When linux enters low power means that linux is shut down, exit low power is to restart, or will save the data, when wake up will be recovered from the hibernation state.

    The Linux/A53 cores will be in a state of WFI (Waiting for Interrupt). At this point, the Linux/A53's context will have been saved to DDR. When the device is woken up, it will restore the context by pulling the information from DDR. This means it will not require a full reboot of linux and resume from the previously known state.


    If the mcu wants to control soc sleep, if the architecture is designed with low power consumption, does the mcu need to use rpmsg to send a message to linux, and then linux executes a command to enter the low power mode?

    Yes, if the MCU domain will initiate a low power sequence, it will use RPMSG to send a message to A53/Linux to trigger the sleep sequence.

    I think linux can enter the MCU-only mode and use the CAN signal of MCU as the wake-up source. Is this OK?

    See Section 6.2.4.7 Wakeup Sources/Events of the AM62P TRM. Yes, its possible.

    But I don't know how to control the MCU to enter the low-power mode, and how should I wake up the MCU?

    The MCU does not have a direct path the DM Firmware. There is no secure line between the MCU Domain and WKUP Domain. If you want to do this, you'll have to route the message through the A53/Linux.

    See the SDK documentation for wakeup sources: https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/09_02_01_10/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Power_Management/pm_wakeup_sources.html

    7.About linux into low power, mcu set the wake source. Is there sample code for this?

    See the SDK documentation: https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/09_02_01_10/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Power_Management/pm_wakeup_sources.html

    Best Regards,

    Anshu