I config a GMSL camera in Thor, the video node can be found in /dev, but when I try to get video, it report error as follow:
car@ubuntu:~$ gst-launch-1.0 v4l2src device=/dev/video11 ! ‘video/x-raw,format=UYVY,width=1920,height=1080’ ! videoconvert ! fpsdisplaysink video-sink=xvimagesink e
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Pipeline is PREROLLED …
Setting pipeline to PLAYING …
New clock: GstSystemClock
WARNING: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Signal lost
Additional debug info:
../sys/v4l2/gstv4l2src.c(693): gst_v4l2src_query_preferred_size (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
No input source was detected - video frames invalid
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3177): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.002394991
Setting pipeline to NULL …
Freeing pipeline …
“
and I find some error report when kernel startup, log as follow, is it the matter?:
“[ 13.935260] tegra-camrtc-capture-vi tegra-capture-vi: subdev imx390 9-0021 bound
[ 13.953401] tegra-nvcsi 8181200000.host1x:nvcsi@8188000000: Failed to create device link (0x180) with 9-0021
“
I just make modification base on tegra264-p3971-camera-p3762-a00-overlay.dts .
There is no much error report in Orin at JP6.
The HW is Thor custom board, SW is JP7.0
Could you pls. provide any suggestion, many thanks.
is this porting issue? did you validate this sensor driver on JP-6/Orin?
is the camera device registration complete to setup a video device node to linux kernel?
do you have /dev/video0 created? can you check the sensor capability with.. $ v4l2-ctl -d /dev/video0 --list-formats-ext?
please try with v4l2 IOCTL to test camera stream,
for instance, v4l2-ctl -d /dev/video0 --set-fmt-video=width=3840,height=2160,pixelformat=RG10 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=100
let me give you an example,
it shall looks like below for camera stream, it must be one pair of CHANSEL_PXL_SOF/CHANSEL_PXL_EOF to indicate a frame has detected by VI engine.
afterwards, it’s ATOMP_FRAME_DONE to indicate it’s complete writing a frame to memory.
Here is the log. it seem no VI engine log you mentioned.
Can we confirm data has been received in CSI? I have checked the 96712 register, there are MIPI data send to Thor. rtcpu.txt (44.8 KB)
there’s even no frame start from VI notify, it’s likely that VI engine did not received a frame packet.
please see-also Thor’s p3971 base camera device tree. $public_sources/kernel_src/hardware/nvidia/t264/nv-public/overlay/tegra264-p3971-camera-modules.dtsi,
it has ar0234 camera device tree ("tegra264-camera-ar0234-a00.dtsi") included by default, its using CSI-A and CSI-B.
please check whether there’re conflicts with yours, or, you may exclude that for verification.
besides.. please double check the board schematic for the i2c bus, for instance,i2c9: i2c@810c6a0000.
and.. here’s mismatch between your device tree and HW topology,
for instance, it’s not using i2c mux.
may I know what’s your pipeline to enable preview stream?
you may refer to $ gst-inspect-1.0 v4l2src, you should use the YUY2 formats for your YUYV pixel format.
BTW, your capture results looks like an interlaced stream, please try to configure as progressive video for confirmation.
Hi,Jerry:
Do you mean the preview initialize process?
I config the serializer/deserializer by script, there should be image stream on MIPI, and then use v4l2-ctl grab image.
The interleave happened when I start two camera streams. The image is normal if I only start one stream.
I’m not sure the interleave happen in deserializer or Thor.
Following pic. is captured when I start one stream.
I see, just wondering why the snapshot image size is 1920x1500.
since your sensor capability is 1920x1200. I doubt it’s the redundant 300-lines in the bottom.
Hi,Jerry:
Sure, the 300-lines in the bottom is redundant.
Do you have any idea about the interleave issue? can it happen in Thor?
or Could you pls. provide any suggestion to locate the problem?