I am developing a low latency video capture-video display application on IMX8 platform. In order to use the same buffers in video capture and video display components, I need GEM support. Is it already there? I dint find the gem object create APIs in imx_drm.h in the BSP.
PS: fingers crossed, hope its supported or there is an alternative.
First of all when you refer to IMX8 platform, which version of BSP are you using?.
Do you refer to GSM as Graphics Execution Manager? If so, we don't support it.
What are you planning to capture and render using our display controller. Are you planning to capture the camera output from Via MIPI CSI and render it on display?
BTW, if you are using v4l2src camera plugin, then you can utilize dma-buf, provided you use the latest BSP versions like 5.4.47_2.2.0. The Wayland sink plugin that controls the display, by reading the data directly from the dma-buf and renders it on the Display (zero copy).
Thanks for the reply!
My end usecase and the setup Im using is as follows:
1) Aim: Low latency (zero copy) camera preview.
2) Setup: Imx8qxp with Linux BSP 4.19.35_1_1_0.
Camera (1920x1440 RGB) --> MIPICSI2-->V4l2 capture-->DRM/KMS-->LVDS OUT-->Display 1280x800.
Can you please let us know can be done with our current BSP version to support zero copy.
PS: I have worked with other platform where I allocate GEM buffers and give this buffers to v2l4 capture and share the same with display.
Since GEM is not supported on IMX platform. What is the alternative (for BSP 4.19.35_1_1_0). Can you share us the sample application which uses DMA buf?