i.MX8QM dpu loopback to isi.

Document created by Bert Xu Employee on Jun 12, 2019Last modified by Gnar Fang on Jan 9, 2020
Version 4Show Document
  • View in full screen mode

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.


DPU, ISI block diagram:

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