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.

Linux: How to create a omap_gem_bo from CMA and can be used by IPU*?

Tool/software: Linux

Hello,

There is an application do video encoding using gstreamer, gstducati

I want to create a contiguous memory via omap_gem_bo which can be accessed via dma in other ipu cores:

1) I modify omap_gem_new to allocate buffer via dma_alloc_writecombine, and modify ipu's customized resource table making the address can be accessed.

    The application seems work, but the encoded output video was wrong, it seems taking wrong data encoded. Why, what's wrong with this way?

2) The original way works fine, however, the buffer allocated by omap_gem_new was not contiguous, so, it can't be filled at once by dma.

   If so, how to make the memory contiguous? this method use shm, allocate page via alloc_page one by one.

Any hints will be very appreciated, thanks.