AM5708 RAM 512M DSP opencl libdsp_fft例程运行失败"Internal Error Number... - AM57x - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7790|回复: 11

[未解决] AM5708 RAM 512M DSP opencl libdsp_fft例程运行失败"Internal Error Number...

[复制链接]

1

主题

8

帖子

1037

积分

金牌会员

Rank: 6Rank: 6

积分
1037
发表于 2019-7-14 23:15:59 | 显示全部楼层 |阅读模式
型号:SOM-TL570x
SDK:ti-processor-sdk-linux-rt-am57xx-evm-04.03.00.05-Linux-x86-Install
CPU:AM5708
RAM:512M
uboot:u-boot-2017.01-g8fc2019-v1.2.tar
kernel:linux-rt-4.9.65-gcaf89f0-v1.2.tar
设备在启动过程中报错,报错信息如下图所示:
运行libdsp_fft例程时报错,报错信息如下图所示:

请问这是什么原因导致的出现这个问题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

36

主题

526

帖子

7568

积分

创龙

Rank: 8Rank: 8

积分
7568
发表于 2019-7-15 10:38:17 | 显示全部楼层
您好,
  1.请确认SD卡已设置好设备树文件。

2.系统后台进程 ti-mctd 是否正常开启




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

1

主题

8

帖子

1037

积分

金牌会员

Rank: 6Rank: 6

积分
1037
 楼主| 发表于 2019-7-15 11:31:39 | 显示全部楼层
uboot board_name 已经更改为tl570x-evm
ti-mctd运行成功了的,还是会出现以上问题;

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

您好, 参照一下方法修改即可 [attachimg]5340[/attachimg]  详情 回复 发表于 2019-7-15 14:21
回复 支持 反对

使用道具 举报

36

主题

526

帖子

7568

积分

创龙

Rank: 8Rank: 8

积分
7568
发表于 2019-7-15 14:21:37 | 显示全部楼层
qq2925609791 发表于 2019-7-15 11:31
uboot board_name 已经更改为tl570x-evm
ti-mctd运行成功了的,还是会出现以上问题;
...

您好,
参照一下方法修改即可


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

1

主题

8

帖子

1037

积分

金牌会员

Rank: 6Rank: 6

积分
1037
 楼主| 发表于 2019-7-15 14:52:16 | 显示全部楼层
已经按照该修改方案修改,重启设备后重新运行ti-mctd守护进程,但是还是出现该问题。
跟了一下代码发现是ti-opencl源码中 MBoxMsgQ::MBoxMsgQ(Coal:SPDevice *device) 中 MessageQ_open() 函数返回失败导致的,
源码文件为 opencl/host/src/core/dsp/tal/mbox_impl_msgq.cpp
函数说明:http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tirtos/2_14_03_28/exports/tirtos_full_2_14_03_28/products/ipc_3_30_01_12/docs/doxygen/html/_message_q_8h.html#af9e6bd0c1dbb236eb4a618211bf15325
MessageQ_open()实际返回值:MessageQ_E_NOTFOUND  
n_opened_dspQues 值为 0

所以出现该错误,是否认为DSP1没有正常启动??? 但是从启动信息的最后一行来看,dsp是运行了的,但是MessageQ_open又返回找不到名字对应的设备,这和打印信息矛盾。
代码段如下:

报错信息说明:

