On imx8qm there are two DPUs(display process unit) and one ISI(image subsystem interface), ISI has 5 inputs and two of them are from DPU0 and DPU1.
This document demonstrates on how to loopback DPU1 outputs to ISI. Note that only mipi dsi0 of dpu0 and lvds1 of dpu1 can be loopbacked to isi.
Platform: imx8qm b0 mek
OS: yocto 4.14.78 ga
hardware connection: imx8qm lvds1 ====> it6263 cable =====> hdmi display.
isi has 8 pipelines which can be assigned to any of the 5 inputs, this doc takes the 5th pipeline to sink the dpu1 input. So you will need to configure the isi_4( start from 0) source in the dts and write a simple v4l2 subdev for capture testing, the default isi_4 device will be /dev/video4.
configure both framegen0 of dpu1 and lvds1's link to pixellink 3.
write a v4l2 userspace program to capture from /dev/video4 device, take this vulkan-capture as an example. Note that Vulkan-capture is rendered by vulkan api, you can also take opengl es for rendering.
See the atttachments for details.
2019/11/12 update patches.
2019/12/19 add patch.
Support connect real display to DC1-LVDS1