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.

[参考译文] Linux/TMDSLCDK138:来自近期 Processor SDK Linux/RTOS v4.0的 IPC MessageQApp 示例失败:nameserver_attach: connect failed:ProcID=1、errno=22 (无效参数)

Guru**** 2555630 points
Other Parts Discussed in Thread: OMAP-L138

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/610031/linux-tmdslcdk138-ipc-messageqapp-example-from-recent-processor-sdk-linux-rtos-v4-0-failing-nameserver_attach-connect-failed-procid-1-errno-22-invalid-argument

器件型号:TMDSLCDK138
Thread 中讨论的其他器件:DA8XXOMAP-L138

工具/软件:Linux

我正在尝试从最近的 Processor SDK Linux/RTOS v4.0运行 IPC MessageQ 示例。 但该示例不起作用。

Linux 端日志:

root@omapl138-lcdk:~# MessageQApp
using numLoops:100;ProcID:1
输入 MessageQApp_execute
Local MessageQId:0x80



root@omapl138-lcdk:~# cat /tmp/LAD/lad.txt
[0.426633]
正在初始化 LAD ... [0.440095]
正在打开 FIFO:/tmp/LAD/LADCMDS
[116.768588]正在检索命令...
[116.770189]
LAD _连接:
[116.770338] 客户端 FIFO 名称=/tmp/LAD/385
[116.770430] 客户端 PID = 385
[116.770501] 分配的客户端句柄= 0
[116.770901] 创建 FIFO /tmp/LAD/385
[116.772257] FIFO /tmp/LAD/385已打开进行写入
[116.772702] 已发送响应
[116.772830]完成
[116.772914]检索命令...
[116.773899]正在发送响应...
[116.774480]正在检索命令...
[116.775092] LAD 多处理器_getconfig:正在调用 MultiProc_getconfig ()...
[116.775249] MultiProc_getconfig ()- 2个处理器
[116.775338]#集群处理器:2
[116.775407]集群基 ID:0
[116.775471]处理器 ID 0 -"host"
[116.775539]处理器 ID 1 -"DSP"
[116.775595] 状态= 0
[116.775654]完成
[116.775707]发送响应...
[116.775862]正在检索命令...
[116.776416] LAD 名称服务器_Setup:正在调用 nameserver_setup()……
[116.776624] nameserver_setup:已输入、refcount=0
[116.777045] nameserver_setup:正在创建侦听器线程
[116.778029] nameserver_setup:正在退出、refcount=1
[116.778441] 状态= 0
[116.778553]完成
[116.778630]发送响应...
[116.779119]正在检索命令...
[116.779355] LAD_MessageQ_getconfig:调用 MessageQ_getconfig ()...
[116.779468] 状态= 0
[116.779552]已完成
[116.779618]发送响应...
[116.780117]正在检索命令...
[116.780353] LAD MessageQ_Setup:Calling MessageQ_setup()……
[116.780468] MessageQ_setup:已输入、refcount=0
[116.780559] nameserver_create ():'messageQ'
[116.780827] MessageQ_setup:正在退出、refcount=1
[116.780952] 状态= 0
[116.781039]完成
[116.781111]发送响应...
[116.782380]正在检索命令...
[116.782671] nameserver_attach:--> ProcID=1,refcount=0
[116.783439] listener_CB:输入的侦听器线程。
[116.783641] nameserver:等待 unblockFd:2和 SOCKS:maxfd:2
[116.952160] nameserver_attach:已创建 send 套接字:5、ProcID 1
[116.952542] nameserver_attach:连接失败:ProcID=1、errno=22 (无效参数)
[116.952860] 正在关闭发送套接字:5
[116.953061] nameserver_attach:<- refcount=0、status=-1
[116.953181]正在发送响应...
[116.954561]正在检索命令...
[116.954810] LAD_MessageQ_create:调用 MessageQ_create (0x2c7fc、0x2c81c)...
[116.954927] MessageQ_create:创建'host'
[116.955046] MessageQ_create:返回 obj=0x315d8、qid=0x80
[116.955218] 状态= 0
[116.955305]已完成
[116.955369]正在发送响应...
[116.955915]正在检索命令...
[116.956152] LAD MessageQ_Announce:调用 MessageQ_Announce (0x2c7fc、0x315d8)...
[116.956270] MessageQ_Announce:宣布0x315d8
[116.956396] nameserver_add:输入的密钥:'host'、数据:0x80
[116.956566] 状态= 0
[116.956676]完成
[116.956742]发送响应...
[116.973196]正在检索命令...
[116.973446] LAD 名称服务器_GETUINT32:调用 nameserver_getUInt32 (0x314f0、'Slave_DSP')...
[116.973596] nameserver_getLocal:输入键:找不到'slave_DSP'!
[116.973708] nameserver_getRemote:处理器1没有插槽连接
[116.973802] 值= 0x80
[116.973880] 状态=-5
[116.997252]完成 

