由于我们的算法效率比较低,需要在A8中将yuv数据缓存起来,再将数据发给DSP处理,目前在A8中获取yuv的结构体是VIDEO_FRAMEBUF_S 用的是hyAddr
[0][0] 物理地址映射后将数据拷贝到缓存中,和demo_vcap_venc_vids_ipc_frames_exch.c用法相仿。但是发现拷贝时cpu接近100%,速度也很慢。想直接使用
虚拟地址拷贝,发现虚拟地址无法使用,link中的exportOnlyPhyAddr 置为false。
请假一下,是否有更好的流程或者优化的方法。
Shine:
请问有没有使能cache?
jun xu7:
回复 Shine:
你好 ,请问8148 cache相关的配置在哪里,如何使能?
Chris Meng:
回复 jun xu7:
你好,
是否有尝试过EDMA copy?
jun xu7:
回复 Chris Meng:
你好 ,目前只想优化A8里面拷贝yuv数据的效率,EDMA可以在ARM里面运行并代替memcpy拷贝数据吗?
Chris Meng:
回复 jun xu7:
你好,
Linux下有EDMA相关驱动,例子你可以参考:
http://processors.wiki.ti.com/index.php/TI81XX_PSP_EDMA_Driver_User_Guide#Sample_test_application_for_EDMA_Driver
jun xu7:
回复 Chris Meng:
你好:
我是在应用下面使用memcyp拷贝图像的,你们提供的例子是内核中的,也没有接口可以调用,我是需要按照你这个例子写一个上层可以调用的接口吗 ?非常感谢
jun xu7:
回复 Chris Meng:
Chris Meng:
可以说下我们这种情况应该怎么搞吗?我们应用获取的yuv数据,你的例子是内核中操作的。