工具/软件:
您好、
我尝试使用 Enet 示例、并将其进一步扩展、以包括 IPC 内容。 我已将必要的 IPC 源文件添加到 Enet 示例文件夹、并更新了 makefile 以编译它们。
现在、链接器可能存在问题、即 IPC 库中缺少的符号、因为它未包含在我的设置中的任何位置。
现在的问题是、如何包括构建的 IPC 库 (ipc.aer5f) 或从源代码构建库?
我是否需要指向 drv/IPC/CCS src 并构建库、或者如何构建?
谢谢你。
此致、
摩西
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.
工具/软件:
您好、
我尝试使用 Enet 示例、并将其进一步扩展、以包括 IPC 内容。 我已将必要的 IPC 源文件添加到 Enet 示例文件夹、并更新了 makefile 以编译它们。
现在、链接器可能存在问题、即 IPC 库中缺少的符号、因为它未包含在我的设置中的任何位置。
现在的问题是、如何包括构建的 IPC 库 (ipc.aer5f) 或从源代码构建库?
我是否需要指向 drv/IPC/CCS src 并构建库、或者如何构建?
谢谢你。
此致、
摩西
尊敬的 Tarun:
我尝试在 main R4F (MCU2_0) 上运行 enet_lwip 示例、以及 IPC 功能。
PDK 版本 11.0.0.21、SDK 11.0
当单独构建并在 MCU2_0 上运行时、IPC 示例按预期工作、但当集成到 enet_lwip 示例中时、IPC 示例似乎不起作用。
由于以下原因、我无法正确调试它;
* IPC 应用程序。 仅在从 boot-seq 启动时有效、即 Uboot 加载它。 如果在 Linux 启动后从调试器加载它、它将无法按预期工作(也通过 TI 的某人听说过)
*如果我从集成的 Enet + IPC 中将 UART 控制台用作 UART0 ;那么 Linux 在某个 systemd 初始化阶段无法完全引导它。 因此、我将 UART 控制台更改为 UART1、但随后看不到 UART1 中的日志、至少 Linux 可以完全启动。
同样、在集成的 IPC + Enet 应用中、Enet 部分能够按预期发送 UDP 帧、但 IPC 任务似乎无法成功完成。
在将 UART 控制台更改为 UART1 之前、我在控制台上看到 SciClientInit 失败。
我的用例;
Up --IPC--> UC --Eth--> ExternalDevice;通过 IPC 发送的数据构成以太网数据的基础。
谢谢你。
此致、
摩西
在 Linux 方面、驱动程序会抛出以下错误、
[ 5.947800] k3_r5_rproc bus@100000:r5fss@5c00000:错误-EIVAL:rproc_add failed││
[5.963453] rproc-virtio rproc-virtio.16.auto: registered virtio0 (type 7)││
[ 5.996596] k3_r5_rproc bus@100000:r5fss@5c00000:k3_r5_cluster_rproc_init 失败、 RET =–22 ││μ s
[ 6.009553] k3_r5_rproc bus@100000:r5fss@5c00000:使用驱动程序 k3_r5_rproc 进行探测失败 错误–22
[5.698399] remoteproc remoteproc0: releasing 41000000.r5f││
[5.858378] Remoteproc remoteproc0: 41000000.r5f 可用││
[ 5.881463]远程处理远程处理 1: 5c00000.r5f 可用 ││μ s
[5.884585] remoteproc remoteproc0:连接到 41000000.r5f││
[5.887608]远程处理器 1: 连接到 5c00000.r5f ││μ s
[ 5.908829] remoteproc remoteproc1:RSC 表被截断││
[ 5.931634]远程处理远程处理 1: 无法处理资源:–22 ││μ s
[5.981184] remoteproc remoteproc0:远程处理器 41000000.r5f 现已连接││
[6.072040]远程处理远程处理 1: 正在发布 5c00000.r5f
注意:
*我只运行 mcu1_0 和 mcu2_0。
MCU2_0 包含我的应用 (Enet+IPC);mcu1_0 是一些预编译应用
您好:
在 MCU2_0 内核中、如果您正在运行 IPC、则需要等到 Linux 准备好进行通信。 您是否在应用程序中等待 Linux 准备就绪?
如果您使用的是 Linux、则 uboot 或 Linux 必须加载内核。 在本例中、uboot 加载 MCU2_0 内核、然后 MCU2_0 内核将在 A72 内核上完全引导 Linux 之前开始运行。 因此、您需要在 MCU2_0 中编写“等待 Linux 准备就绪“功能。
您的完整引导顺序是什么?
此致
Tarun Mukesh