DSP 侧日志:

root@omapl138-lcdk:~# cat /debug/remoteproc/remoteproc0/trace0
3个位于0xc3100000
MessageQ_single.c 的资源条目:main:MultiProc id = 1
在61上使用主机
tsk1Fxn 注册 rpmsg-proto:created MessageQ:slave_dsp;QueueID:0x10080
等待主机发送同步消息... 

此外、在加载内核模块 da8xx_remoteproc 期间、我会看到 strage 警告:

root@omapl138-lcdk:~ modprobe da8xx_remoteparteremoveproc0:为 DSP
remoteproc remoteproc0供电:启动 FW 映像 rproc-dsp-FW,大小为4216832
root@rpomap138-lcdk:~# rpmodvirtio_rpmsg_tirtio_bus tio0:0xstirdc-to-line-to-virtirdc-to-video--创建主机:rmpirtirtirtirtirtos-

[在此处剪切]-----
警告:CPU:0 PID:402 at net/rpmsg/rpmsg_proto:117 rpmsg_sock_get_proc_id+0x44/0x60 [rpmsg_proto ]
链接的模块:da8xx_remote_rpci_proto Hawtio_rpmsg_bus rpmsgird_core autotirtio ohotio renti_ring_decrent_rack_ring_decu.4xx

:dam_dcpu_dcpu_dam4xx 硬件:tirtid_dam_damdam_g_r_r_govers_rack_rack_dam4xx vid_damdam_g_r_govers_govers_dam_dam_rack_r_rack_r_r_g_rack_

](dump_backtrace)从[ ](show_stack+0x18/0x1c)
r7:00000009 R6:00000000 R5:bf0a8d78 R4:00000000
[ ](show_stack)从[ ](dump_stack+0x20/0x28)
[ ](dump_stack)从[ ](_warn+0xdc/0x104)
[ ](__warn)从[ ](warn_slespath_null+0x28/0x30)
R9:c0684e74 R8:00000000 r7:00000008 R6:c60c2e80 R5:bf0a906c R4:ffffffed
[ ](warn_slowpath_null)、来自[ ](rpmsg_sock_get_proc_id+0x44/0x60 [rpmsg_proT])
[ ](rpmsg_sock_get_proc_id [rpmsg_proT])、来自[ ](rpmsg_proTO_probe + 0x20/0x134 [rpmsg_proto ])
R5:bf0a906c R4:c6bf2200
[ ](rpmsg_proTO_probe [rpmsg_proT])、来自[ ](rpmsg_dev_probe +0x98/0x144 [rpmsg_core])
r7:00000008 r6:c60c2e80 r5:bf0a906c r4:c6bf2200
[ ](rpmsg_dev_probe [rpmsg_core])、来自[ ](driver_probe_device+0x20c/0x2c0)
r6:bf0a906c r5:c0684e98 r4:c6bf2200
[ ](driver_probe_device)从[ ](_DEVICE_ATE_DRIVER+0xa0/0xd4)
R9:c0684e74 R8:00000000 r7:00000001 R6:c6bf2200 R5:c63d1d38 R4:bf0a906c
[ ](_device_attach_driver)、来自[ ](bus_for_each _drv+0x6c/0x9C)
r7:00000001 R6:c02cad40 R5:c63d1d38 R4:00000000
[ ](bus_for_each _drv)从[ ](_device_attach+b54/0x11c)
r6:c6bf2200 r5:c6bf2234 r4:c6bf2200
[ ](_device_attach)从[ ](DEVICE_INTRIGE+0x14/0x18)
r7:00000000 R6:c6bf2200 R5:bf09baac R4:c6bf2208
[ ](DEVICE_INTERY_PROBE)从[ ](bus_probe_device+0x8c/0x94)
[ ](bus_probe_device)、来自[ ](device_add+0x3d0/0x580)
r7:00000000 R6:c6bf2200 R5:c60f5a30 R4:c6bf2208
[ ](device_add)从[ ](DEVICE_REGISTER+0x1c/0x20)
R10:c62dd8c8 R9:bf0a12c4 R8:00000000 r7:c62dd880 R6:c60f5a30 R5:00000000
R4:c6bf2200
[ ](DEVICE_REGISTER)从[ ](rpmsg_register_device+0x58/0x94 [rpmsg_core])
R5:00000000 R4:c6bf2200
[ ](rpmsg_register_device [rpmsg_core])、来自[ ](rpmsg_ns_CB+0x160/0x22c [virtio_rpmsg_BUS])
R5:00000000 R4:c6bf2200
[ ](rpmsg_ns_CB [virtio_rpmsg_BUS])、来自[ ](rpmsg_recv_done + 0xd4/0x290 [virtio_rpmsg_bus])
r7:c60c2e4c r6:c62dd880 r5:c60c2e40 r4:c3040000
[ ](rpmsg_recv_done [virtio_rpmsg_BUS])、来自[ ](vring_interrupt+0x40/0x58 [virtio_ring])
r10:c057a264 r9:c0649c85 r8:c005fe14 r7:c063e278 r6:00000001 r5:c063e278
r4:c6070c00
[ ](vring_interrupt [virtio_ring])、来自[ ](rproc_vq_interrupt+0x4c/0x70 [remoteproc])
[ ](rproc_vq_interrupt [remoteproc])、来自[ ](handle_event+0x1c/0x30 [da8xx_remoteproc])
[ ](handle_event [da8xx_remoteproc])、来自[ ](IRQ_thread_fn+0x24/0x5c)
R5:c063e278 R4:c62ae200
[ ](IRQ_THREAD_Fn)、来自[ ](IRQ_thread+0x100/0x1e4)
r7:c063e278 R6:00000001 R5:c63d0000 R4:c62ae200
[ ](IRQ_THread)、来自[ ](kthread+0xdc/0xFC)
R10:00000000 R9:00000000 R8:c005ff9c r7:c62ae200 R6:c63d0000 R5:00000000
R4:c6359ee0
[ ](kthread)、来自[ ](RET_FAND_FANK+0x14/0x24)
R8:00000000 r7:00000000 R6:00000000 R5:c003e4cc R4:c6359ee0
--[结束跟踪659ed63e3e519576 ]--远程处理器
远程处理器0:注册的 virtio0 (类型7)
DSP

