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.

[参考译文] J721EXCPXEVM:如何构建自定义 IPC_ECHO_TEST 程序?

Guru**** 2551110 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1567314/j721excpxevm-how-to-build-a-custom-ipc_echo_test-program

器件型号:J721EXCPXEVM


工具/软件:

各位专家、您好! ipc_echo_test在 J721E 电路板上测试 RPMsg 时、构建定制程序时遇到了挑战。

目前、rpmsg_char_simple如所述 Foundational_Components_ IPC_J721E 运行正常、但我想构建自定义 IPC 固件。

我尝试了make -s ipc_echo_test CORE=mcu2_0<pdk_path>/packages/ti/build目录中的命令、但收到了以下错误:

make: *** No rule to make target 'ipc_echo_test'.  Stop.

我希望构建一个定制的 IPC 测试程序。 我需要遵循哪些步骤?

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

    您好:

    Build 命令错误、您可以参考 https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/11_00_00_06/exports/docs/pdk_jacinto_11_00_00_21/docs/userguide/jacinto/modules/ipc.html#command-to-build-ipclld

    此致

    Tarun Mukesh

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

    您好、感谢您的答复。 您提到我的编译命令不正确。 但是、我的命令基于文档中提供的示例。 请您澄清一下、这有什么问题

    实际上、我提到了 command-to-build-ipclld 文档中概述的方法 2。 具体而言、我使用了相应的 build 命令Target=example、即:  make -s -j BUILD_PROFILE=<debug/release> BOARD=< j721e_evm > CORE=<core_name> ipc_echo_test_freertos.

    此外、我引用了 loading-remote-firmware 部分、该部分表明示例名称是ipc_echo_test

    然后、

    我尝试了make -s ipc_echo_test CORE=mcu2_0<pdk_path>/packages/ti/build目录中的命令、但收到了以下错误:
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    命令中没有提供操作系统、

    make -s -j ipc_echo_test_freertos_build_os_type=freertos_profile= board=< j721e_evm > core=  

    此致

    Tarun Mukesh

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

    您好、我测试了您的解决方案、它运行良好。 非常感谢您的答复。

    也就是说、我注意到以这种方式生成的可执行文件的名称与文档 加载远程固件中显示的名称不同。 具体而言、编译的程序名为ipc_echo_test_freertos_<CORE>_<BUILD_PROFILE>.xer5f、而文档中的示例名为ipc_echo_test_<CORE>_<BUILD_PROFILE>.xer5f

    也许您可以考虑更新文档以反映这一差异并避免潜在的混淆。


    现在、我尝试修改示例程序以实现一些自定义函数。 但是、我注意到 PDK 中的相应代码非常复杂、有许多宏定义和许多全局变量。 因此、在尝试按照文档 write-helloworld-app-using-ipclld 构建自定义 IPC 测试程序时、我经常会遇到各种问题

    您是否可以共享一个可编译和可运行的简单 IPC 示例? 对我来说、更好地理解框架并推进我的工作将是非常有帮助的。

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

    您好:

    具体地说、编译后的程序被命名ipc_echo_test_freertos_<CORE>_<BUILD_PROFILE>.xer5f、而文档中的示例被命名为ipc_echo_test_<CORE>_<BUILD_PROFILE>.xer5f

    我肯定会提交一个内部 TT 来解决此问题。

    您是否可以共享一个可编译和可运行的简单 IPC 示例? 对我来说,更好地理解框架并推进我的工作将是非常有帮助的。

    在当前 SDK 中、IPC 回声测试示例被视为发送和接收 Hello world 示例消息的基本测试。 由于 IPC 中的不同层(如 RPMSG、VRING、Mailbox 等)、示例中的变量和定义是必要的。  

    writing-helloworld-app-using-ipclld

    链接中提到的步骤仅在 IPC 回声测试示例中以及接收和发送的任务完成。 如果在开发定制 IPC 示例时遇到任何问题、您肯定可以再提交一个 E2E。

    此致

    Tarun Mukesh