测试yolov5_demo时遇到的,好像是rga的问题

我把官方yolov5的demo输入改成了rtsp视频流,想测试多路的性能。一共打开了8路相机,开始是正常的,运行了一段时间后开始提示:RgaBlit(1387) RGA_BLIT fail: Invalid argument,我重启了板卡,现在只打开一路相机,运行还是报这个,请问这是什么情况?

新发现了个问题,之前是远程操作的板子。刚刚直接板子接显示器发现,一直在登录界面循环,没法进桌面了。

麻烦刷最新固件验证

目前版本是 v0.0.1c

板蓝根 发表于 2022-4-14 15:39
目前版本是 v0.0.1c

是最新的。ITX-3588J_Ubuntu20.04-Gnome-r211_v0.0.1c_220402.img

板蓝根 发表于 2022-4-14 15:39
目前版本是 v0.0.1c

你好。我重新刷了固件。 还是会出现这个问题。请问这是正常的吗?
This output the user patamaters when rga call blit fail
RgaBlit(1387) RGA_BLIT fail: Invalid argument
RgaBlit(1388) RGA_BLIT fail: Invalid argument
fd-vir-phy-hnd-format[20, (nil), (nil), (nil), 0]
rect[0, 0, 704, 576, 704, 576, 10, 0]
f-blend-size-rotation-col-log-mmu[0, 0, 0, 0, 0, 0, 1]
fd-vir-phy-hnd-format[0, 0x557fc4fbd0, (nil), (nil), 0]
rect[0, 0, 704, 576, 704, 576, 11, 0]
f-blend-size-rotation-col-log-mmu[0, 0, 0, 0, 0, 0, 1]

{:4_213:}有没有大佬来帮帮我啊

rga库有问题,我这边也遇到了,不知道如何解决

liushuan 发表于 2022-4-20 14:27
rga库有问题,我这边也遇到了,不知道如何解决

我现在擦除flash,重新刷机。这个报错就消失了。但是也是概率性的,有时候刷完还会报。 这个问题我这边很容易复现。太难受了。 总不能出现一次就刷机吧。官方也没动静。帖子,邮件都不回复。

mayday0208 发表于 2022-4-21 09:03
我现在擦除flash,重新刷机。这个报错就消失了。但是也是概率性的,有时候刷完还会报。 这个问题我这边 …

请教一下,你读取rtsp流的代码怎么实现的,可以参考一下么?

街角「咖啡店」 发表于 2022-5-6 18:40
请教一下,你读取rtsp流的代码怎么实现的,可以参考一下么?

opencv+gstreamer

mayday0208 发表于 2022-4-21 09:03
我现在擦除flash,重新刷机。这个报错就消失了。但是也是概率性的,有时候刷完还会报。 这个问题我这边 …

刷最新的固件还有rga报错的问题吗?

799959745 发表于 2022-5-18 17:32
刷最新的固件还有rga报错的问题吗?

这么说吧,刷机有一定概率不再报这个错。我这边1-5次正常的情况都有。
而且,这个错误很容易复现。 {:4_203:}板子现在是没在用了。等下个固件更新了再试试吧。

3588 上有两个模块,一个 rga2 一个 rga3 ,rga2 只支持 32位寻址,也就是 4g以上的 ddr 有可能申请内存的时候出错,你可以尝试用 im2d 的 imconfig 接口指定 rga3 来进行加速

板蓝根 发表于 2022-5-19 09:08
3588 上有两个模块,一个 rga2 一个 rga3 ,rga2 只支持 32位寻址,也就是 4g以上的 ddr 有可能申请内存的 …

可以给个指定rga3的demo吗

接口是同一套接口,不过有旧接口和新接口之分,只有新接口才支持 imconfig 指定 rga 核心加速,代码路径 external/linux-rga/samples/im2d_api_demo im2d 就是新接口,文档,external/linux-rga/docs

板蓝根 发表于 2022-5-20 11:23
接口是同一套接口,不过有旧接口和新接口之分,只有新接口才支持 imconfig 指定 rga 核心加速,代码路径 ex …

你好。加了IM_STATUS imconfig(IM_CONFIG_NAME IM_CHECK_CONFIG,uint64_t IM_SCHEDULER_RGA3_DEFAULT);,并且尝试了其他的几个参数,仍旧会报之前的错

板蓝根 发表于 2022-5-20 11:23
接口是同一套接口,不过有旧接口和新接口之分,只有新接口才支持 imconfig 指定 rga 核心加速,代码路径 ex …

今天rga我换了1.8的。 不报错了。。用了一会又开始了,重启也没用{:4_155:}

本帖最后由 凸凸娃 于 2022-8-25 18:02 编辑

mark

我在rk3588上调试rga填充图像,调试代码来自https://github.com/airockchip/librga,
在rgaImDemo.cpp中加入:
STATUS = imconfig(IM_CONFIG_SCHEDULER_CORE, IM_SCHEDULER_RGA3_CORE0);
尝试启动RGA3,结果报错:
//=======================================================================
Start selecting mode 0
im2d fill ..
fill red …
MODE = 9
[main][289]src_buf addr: 0x7f7ff9d010 dst_buf addr: 0x7f7fc18010
open file
open file
[main][306]src_buf addr: 0x7f7ff9d010 dst_buf addr: 0x7f7fc18010
rga_api version 1.8.1_[0]
651, imconfig return:Run successfully
653, imconfig return:Run successfully
RgaCollorFill(1717) RGA_COLORFILL fail: Invalid argument
RgaCollorFill(1718) RGA_COLORFILL fail: Invalid argument
srect[x,y,w,h] = [0, 0, 0, 0] src[w,h,ws,hs] = [0, 0, 0, 0]

drect[x,y,w,h] = [100, 100, 300, 300] dst[w,h,ws,hs] = [300, 300, 1280, 720]

usage[0x280000]
filling … cost time 138 us, Fatal error: Failed to call RockChipRga interface, query log to find the cause of failure.
open /usr/data/out0w1280-h720-rgba8888.bin and write ok
//=======================================================================
以上是在16GB的开发板上的调试结果,在4GB的开发板上可以正确执行。
查阅文档可知:
**A1.8:**由于目前RGA1/RGA2的MMU仅支持最大32位的物理地址,所以当在搭载4G以上DDR的设备中,传给RGA大于4G内存空间的buffer时,RGA驱动会通过dma接口将高位地址的内存里的数据拷贝至swiotlb预留的低位内存上,并返回对应的地址以供RGA读写,RGA工作结束后再通过dma将结果拷贝至原本的高位目标地址上,因此增加了CPU的介入,导致librga整体的工作时间严重增加。对于这种仅搭载RGA2/RGA1,并且设备DDR大于4G的情况,建议调用RGA时使用低于4G空间的内存,保证RGA的效率。

问题:
在rk3588j 16GB的板卡上如何正确使用RGA3?