启动opencldsp固件信息:
  1. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  2. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  3. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  4. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  5. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  6. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  7. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc# echo 40800000.dsp>bind   
  8. [ 1083.081648] omap-rproc 40800000.dsp: assigned reserved memory node dsp1_cma@9c000000
  9. [ 1083.090633] remoteproc remoteproc0: 40800000.dsp is available
  10. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc# [ 1083.143753] remoteproc remoteproc0: powering up 40800000.dsp
  11. [ 1083.149459] remoteproc remoteproc0: Booting fw image dra7-dsp1-fw.xe66, size 21891524
  12. [ 1083.166939] omap_hwmod: mmu0_dsp1: _wait_target_disable failed
  13. [ 1083.172836] omap-iommu 40d01000.mmu: 40d01000.mmu: version 3.0
  14. [ 1083.178794] omap-iommu 40d02000.mmu: 40d02000.mmu: version 3.0
  15. [ 1083.198864] prueth pruss1_eth: port 1: using random MAC addr: 8a:9c:18:3f:d3:b7
  16. [ 1083.223216] virtio_rpmsg_bus virtio0: rpmsg host is online
  17. [ 1083.228744] ------------[ cut here ]------------
  18. [ 1083.228758] WARNING: CPU: 0 PID: 693 at drivers/bus/omap_l3_noc.c:147 l3_interrupt_handler+0x25c/0x36c
  19. [ 1083.228763] 44000000.ocp:L3 Custom Error: MASTER DSP1_MDMA TARGET DMM_P1 (Idle): Data Access in User mode during Functional access
  20. [ 1083.228819] Modules linked in: rpmsg_proto prueth pru_rproc bc_example(O) pruss pruss_intc pvrsrvkm(O) omap_sham omap_aes_driver pruss_soc_bus omap_wdt ti_vip ti_vpe ti_sc ti_csc ti_vpdma omap_des des_generic crypto_engine omap_remoteproc virtio_rpmsg_bus rpmsg_core remoteproc sch_fq_codel cryptodev(O) cmemk(O)
  21. [ 1083.228827] CPU: 0 PID: 693 Comm: kworker/0:0 Tainted: G        W  O    4.9.28 #103
  22. [ 1083.228830] Hardware name: Generic DRA72X (Flattened Device Tree)
  23. [ 1083.228840] Workqueue: events request_firmware_work_func
  24. [ 1083.228844] Backtrace:
  25. [ 1083.228857] [<c020b35c>] (dump_backtrace) from [<c020b618>] (show_stack+0x18/0x1c)
  26. [ 1083.228864]  r7:00000009 r6:600f0193 r5:00000000 r4:c1022110
  27. [ 1083.228872] [<c020b600>] (show_stack) from [<c04ca3a0>] (dump_stack+0x8c/0xa0)
  28. [ 1083.228880] [<c04ca314>] (dump_stack) from [<c022e090>] (__warn+0xec/0x104)
  29. [ 1083.228886]  r7:00000009 r6:c0bd689c r5:00000000 r4:da9357f0
  30. [ 1083.228892] [<c022dfa4>] (__warn) from [<c022e0e8>] (warn_slowpath_fmt+0x40/0x48)
  31. [ 1083.228899]  r9:00000001 r8:db5bb8d0 r7:c0bd6b90 r6:00000000 r5:c0bd67c8 r4:c0bd686c
  32. [ 1083.228906] [<c022e0ac>] (warn_slowpath_fmt) from [<c04fa250>] (l3_interrupt_handler+0x25c/0x36c)
  33. [ 1083.228909]  r3:db5bb740 r2:c0bd686c
  34. [ 1083.228912]  r4:80080003
  35. [ 1083.228921] [<c04f9ff4>] (l3_interrupt_handler) from [<c027f698>] (__handle_irq_event_percpu+0xb4/0x138)
  36. [ 1083.228927]  r10:c1019ffd r9:db5b8b00 r8:00000017 r7:da935914 r6:00000000 r5:db5b8b00
  37. [ 1083.228930]  r4:db5bbc40
  38. [ 1083.228937] [<c027f5e4>] (__handle_irq_event_percpu) from [<c027f740>] (handle_irq_event_percpu+0x24/0x60)
  39. [ 1083.228943]  r10:0000b164 r9:da934000 r8:db406000 r7:00000000 r6:c1008c0c r5:db5b8b00
  40. [ 1083.228945]  r4:db5b8b00
  41. [ 1083.228952] [<c027f71c>] (handle_irq_event_percpu) from [<c027f7bc>] (handle_irq_event+0x40/0x64)
  42. [ 1083.228956]  r5:db5b8b60 r4:db5b8b00
  43. [ 1083.228963] [<c027f77c>] (handle_irq_event) from [<c0282e50>] (handle_fasteoi_irq+0xc0/0x190)
  44. [ 1083.228968]  r7:00000000 r6:c1008c0c r5:db5b8b60 r4:db5b8b00
  45. [ 1083.228975] [<c0282d90>] (handle_fasteoi_irq) from [<c027e8c0>] (generic_handle_irq+0x2c/0x3c)
  46. [ 1083.228980]  r7:00000000 r6:00000000 r5:00000017 r4:c0e5fd88
  47. [ 1083.228987] [<c027e894>] (generic_handle_irq) from [<c027ee48>] (__handle_domain_irq+0x64/0xbc)
  48. ............
  49. [ 1083.229305]  r7:00000000 r6:d0c295b4 r5:d0c295ac r4:d0c29400
  50. [ 1083.229332] [<bf0272dc>] (rproc_vdev_do_probe [remoteproc]) from [<bf028fa4>] (__rproc_boot+0x4bc/0x5bc [remoteproc])
  51. [ 1083.229359] [<bf028ae8>] (__rproc_boot [remoteproc]) from [<bf0290d0>] (rproc_auto_boot_callback+0x18/0x24 [remoteproc])
  52. [ 1083.229365]  r10:da955e00 r9:00000000 r8:dbad6d00 r7:00000000 r6:dbad35c0 r5:da955e00
  53. [ 1083.229367]  r4:cd90af40
  54. [ 1083.229385] [<bf0290b8>] (rproc_auto_boot_callback [remoteproc]) from [<c063a0d8>] (request_firmware_work_func+0x44/0x6c)
  55. [ 1083.229388]  r5:da955e00 r4:cd90a940
  56. [ 1083.229395] [<c063a094>] (request_firmware_work_func) from [<c024499c>] (process_one_work+0x1dc/0x3f8)
  57. [ 1083.229398]  r4:cd90a940
  58. [ 1083.229403] [<c02447c0>] (process_one_work) from [<c02455f4>] (worker_thread+0x58/0x574)
  59. [ 1083.229409]  r10:da955e00 r9:da934000 r8:dbad35d8 r7:c1002d00 r6:00000008 r5:da955e18
  60. [ 1083.229411]  r4:dbad35c0
  61. [ 1083.229419] [<c024559c>] (worker_thread) from [<c024a92c>] (kthread+0x100/0x118)
  62. [ 1083.229424]  r10:00000000 r9:00000000 r8:c024559c r7:da955e00 r6:da934000 r5:d0c05cc0
  63. [ 1083.229426]  r4:00000000
  64. [ 1083.229435] [<c024a82c>] (kthread) from [<c0207d48>] (ret_from_fork+0x14/0x2c)
  65. [ 1083.229440]  r8:00000000 r7:00000000 r6:00000000 r5:c024a82c r4:d0c05cc0
  66. [ 1083.229443] ---[ end trace 0068412fb6ecefed ]---
  67. [ 1083.911791] remoteproc remoteproc0: registered virtio0 (type 7)
  68. [ 1083.917739] remoteproc remoteproc0: remote processor 40800000.dsp is now up
  69. [ 1083.939462] prueth pruss1_eth: port 1: using random MAC addr: 86:09:72:9a:69:9a
