I am using i.MX Yocto Thud (kernel imx_4.19.35_1.0.0) on an iMX6 Dual processor and after playing several hundred videos, only the first frame of videos will be played and then the video playback freezes. The system is stable and I can abort video play and try again (it still fails) until the system is rebooted. VPU and IPU interrupts are still getting triggered at the start of playback and then stop when playback freezes.
The issue is not CODEC dependent (h.264 and VP8 both behave the same).
Galcore: Galcore version 6.4.0.207593
327680K cma-reserved
imx-sdma 20ec000.sdma: loaded firmware 3.5
I can't find any references to the issue in the forums -- is anyone aware of similar issues or how to debug it?
The following shell script will typically reproduce the failure after several hundred iterations (I've seen from 186 to 457). I don't see any indication of a memory leak and based upon the variance in how many videos it takes, I suspect it is a race condition of some type, but don't know where to look.
n=0while truedogst-play-1.0 --volume 0.25 testpattern-5second.webmn=$((n+1))echo Completed run $ndone
Any ideas of where to look to debug this further?
depends on your description, couldn't tell the issue, could you give more detailed information? did you use nxp board? did you change any source code?did you tested on nxp board with demo image? pls share your test step, let me reproduce this on nxp board
Hi Joan,
Thank you for your reply. This is using a custom SOM based upon the Sabre. I have not changed any of the source code from the i.MX Yocto Thud, but I have copied and modified the device tree (based upon imx6q-sabresd.dts) and kernel configuration to allow booting the custom SOM. I followed i.MX Yocto Project User's Guide, Rev. L4.19.35-1.0.0, 07/2019 for all of these steps.
I have based the MACHINE on imx6qsabresd, so for NXP hardware, this build command is equivalent to what I'm testing:
DISTRO=fsl-imx-fb MACHINE= imx6qsabresd source fsl-setup-release.sh -b build-imx6qd-fbbitbake fsl-image-qt5-validation-imx
Once the system boots, use a short video clip (I used a 5-second video clip) and let me know if you can run this for several thousand iterations:
n=0while truedogst-play-1.0 --volume 0.25 testpattern-5second.webmn=$((n+1))echo Completed run $ndone
Let me know if you have any questions -- I appreciate the help.
Regards,
Eric
refer to the 4.19.35 user guide, we don't use fsl-image-qt5-validation-imx, try to use "imx-image-multimedia" or "imx-image-full"
imx-image-multimedia:Builds an i.MX image with a GUI without any Qt content
imx-image-full:Builds an opensource Qt 5 image with Machine Learning
features. These images are only supported for i.MX SoC
with hardware graphics. They are not supported on the
i.MX 6UltraLite, i.MX 6UltraLiteLite, i.MX 6SLL, and i.MX
7Dual.