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.

Passing v4l2 buffer to DSP



Hello

I'm using EZSDK 5.04.00.11 and C6Run 0.98.03.03 on DM8168. I want to do some image processing of frames, which capture from camera, on DSP core. I modify saLoopBack demo program by adding in main loop function process() call, which is running on DSP. While executing program on DM8168 I got an error:

./process.gpp_stub.c: C6RUN_SHAREDMEM_lookupBuffer() failed for pointer 0x4030B000

Apparently it happens because v4l2 buffer is mmaped from the FB device driver while according to C6RunLib Documentation buffers must be allocated using malloc or C6RUN_MEM_malloc. If I copy buffer using memcpy to my own buffer which is allocated by malloc, application works ok, but framerate is very low.

How can I pass v4l2 buffer to DSP without perfomance reduction?

Regards,

Sergey.