复制代码









本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

1

主题

8

帖子

1037

积分

金牌会员

Rank: 6Rank: 6

积分
1037
 楼主| 发表于 2019-7-15 14:55:55 | 显示全部楼层
代码段图片方框画错了,代码段图片以这个为准:
返回的是MessageQ_E_NOTFOUND

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

您好, 由于我修改后测试是正常的,您再确认一下以下细节 1.DSP核正在运行的固件是否为OpenCL固件; 2./etc/ti-mctd/ti_mctd_config.json 文件修改后是否保存成功 [attachimg]5346[/attachimg]  详情 回复 发表于 2019-7-15 15:12
回复 支持 反对

使用道具 举报

1

主题

8

帖子

1037

积分

金牌会员

Rank: 6Rank: 6

积分
1037
 楼主| 发表于 2019-7-15 15:05:13 | 显示全部楼层
/tmp/LAD/lad.txt日志如下:
  1. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  2. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  3. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  4. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc# cat /tmp/LAD/lad.txt
  5. [0.915749]
  6. Initializing LAD... [0.916046] NameServer_setup: entered, refCount=0
  7. [0.916076] NameServer_setup: creating listener thread
  8. [0.916222] NameServer_setup: exiting, refCount=1
  9. [0.916344] NameServer_create(): 'GateMP'
  10. [0.916369]
  11.     opening FIFO: /tmp/LAD/LADCMDS
  12. [0.921689] listener_cb: Entered Listener thread.
  13. [0.921713] NameServer: waiting for unblockFd: 0, and socks: maxfd: 0
  14. [44.592799] Retrieving command...
  15. [44.593062]
  16. LAD_CONNECT:
  17. [44.593076]     client FIFO name = /tmp/LAD/688
  18. [44.593085]     client PID = 688
  19. [44.593092]     assigned client handle = 0
  20. [44.593131]     FIFO /tmp/LAD/688 created
  21. [44.593222]     FIFO /tmp/LAD/688 opened for writing
  22. [44.593260]     sent response
  23. [44.593268] DONE
  24. [44.593275] Retrieving command...
  25. [44.593364] Sending response...
  26. [44.593381] Retrieving command...
  27. [44.593438] LAD_MULTIPROC_GETCONFIG: calling MultiProc_getConfig()...
  28. [44.593453] MultiProc_getConfig() - 5 procs
  29. [44.593461] # processors in cluster: 5
  30. [44.593468] cluster baseId: 0
  31. [44.593475]     ProcId 0 - "HOST"
  32. [44.593482]     ProcId 1 - "IPU2"
  33. [44.593489]     ProcId 2 - "IPU1"
  34. [44.593495]     ProcId 3 - "DSP2"
  35. [44.593502]     ProcId 4 - "DSP1"
  36. [44.593509]     status = 0
  37. [44.593515] DONE
  38. [44.593521] Sending response...
  39. [44.593531] Retrieving command...
  40. [44.593599] LAD_NAMESERVER_SETUP: calling NameServer_setup()...
  41. [44.593611] NameServer_setup: entered, refCount=1
  42. [44.593618] NameServer_setup: already setup
  43. [44.593624] NameServer_setup: exiting, refCount=2
  44. [44.593632]     status = 1
  45. [44.593638] DONE
  46. [44.593644] Sending response...
  47. [44.593655] Retrieving command...
  48. [44.593705] LAD_MESSAGEQ_GETCONFIG: calling MessageQ_getConfig()...
  49. [44.593716]     status = 0
  50. [44.593723] DONE
  51. [44.593729] Sending response...
  52. [44.593739] Retrieving command...
  53. [44.593784] LAD_MESSAGEQ_SETUP: calling MessageQ_setup()...
  54. [44.593795] MessageQ_setup: entered, refCount=0
  55. [44.593803] NameServer_create(): 'MessageQ'
  56. [44.593815] MessageQ_setup: exiting, refCount=1
  57. [44.593822]     status = 0
  58. [44.593829] DONE
  59. [44.593835] Sending response...
  60. [44.593845] Retrieving command...
  61. [44.594168] NameServer_attach: --> procId=1, refCount=0
  62. [44.613722] NameServer_attach: created send socket: 6, procId 1
  63. [44.613786] NameServer_attach: connect failed: procId=1, errno=22 (Invalid argument)
  64. [44.613815]     closing send socket: 6
  65. [44.613841] NameServer_attach: <-- refCount=0, status=-1
  66. [44.613853] Sending response...
  67. [44.613885] Retrieving command...
  68. [44.613968] NameServer_attach: --> procId=2, refCount=0
  69. [44.613996] NameServer_attach: created send socket: 6, procId 2
  70. [44.614010] NameServer_attach: connect failed: procId=2, errno=22 (Invalid argument)
  71. [44.614021]     closing send socket: 6
  72. [44.614042] NameServer_attach: <-- refCount=0, status=-1
  73. [44.614051] Sending response...
  74. [44.614071] Retrieving command...
  75. [44.614122] NameServer_attach: --> procId=3, refCount=0
  76. [44.614143] NameServer_attach: created send socket: 6, procId 3
  77. [44.614155] NameServer_attach: connect failed: procId=3, errno=22 (Invalid argument)
  78. [44.614166]     closing send socket: 6
  79. [44.614185] NameServer_attach: <-- refCount=0, status=-1
  80. [44.614194] Sending response...
  81. [44.614211] Retrieving command...
  82. [44.614261] NameServer_attach: --> procId=4, refCount=0
  83. [44.614281] NameServer_attach: created send socket: 6, procId 4
  84. [44.614294] NameServer_attach: connect failed: procId=4, errno=22 (Invalid argument)
  85. [44.614304]     closing send socket: 6
  86. [44.614322] NameServer_attach: <-- refCount=0, status=-1
  87. [44.614330] Sending response...
  88. [44.614349] Retrieving command...
  89. [44.614413] LAD_GATEMP_ISSETUP: calling GateMP_isSetup()...
  90. [44.614425]     status = 0
  91. [44.614432] DONE
  92. [44.614438] Sending response...
  93. [44.614454] Retrieving command...
  94. [44.614512] LAD_GATEHWSPINLOCK_GETCONFIG: calling GateHWSpinlock_getConfig()...
  95. [44.614523] GateHWSpinlock_getConfig()  baseAddr = 0x4a0f6000
  96. [44.614531]     size = 0x1000
  97.         offset = 0x800
  98. [44.614538]     status = 0
  99. [44.614544] DONE
  100. [44.614550] Sending response...
  101. [44.614565] Retrieving command...
  102. [44.614767] LAD_GATEMP_START: calling GateMP_start()...
  103. [44.614780]     status = 0
  104. [44.614788] DONE
  105. [44.614887] Sending response...
  106. [44.614912] Retrieving command...
  107. [44.615978] LAD_GATEMP_GETNUMRESOURCES: calling GateMP_getNumResources()...
  108. [44.615993]     status = 0
  109. [44.616001] DONE
  110. [44.616008] Sending response...
  111. [44.616025] Retrieving command...
  112. [44.616104] LAD_NAMESERVER_GET: calling NameServer_get(0x32238, '_GateMP_TI_dGate'[44.616116] )...
  113. [44.616127] NameServer_getLocal: entry key: '_GateMP_TI_dGate' not found!
  114. [44.616136] NameServer_getRemote: no socket connection to processor 1
  115. [44.616143] NameServer_getRemote: no socket connection to processor 2
  116. [44.616150] NameServer_getRemote: no socket connection to processor 3
  117. [44.616157] NameServer_getRemote: no socket connection to processor 4
  118. [44.616164]     value = 0x10
  119. [44.616170]     status = -5
  120. [44.616177] DONE
  121. [44.616183] Sending response...
  122. [44.616201] Retrieving command...
  123. [44.616296] LAD_MESSAGEQ_CREATE: calling MessageQ_create(0x2f8a4, 0x2f8c4)...
  124. [44.616308] MessageQ_create: creating 'OCL:MsgQ:688'
  125. [44.616318] MessageQ_create: returning obj=0x34660, qid=0x80
  126. [44.616326]     status = 0
  127. [44.616332] DONE
  128. [44.616339] Sending response...
  129. [44.616355] Retrieving command...
  130. [44.616415] LAD_MESSAGEQ_ANNOUNCE: calling MessageQ_announce(0x2f8a4, 0x34660)...
  131. [44.616426] MessageQ_announce: announcing 0x34660
  132. [44.616438] NameServer_add: Entered key: 'OCL:MsgQ:688', data: 0x80
  133. [44.616446]     status = 0
  134. [44.616453] DONE
  135. [44.616459] Sending response...
  136. [44.616475] Retrieving command...
  137. [44.616539] LAD_NAMESERVER_GETUINT32: calling NameServer_getUInt32(0x34578, 'OCL:DSP1:MsgQ')...
  138. [44.616552] NameServer_getLocal: entry key: 'OCL:DSP1:MsgQ' not found!
  139. [44.616560] NameServer_getRemote: no socket connection to processor 1
  140. [44.616567] NameServer_getRemote: no socket connection to processor 2
  141. [44.616574] NameServer_getRemote: no socket connection to processor 3
  142. [44.616581] NameServer_getRemote: no socket connection to processor 4
  143. [44.616588]     value = 0x80
  144. [44.616594]     status = -5
  145. [44.616601] DONE
  146. [44.616607] Sending response...
  147. [44.616622] Retrieving command...
  148. [44.633897]    EOF detected on FIFO, closing FIFO: /tmp/LAD/LADCMDS
  149. [44.633944]
  150.     opening FIFO: /tmp/LAD/LADCMDS
  151. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  152. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
  153. root@AM57xx-Tronlong:/sys/bus/platform/drivers/omap-rproc#
