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.

[FAQ] SK-TDA4VM: How to reset the system using main domain watchdog

Part Number: SK-TDA4VM

There are multiple instances of watchdogs on the main domain. How to enable full SoC reset upon a main domain watchdog timer expiry.

  • Hi,

    On TDA4-SK board the design is slightly compared to TDA4-EVM. The main domain watchdog expiry event reaches the Main
    domain ESM. That routes the event to PMIC which only resets the main domain.

    So we need to enable the the event from main watchdog that reaches the MCU ESM which eventually triggers the MCU domain
    aka full domain reset.

    I have enabled the Main Domain watchdogs triggering the full SoC reset on TDA4-SK. There is an event that
    can be enabled to propagate the main domain ESM watchdog expiry all the way to MCU ESM. With that event enabled I could
    trigger SoC reset with main domain watchdog expiry.

    Here is the patch on top of the latest 8.4 SDK U-Boot repository:

    0001-Enable-MCU-ESM.patch

    The patch does:

    • Adds MCU ESM
    • Enables configuring multiple MCU instances in R5 SPL.
    • Enables propagating the main domain ESM events to MCU ESM that in turn
      enables the Main domain watchdogs triggering a MCU domain / SoC reset.
    • Also enables PMIC ESM events.

    No change needed in kernel as by default the Main domain watchdogs are enabled.
    With the above patch on the TDA4-SK board I am able to full system reset by using main domain watchdog

    Logs: main_domain_wd_soc_reset.txt

    Quick debug pointers when you see on your board:

    MAIN_ESM registers: root@tda4vm-sk:/opt/edge_ai_apps# devmem2 0x700550
    /dev/mem opened.
    Memory mapped at address 0xffffa6c95000.
    Read at address  0x00700550 (0xffffa6c95550): 0x03000000

    MCU_ESM:

    devmem2 0x40800450
    /dev/mem opened.


    Memory mapped at address 0xffff83a95000.
    Read at address  0x40800450 (0xffff83a95450): 0x80300000

    Best Regards,
    Keerthy