Hi NXP.
I'm trying to run RPI-CAM-MIPI on an i.MX93FRDM, but I'm having trouble getting it to work with the latest BSP 6.12.49.
With the BSP6.6.36 image, setting it up according to UM11933 allowed RPI-CAM-MIPI to work without any problems and display video.
However, with BSP6.12.49, even if I follow the same setup procedure and run the same commands, the video does not display.
If you find out the cause of this phenomenon or how to fix it, please let me know.
log:
root@imx93-11x11-lpddr4x-frdm:~# gst-launch-1.0 -v v4l2src device=/dev/video0 ! ""video/x-raw,format=YUY2,width=1280,height=800"" ! queue ! waylandsink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps = video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)800, framerate=(fraction)120/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)800, framerate=(fraction)120/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)800, framerate=(fraction)120/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)800, framerate=(fraction)120/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)800, framerate=(fraction)120/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709
/GstPipeline:pipeline0/GstWaylandSink:waylandsink0.GstPad:sink: caps = video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)800, framerate=(fraction)120/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Failed to allocate required memory.
Additional debug info:
/usr/src/debug/gstreamer1.0-plugins-good/1.26.6.imx/sys/v4l2/gstv4l2src.c(957): gst_v4l2src_decide_allocation (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
Buffer pool activation failed
Execution ended after 0:00:00.017016750
Setting pipeline to NULL ...
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
/usr/src/debug/gstreamer1.0/1.26.6.imx/libs/gst/base/gstbasesrc.c(3187): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Freeing pipeline ...
root@imx93-11x11-lpddr4x-frdm:~#"
Additional information:
UM11933 specifies that ap1302.fw should be placed in /lib/firmware/imx/camera.
However, when I tried the same thing with BPS 6.12.49, I got the following error:
$ dmesg | grep -E 'ap1302|mx8-img-md'
[ 11.642956] ap1302 2-003c: Direct firmware load for ap1302_ar0144_single_fw.bin failed with error -2
[ 11.642979] ap1302 2-003c: Falling back to sysfs fallback for: ap1302_ar0144_single_fw.bin
This error can be avoided by placing ap1302_ar0144_single_fw.bin in /lib/firmware, but this does not resolve the issue of the video not displaying.