复制代码


回复 支持 反对

使用道具 举报

36

主题

526

帖子

7568

积分

创龙

Rank: 8Rank: 8

积分
7568
发表于 2019-7-15 15:12:03 | 显示全部楼层
qq2925609791 发表于 2019-7-15 14:55
代码段图片方框画错了,代码段图片以这个为准:
返回的是MessageQ_E_NOTFOUND

您好,
  由于我修改后测试是正常的,您再确认一下以下细节
1.DSP核正在运行的固件是否为OpenCL固件;
2./etc/ti-mctd/ti_mctd_config.json 文件修改后是否保存成功



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

1

主题

8

帖子

1037

积分

金牌会员

Rank: 6Rank: 6

积分
1037
 楼主| 发表于 2019-7-15 15:41:08 | 显示全部楼层
确认是改对了的,我们的RAM位宽是16bit的,板子上的RAM是32bit的。请问位宽为16bit的RAM配置,DSP相关RAM位宽配置在哪里配置?



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

36

主题

526

帖子

7568

积分

创龙

Rank: 8Rank: 8

积分
7568
发表于 2019-7-15 17:53:55 | 显示全部楼层
您好,
  1.建议您基于我司核心板测试此案例。我司发布的内核版本是Linux-RT-4.9.65

2.建议先解决OpenCL DSP1问题,不然DSP message无法传输。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-3-29 01:31 , Processed in 0.043818 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表