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.

[参考译文] AM620-Q1:仅 MCU 模式检查

Guru**** 2346050 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1529688/am620-q1-mcu-only-mode-checking

器件型号:AM620-Q1

工具/软件:

尊敬的专家

请参阅此页面。

https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/10_01_10_04/exports/docs/linux/Foundational_Components dep/dm/pm_low_power_modes.html#deep-sleep Power_Management

->  3.3.5.5.仅 MCU

这是客户的反馈、我会发布此主题以进行仔细检查

客户发现 AM620x 可以进入仅 MCU 模式、但他们还发现 MCU 也会进入暂停模式、我感到困惑、这里有几个问题、

(1) 即使 AM620x 也会进入仅 MCU 模式、我认为 MCUSS(M4 内核)应该继续工作而不会暂停、对吗?

(2) 以下命令是否意味着 M4 内核可以使用 SW API 唤醒 A53 主文件 (Linux)? 到目前为止、我们不支持、我们是否有发布计划?

echo enabled > /sys/bus/platform/devices/5000000.m4fss/power/wakeup

(3) 我们是否有办法在仅 MCU 模式下检查 MCUSS(M4 内核)应用程序“继续运行“?

(4) 当 AM62 退出仅 MCU 模式时、我看到了来自 MCU UART 的一些消息。

我想、此日志应该是显示 MCUSS 继续运行而不挂起的证据、不是吗?

如果答案是肯定的、我们是否应该添加一些特殊函数(或 API)来为我们自己的程序处理仅 MCU 模式?

[IPC RPMSG ECHO] Next MCU mode is 1
[IPC RPMSG ECHO] Suspend request to MCU-only mode received
[IPC RPMSG ECHO] Press a single key on this terminal to resume the kernel from MCU only mode

(5) 我很好奇、当 AM620x 从仅 MCU 模式唤醒时、是否需要从 DDR 备份/恢复“资源表“?

(6) 如果我想在 Linux 中更换 M4 固件、最简单的方法应该如下所示。

root@am62xx-evm:/lib/firmware# ln -sf /usr/lib/firmware/ti-ipc/am62xx/my_m4_app.out am62-mcu-m4f0_0-fw
 

基本上、*。xer5f 和 *。out 几乎相同的二进制文件、我们可以创建*。out 的软链接。哪个文件是从 CCS 构建的、正确吗?

非常感谢

Gibbs  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Gibbs、

    (1) 即使 AM620x 进入仅 MCU 模式、我认为 MCUSS(M4 内核)应该继续工作而不会暂停、是吗?

    请阅读 AM62x TRM 中的第 6.2.4 节“电源模式“: https://www.ti.com/lit/ug/spruiv7b/spruiv7b.pdf

    在仅 MCU 模式期间、MCU 电源域和 PLL 保持开启状态。 这允许 M4F 内核保持在线状态。

    (2) 以下命令是否意味着 M4 内核可以使用 SW API 唤醒 A53 主容器 (Linux)? 到目前为止、我们不支持、我们是否有发布计划?

    请阅读 WAKEUP ENABLE 语句正上方的语句。

    使用的 SDK

     

    echo enabled > /sys/bus/platform/devices/5000000.m4fss/power/wakeup

    但它在 SDK 10.1 上无法正常工作。 新 SDK 将使用:

    echo 100 > /sys/devices/system/cpu/cpu0/power/pm_qos_resume_latency_us

    此命令将告知 DM 固件下一个挂起状态将是仅 MCU 模式。

    (3) 我们是否有办法在仅 MCU 模式下检查 MCUSS (M4 Core) 应用程序“保持运行“?

    M4F MCU IPC 固件将为您实现此目的。

    如果您需要更多功能、那么最简单的方法是向 MCU M4F 固件添加调试语句、以指示其仍在运行。 在 SDK 10.1 中的所有其他低功耗模式下、MCU 内核将关闭、因此这些打印语句将停止。  

    对于其他问题、我将与 IPC 专家讨论并回复您。

    此致、

    Anshu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Gibbs、

    我想此日志应该是显示 MCUSS 保持运行而不暂停的证据、不是吗?

    是的。 您可以直接查看源代码: https://github.com/TexasInstruments/mcupsdk-core-k3/blob/k3_main/examples/drivers/ipc/ipc_rpmsg_echo_linux/ipc_rpmsg_echo.c

    源代码显示、当器件暂停时会打印消息、然后恢复为仅 MCU 模式:

    ####MCU IPC Wakeup
    [IPC RPMSG ECHO] Next MCU mode is 1
    [IPC RPMSG ECHO] Suspend request to MCU-only mode received 
    [IPC RPMSG ECHO] Press a single key on this terminal to resume the kernel from MCU only mode 
    [IPC RPMSG ECHO] Main domain resumed due to MCU UART 
    
    ####Other wakeup source
    [IPC RPMSG ECHO] Next MCU mode is 1
    [IPC RPMSG ECHO] Suspend request to MCU-only mode received 
    [IPC RPMSG ECHO] Press a single key on this terminal to resume the kernel from MCU only mode 
    [IPC RPMSG ECHO] Main domain resumed from a different wakeup source 

    对于深度睡眠、打印语句不同:

    [IPC RPMSG ECHO] Next MCU mode is 0
    ERROR: RPMessage_recv:367: [IPC RPMSG] Message recv @ 13 local end point failed due to invali!
    ERROR: RPMessage_recv:367: [IPC RPMSG] Message recv @ 14 local end point failed due to invali!
    [IPC RPMSG ECHO] Closing all drivers and going to WFI ... !!!
    [IPC RPMSG ECHO] Version: REL.MCUSDK.K3.10.01.00.10+ (Nov 14 2024 14:02:24):  
    [IPC RPMSG ECHO] Remote Core waiting for messages at end point 13 ... !!!
    [IPC RPMSG ECHO] Remote Core waiting for messages at end point 14 ... !!!
    

    (5) 我很好奇、当 AM620x 从仅 MCU 模式唤醒时、是否需要从 DDR 备份/恢复“资源表“?

    否、这不是必需的。 初始引导时需要资源表。 由于低功耗模式仅在初始启动后执行、因此从低功耗模式恢复时无需再次进行。

    Multiple Academy on Resource Table: dev.ti.com/.../node

    (6) 如果我要在 Linux 中替换 M4 固件、最简单的方法应该如下所示。

    请参阅 Linux 和多核 Academy 部分: