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.

mmap() fails in capture application

Hi All

I am using DM6467 davinci EVM to run the sample capture application saUserPtrLoopback.c. I am facing a problem here. During a DQBUF call in the loopback its not returing out of the ioctl call. On debug using kdb i found that in function allocateBuffers() where it is allocating buffer in the kernel space and mapping in user space ie mmap() call the kdb returns the output that address <some address> is out of bound. 

I have no clue why this problem is occuring. And i feel this is the reason that my program stucks in DQBUF ioctl. 

I feel i am right? If no that what could be the possible reason?

Moreover is it possible to use memory map mode to allocate buffers rather than user pointer mode for hd 1280x720?

Somebody please help to debug the issue asap.

Thanks

Abhishek 

  • Hi Abhishek,

     

    I think allocateBuffers is not able to allocate 6 buffers of 1080i size. Can you set number of buffers to 0 for capture and display in the bootargs and try to run this application?

     

    Can you try with the saMmapLoopback.c application? This application uses memory mapped buffers for the capture and display. it copies complete buffer from capture to display, so you will see some frame drops on the output.

     

    Thanks,

    Brijesh Jadav