远程处理器0:远程处理器模块0:远程处理器0
da8xx_remoteproc 使用的大小 3778 0
rpmsg_proto 6108 0
virtio_rpmsg_BUS 8812 1 rpmsg_proto
rpmsg_core 7463 2 rpmsg_proto、virtio_rpmsg_bus
remoteproc 27194 2 da8xx_remoteproc、rpmsg_proto
virtiio 7667 2 virtio_rpmsg_bus、remoteproc
virtio_ring 15185 2 virtio_rpmsg_bus、remoteproc
firmware_class 8629 1 remoteproc
ohci_da8xx 4776 0
ohci_hcd 30175 1 ohci_da8xx
usbcore 195973 2 ohci_hcd、ohci_da8xx
USB_common 4500 1 usbcore
phy_da8xx_usb 3357 1
DaVinci_WDT 2654 0
自动4 26170 0 

aslo 简单程序:

int main(){
int sock;
socklen_t len;
struct sockaddr_rpmsg dstAddr;
int err;

sock = socket (AF_RPMSG、 SOCK_SEQPACKET、0);
if (sock < 0){
printf ("无法创建套接字%s (%d)\n"、errno、strerror (errno));
return -1;
}/*

连接到远程服务*/
memset (&dstAddr、0、sizeof (dstAddr));
dstAddr.family = AF_RPMSG;
//将 MultiProc 'clusterid'转换为 remoteproc 索引*/
dstAddr.vproc_id = 0;
dstAddr.addr = 61;

len = sizeof (struct sockaddr_rpmsg);
err = connect (sock、(struct sockaddr *)&dstAddr、len);
if (err < 0){
printf ("连接失败:%s (%d)\n"、strerror (errno)、errno);
返回(-1);
}

printf("Socket connect OK\n");
关闭(SOCK);

返回0;
} 

