我使用的是 AM62x 或 AM64x。
我想使用 Code Composer Studio (CCS)来调试在 M4F 上运行的程序。 M4F 已由 Linux 初始化并加载。 我希望 CCS 连接到 M4F 并开始调试已在运行的代码(即、我不希望 CCS 重新启动 M4F 或将新代码加载到 M4F)。
。
问:为什么我希望 CCS 连接到 M4F 而不复位 M4F?
如果远程内核(即 M4F)使用与 Linux 的 RPMsg 通信、则 M4F 固件中包含一些有关 RPMsg 的信息。 但是、某些 RPMsg 信息需要由 Linux 提供。 该信息通常由 Linux RemoteProc 和 RPMsg 驱动程序在 Linux 启动时提供。 如果 CCS 在 Linux 启动后将固件重新加载到 M4F、则 CCS 会覆盖 Linux 中的 RPMsg 信息。 如果从 Linux 中删除了 RPMsg 信息、则具有 Linux 内核的 RPMsg 将不起作用。
如果 CCS 需要加载 M4F 固件(而不是 Linux)、并且固件使用 Linux RPMsg、请考虑关闭并重新启动 Linux IPC 驱动 程序、如下所述。
问:如果远程内核固件不使用 RPMsg 该怎么办? 在这种情况下、CCS 能否在不处理 Linux IPC 驱动程序的情况下复位 M4F?
是的、如果 M4F 固件不需要 Linux 中的信息、CCS 可以重置 M4F 并将新固件加载到 M4F 中。 MCU+ SDK 文档"CCS 启动、加载和运行"下介绍了从 CCS 加载和运行远程核心固件的步骤。
问:此示例是否也适用于 R5F 内核?
同样的概念也适用于 R5F 内核。 但是、某些具体步骤可能需要更改。
问:如果我对多核主题有另一个问题、该怎么办?
有关多核主题的其他常见问题解答、请参阅 Sitara 多核开发和文档