On our product, using a imx6dp Soc with a 2G DDR3, we are experiencing an issue when we try to play cameras and our graphics application is running.
Below are the log we have:
[ 369.045751] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
[ 369.062395] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
[ 369.069639] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_5 = 0x08800000
[ 369.079093] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
[ 369.079129] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_5 = 0x08800000
[ 369.095723] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
[ 369.095762] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_5 = 0x08800000
[ 369.112375] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
[ 369.112424] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_5 = 0x08800000
[ 369.129037] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
[ 369.129085] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_5 = 0x08800000
[ 369.145703] imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x00080000
To reproduce it, we used the qt5 demo app cinematicexperience and the app mxc_v4l2_tvin.out for playing camera.
$: /usr/share/cinematicexperience-1.0/Qt5_CinematicExperience &
$: mxc_v4l2_tvin.out -ol 708 -ot 218 -ow 502 -oh 377 -d 2 -x 0 -m 1 -g2d &
$: mxc_v4l2_tvin.out -ol 708 -ot 605 -ow 502 -oh 377 -d 2 -x 1 -m 1 -g2d &
On the IPU1, we have an ldb split-mode connection (1920 x 720), and on the IPU2 we have a HDMI (1920 x 1080).
We are using the EGLFS platform plugins but we can reproduce it with the wayland plugin as well with the glmark2-es2-wayland application.
Our linux image is based on meta-fsl-release-bsp, warrior branch
We also use meta-boot2qt warrior, to have QT5.14.2 version
For the camera, we have an isl79987 chip (to convert anlaog to mipi_csi2), and a nxp bsp patch for using 4 channel on mipi (from
In the imx6 documentation, we founded :
IPU_INT_STAT_10 = 0x00080000 is a result of an error during access to synchronous display via DI0
IPU_INT_STAT_5 = 0x08800000 is a result of new frame before end-of-frame in the DMA channel 23 and 27.
This errors appear when we are in rotation landscape (default rotation) on the HDMI display and not in portrait.
If we play the cameras with the ISL resolution, we do not have the error. The issued happend only when we are running camera with upscaling or downscaling.
According to imx6 documentation, we add dmfc=3 to the bootargs (as we have 2 display, one on each ipu).
Any ideas on where we could investigate?
Is there some tools to profile IPU usage?
Hello,
If issue appears only for up to 1080 resolution, this may point to processor
internal buses bandwidth limitation, one can try to decrease fps or change
IPU QoS with i.MX6Q IOMUXC_GPR6, also check:
https://community.nxp.com/t5/i-MX-Processors/About-MMDC-Profiling-Tool-for-i-MX6/m-p/664120
For camera capture and conversion examples one can look at below links which
may be helpful:
ipu-examples release notes - v0.1
mxc_v4l2_test\test - imx-test - i.MX Driver Test Application Software
sect.7.3.15 Video conversion attached Linux Guide from Linux L4.14.98_2.0.0 Documentation
Regards