使用 errno -22 (EINVAL)连接期间失败。

我尝试了两个选项:

  • 使用 Processor SDK Linux/RTOS v4.0中的模块和示例预编译内核
  • 按照 IPC 安装指南 Linux 中的说明、使用 SDK 中的模块手动重建内核4.9.28、 但不应用补丁(因为补丁适用于内核3.8.0):
    make ARCH=arm CROSS_COMPILE=/some_path/arm-linux-gnueabi- distclean
    make ARCH=arm CROSS_compil=/some_path/arm-linux-gnueabi- tisdk_omapl138-lcdk_defconfig
    make ARCH=arm CROSS_COMPILE=/se_path/arm-linux-gnueabi- target=/target=/target_modules=/linux-target_modules=/linux-target_modules=/linux-target_install_arch/target_path=/target_ar_arch/target=/linux-target_arch/target=/linux-target=/
    

,但结果相同。

我出了什么问题? 为什么函数 rpmsg_sock_get_proc_id()(/net/rpmsg/rpmsg_proto.c)在检索 rproc id 时失败? 这是正常的吗?

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

    这是 OMAP-L138 LCDK 还是定制板?

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

    Yordan、您好!
    它是 OMAP-L138 LCDK 电路板。

    命令 ls /sys/firmware/devicetree 不返回任何内容。 这是正常的吗? 如何检查 Uboot 在引导过程中使用的.dtb 文件?

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

    您好!

    我在我这边测试了这个、它运行正常。 请参阅运行最新 Processor SDK 中的内核4.9.28的 LCDK 日志:

    root@omapl138-lcdk:~ MessageQApp                                                              

    使用 numLoops:100; ProcID:1.                                                               

    输入 MessageQApp_execute                                                                 

    本地 MessageQId:0x80                                                                   

    远程队列 ID [0x10080]                                                                  

    正在与远程处理器 DSP...交换100条消息                                                    

    MessageQ_Get #1 Msg = bb6600470                                                              

    MessageQ_Get #2 Msg = bb6600470                                                              

    MessageQ_Get #3 Msg = bb6600470                                                              

    MessageQ_Get #4 Msg = bb6600470                                                              

    MessageQ_Get #5 Msg = bb6600470                                                              

    MessageQ_Get #6 Msg = bb6600470                                                              

    MessageQ_get #7 Msg = bb6600470                                                              

    MessageQ_Get #8 Msg = bb6600470                                                              

    MessageQ_Get #9 Msg = bb6600470                                                              

    MessageQ_get #10 Msg = bb6600470                                                              

    MessageQ_get #11 Msg = bb6600470                                                              

    MessageQ_get #12 Msg = bb6600470                                                              

    MessageQ_get #13 Msg = bb6600470                                                              

    MessageQ_get #14 Msg = bb6600470                                                              

    MessageQ_Get #15 Msg = bb6600470                                                              

    MessageQ_Get #16 Msg = bb6600470                                                              

    MessageQ_get #17 Msg = bb6600470                                                              

    MessageQ_Get #18 Msg = bb6600470                                                              

    MessageQ_get #19 Msg = bb6600470                                                              

    MessageQ_Get #20 Msg = bb6600470                                                              

    MessageQ_Get #21 Msg = bb6600470                                                              

    MessageQ_get #22 Msg = bb6600470                                                              

    MessageQ_get #23 Msg = bb6600470                                                              

    MessageQ_get #24 Msg = bb6600470                                                              

    MessageQ_get #25 Msg = bb6600470                                                              

    MessageQ_get #26 Msg = bb6600470                                                              

    MessageQ_get #27 Msg = bb6600470                                                              

    MessageQ_get #28 Msg = bb6600470                                                              

    MessageQ_get #29 Msg = bb6600470                                                              

    MessageQ_get #30 Msg = bb6600470                                                              

    MessageQ_get #31 Msg = bb6600470                                                              

    MessageQ_get #32 Msg = bb6600470                                                              

    MessageQ_get #33 Msg = bb6600470                                                              

    MessageQ_get #34 Msg = bb6600470                                                              

    MessageQ_get #35 Msg = bb6600470                                                              

    MessageQ_get #36 Msg = bb6600470                                                              

    MessageQ_get #37 Msg = bb6600470                                                              

    MessageQ_get #38 Msg = bb6600470                                                              

    MessageQ_get #39 Msg = bb6600470                                                              

    MessageQ_get #40 Msg = bb6600470                                                              

    MessageQ_get #41 Msg = bb6600470                                                              

    MessageQ_get #42 Msg = bb6600470                                                              

    MessageQ_get #43 Msg = bb6600470                                                              

    MessageQ_get #44 Msg = bb6600470                                                              

    MessageQ_get #45 Msg = bb6600470                                                              

    MessageQ_get #46 Msg = bb6600470                                                              

    MessageQ_get #47 Msg = bb6600470                                                              

    MessageQ_get #48 Msg = bb6600470                                                              

    MessageQ_get #49 Msg = bb6600470                                                              

    MessageQ_get #50 Msg = bb6600470                                                              

    MessageQ_Get #51 Msg = bb6600470                                                              

    MessageQ_get #52 Msg = bb6600470                                                              

    MessageQ_get #53 Msg = bb6600470                                                              

    MessageQ_get #54 Msg = bb6600470                                                              

    MessageQ_get #55 Msg = bb6600470                                                              

    MessageQ_get #56 Msg = bb6600470                                                              

    MessageQ_get #57 Msg = bb6600470                                                              

    MessageQ_Get #58 Msg = bb6600470                                                              

    MessageQ_get #59 Msg = bb6600470                                                              

    MessageQ_get #60 Msg = bb6600470                                                              

    MessageQ_get #61 Msg = bb6600470                                                              

    MessageQ_get #62 Msg = bb6600470                                                              

    MessageQ_get #63 Msg = bb6600470                                                              

    MessageQ_get #64 Msg = bb6600470                                                              

    MessageQ_get #65 Msg = bb6600470                                                              

    MessageQ_get #66 Msg = bb6600470                                                              

    MessageQ_get #67 Msg = bb6600470                                                              

    MessageQ_get #68 Msg = bb6600470                                                              

    MessageQ_get #69 Msg = bb6600470                                                              

    MessageQ_get #70 Msg = bb6600470                                                              

    MessageQ_get #71 Msg = bb6600470                                                              

    MessageQ_Get #72 Msg = bb6600470                                                              

    MessageQ_get #73 Msg = bb6600470                                                              

    MessageQ_get #74 Msg = bb6600470                                                              

    MessageQ_Get #75 Msg = bb6600470                                                              

    MessageQ_get #76 Msg = bb6600470                                                              

    MessageQ_get #77 Msg = bb6600470                                                              

    MessageQ_get #78 Msg = bb6600470                                                              

    MessageQ_get #79 Msg = bb6600470                                                              

    MessageQ_get #80 Msg = bb6600470                                                              

    MessageQ_get #81 Msg = bb6600470                                                              

    MessageQ_Get #82 Msg = bb6600470                                                              

    MessageQ_get #83 Msg = bb6600470                                                              

    MessageQ_get #84 Msg = bb6600470                                                              

    MessageQ_get #85 Msg = bb6600470                                                              

    MessageQ_get #86 Msg = bb6600470                                                              

    MessageQ_get #87 Msg = bb6600470                                                              

    MessageQ_get #88 Msg = bb6600470                                                              

    MessageQ_get #89 Msg = bb6600470                                                              

    MessageQ_get #90 Msg = bb6600470                                                              

    MessageQ_get #91 Msg = bb6600470                                                              

    MessageQ_get #92 Msg = bb6600470                                                              

    MessageQ_get #93 Msg = bb6600470                                                              

    MessageQ_get #94 Msg = bb6600470                                                              

    MessageQ_get #95 Msg = bb6600470                                                              

    MessageQ_get #96 Msg = bb6600470                                                              

    MessageQ_get #97 Msg = bb6600470                                                              

    MessageQ_Get #98 Msg = bb6600470                                                              

    MessageQ_get #99 Msg = bb6600470                                                              

    MessageQ_get #100 Msg = bb6600470                                                             

    已与远程处理器 DSP 交换100条消息                                                      

    示例应用已成功完成!                                                         

    离开 MessageQApp_execute                                                                 

    root@omapl138-lcdk:~# cat /tmp/LAD/lad.txt                                                         

    [0.265362]                                                                         

    正在初始化 LAD ... [0.295366]                                                               

      打开 FIFO:/tmp/LAD/LADCMDS                                                             

    [63.274736]正在检索命令...                                                              

    [63.276453]                                                                         

    LAD 连接:                                                                        

    [63.276631]  客户端 FIFO 名称=/tmp/LAD/700                                                       

    [63.276738]  客户端 PID = 700                                                              

    [63.276820]  分配的客户端句柄= 0                                                         

    [63.277104]  FIFO /tmp/LAD/700已创建                                                          

    [63.27855]  FIFO /tmp/LAD/700打开进行写入                                                    

    [63.279028]  发送了响应                                                                

    [63.279173]完成了                                                                      

    [63.279268]正在检索命令...                                                              

    [63.280280]正在发送响应...                                                               

    [63.280519]正在检索命令...                                                              

    [63.281122] LAD 多处理器 getconfig:正在调用 MultiProc_getconfig ()...                                            

    [63.281310] MultiProc_getconfig()-2个进程                                                         

    [63.281415]集群中的#处理器:2.                                                           

    [63.281492]群集基 ID:0                                                                

    [63.281564]  ProcID 0 -"host"(主机)                                                              

    [63.281640]  处理器1 -"DSP"                                                              

    [63.281710]  状态= 0                                                                 

    [63.281779]完成                                                                      

    [63.281841]正在发送响应...                                                               

    [63.281953]正在检索命令...                                                              

    [63.282596] LAD 名称服务器_Setup:正在调用 nameserver_setup()……                                               

    [63.283198] nameserver_setup:已输入、refcount=0                                                      

    [63.283695] nameserver_setup:创建侦听器线程                                                   

    [63.285013] nameserver_setup:正在退出,refcount=1                                                      

    [63.285420]  状态= 0                                                                 

    [63.285540]完成                                                                      

    [63.285626]正在发送响应...                                                               

    [63.286220]正在检索命令...                                                              

    [63.286506] LAD MessageQ_getconfig:调用 MessageQ_getconfig ()...                                             

    [63.286635]  状态= 0                                                                 

    [63.286733]完成                                                                      

    [63.286815]正在发送响应...                                                               

    [63.287389]正在检索命令...                                                              

    [63.287659] LAD MessageQ_Setup:调用 MessageQ_setup()……                                                 

    [63.287789] MessageQ_setup:已输入、refcount=0                                                       

    [63.287893] nameserver_create():'messageQ'                                                         

    [63.288068] MessageQ_setup:正在退出、refcount=1                                                       

    [63.288186]  状态= 0                                                                 

    [63.288287]完成                                                                      

    [63.288366]正在发送响应...                                                               

    [63.289948]正在检索命令...                                                              

    [63.290344] nameserver_attach:--> ProcID=1, refcount=0                                                   

    [63.290636] nameserver_attach:已创建发送套接字:5、ProcID 1                                               

    [63.290964] nameserver_attach:已创建接收套接字:6、ProcID 1                                             

    [63.291327] listener_CB:输入的侦听器线程。                                                      

    [63.291489] nameserver:Waiting for unblockFd:2,SOCKS:maxfd:6.                                            

    [63.291657] nameserver:从 select()返回                                                         

    [63.291794]名称服务器:侦听器线程、事件:刷新                                                   

    [63.291966] nameserver: Waiting for unblockFd: 2, and SOCKS:maxfd: 6.                                            

    [63.292198] nameserver_attach:<-- refcount=1,status=0                                                   

    [63.292342]正在发送响应...                                                               

    [63.294324]正在检索命令...                                                              

    [63.294596] LAD 的 MessageQ_create:调用 MessageQ_create (0x2c7fc、0x2c81c)...                                        

    [63.294741] MessageQ_create:创建'host'                                                        

    [63.294885] MessageQ_create:返回 obj=0x315d8、qid=0x80                                                

    [63.295076]  状态= 0                                                                 

    [63.295190]完成                                                                      

    [63.295277]正在发送响应...                                                               

    [63.296622]正在检索命令...                                                              

    [63.296897] LAD 的 MessageQ_Announce:调用 MessageQ_Announce (0x2c7fc、0x315d8)...                                      

    [63.297035] MessageQ_Announce:宣布0x315d8                                                      

    [63.297181] nameserver_add:输入的密钥:'host'、data:0x80                                                 

    [63.297310]  状态= 0                                                                 

    [63.297403]完成                                                                      

    [63.297484]正在发送响应...                                                               

    [63.298324]正在检索命令...                                                              

    [63.298596] LAD 名称服务器_GETUINT32:调用 nameserver_getUInt32 (0x314f0、'Slave_DSP')...                                 

    [63.298770] nameserver_getLocal:输入键:找不到'slave_DSP'!                                             

    [63.298897] nameserver_getRemote:通过 sock 发送请求:5.                                                

    [63.299346] nameserver_getRemote:从 ProcID 1请求、MessageQ:slave_dsp                                       

    [63.299619] nameserver_getRemote:等待 waitFd:4.                                                   

    [63.300310]名称服务器:从 select()返回                                                         

    [63.300555]名称服务器:侦听器从 sock 获得名称服务器消息:6!                                            

    [63.300742] listener_CB:Recvfrom socket:FD:6.                                                       

    [63.300855]  接收的 ns msg:nbytes:484、来自 addr:61、来自 vproc:0                                         

    [63.300951]名称服务器回复:InstanceName:MessageQ、名称:Slave_DSP、值:0x10080                                    

    [63.301130]名称服务器:等待 unblockFd:2,SOCKS:maxfd:6                                            

    [63.301420] nameserver_getRemote:回复来自:1、MessageQ:名称:Slave_DSP、值:0x10080                                 

    [63.301585]  值= 0x10080                                                               

    [63.301693]  状态= 0                                                                 

    [63.301773]完成                                                                      

    [63.301850]正在发送响应...                                                               

    [63.302333]正在检索命令...                                                              

    [64.425695] LAD 的 MessageQ_DELETE:调用 MessageQ_DELETE (0x315d8)...                                            

    [64.425890] MessageQ_delete:删除0x315d8                                                        

    [64.426046] MessageQ_delete:返回0                                                          

    [64.426153]  状态= 0                                                                 

    [64.426239]完成                                                                      

    [64.426313]正在发送响应...                                                               

    [64.426454]正在检索命令...                                                              

    [64.428323] nameserver_detach:--> ProcID=1, refcount=1                                                   

    [64.428711] nameserver:从 select()返回                                                         

    [64.428893]名称服务器:侦听器线程、事件:刷新                                                   

    [64.42907] nameserver: Waiting for unblockFd: 2,and SOCKS:maxfd: 2.                                            

    [64.429302] nameserver_detach:关闭套接字:5.                                                      

    [64.429628] nameserver_detach:关闭套接字:6.                                                      

    [64.429899] nameserver_detach:<-- refcount=0,status=0                                                   

    [64.430040]正在发送响应...                                                               

    [64.430208]正在检索命令...                                                              

    [64.431876] LAD 的 MessageQ_Destroy:调用 MessageQ_Destroy ()...                                               

    [64.432066] MessageQ_Destroy:已输入、refcount=1                                                      

    [64.432211] MessageQ_Destroy:退出、refcount=0                                                      

    [64.432393]  状态= 0                                                                 

    [64.432493]完成                                                                      

    [64.432577]正在发送响应...                                                               

    [64.432710]正在检索命令...                                                              

    [64.433910] LAD 名称服务器_销毁:调用 nameserver_destro()……                                             

    [64.434106] nameserver_destroy:输入、refcount=1                                                     

    [64.434218] nameserver_destroy:关闭侦听器...                                                    

    [64.434454]名称服务器:从 select()返回                                                         

    [64.434625]名称服务器:侦听器线程、事件:关机                                                  

    [64.435257] nameserver_destroy:正在加入侦听器线程...                                                 

    [64.435573] nameserver_destroy:正在退出,refcount=0                                                     

    [64.435717]  状态= 0                                                                 

    [64.435818]完成                                                                      

    [64.435900]正在发送响应...                                                               

    [64.436045]正在检索命令...                                                              

    [64.436995]                                                                         

    LAD 断开连接:[64.437176]                                                                 

      客户端句柄= 0[64.437284]                                                              

      关闭 FIFO /tmp/LAD/700 (filePtr = 0x302f0)                                                       

    [64.437509]  已完成、未链接/tmp/LAD/700                                                        

    [64.437875]完成                                                                      

    [64.438020]正在检索命令...                                                              

    [64.441934]  在 FIFO 上检测到 EOF、关闭 FIFO:/tmp/LAD/LADCMDS                                             

    [64.44235]                                                                         

      打开 FIFO:/tmp/LAD/LADCMDS    

    DSP 日志:

    root@omapl138-lcdk:~# cat /sys/kernel/debug/remoteproc/remoteproc0/trace0                                          

    3个资源条目位于0xc3100000                                                              

    MessageQ_single.c:main:多处理器 ID = 1                                                          

    在61上使用主机注册 rpmsg-proto:rpmsg-proto 服务                                                 

    tsk1Fxn:已创建 MessageQ:Slave_DSP;队列 ID:0x10080                                                   

    正在等待来自主机的同步消息...                                                             

    从(ProcID:remoteQueueId)接收的消息:0x0:0x80                                                     

        有效载荷:8字节;循环:100、不打印。                                                   

    100次迭代花费了121个周期或1210个 usecs/msg                                                       

    正在等待来自主机的同步消息...                                                             

    root@omapl138-lcdk:~#  

    此外 ,当内核启动时,还会加载 da8xx_remoteproc。  

    您是否修改了代码中的任何内容? 您是否运行最新的 SDK: TI-processor-sdk-linux-omapl138-lcdk-04.00.04。  

    此致、  

    Yordan

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

    Yordan、您好!

    是的。

    我解决了这个问题。 我忘记了澄清电路板是通过网络启动的。 为了配置网络引导、我使用了 SDK 软件包中的脚本./ti-processor-sdk-linux-omapl138-lcdk-04.00.04/setup.sh。 此脚本生成错误的 u-boot 配置。 bootcmd 变量的问题:

    bootcmd=dhcp;setenv serverip 192.168.1.234;tftpboot; bootm 

    使用当前值,内核启动时不会出现任何设备树 blob。 在简单修改之后:

    bootcmd=dhcp;setenv serverip 192.168.1.234;tftpboot ${fdtaddr}da850-lcdk.dtb;tftpboot ${loadaddr}uImage-omapl138-lcdk_ipc.bin;bootm ${loadaddr}-${dtaddr} 

    ,示例工作正常。 也许您应该修复脚本以获得更好的可用性!?

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

    感谢您分享您的解决方案。

    我会将此反馈传递给我们的管理层。

    此致、
    Yordan