Max9296 with 2 max9295-AR0233 camera

Hi, I want to develop driver for ar0233 camera, its hardware topography is Xavier<-Max9296<-2 * Max9295-AR0233 camera, and now I can find the /dev/video0 and video1 in user space, but when I use gstreamer to preview, video1 always green and I dump the trace to attachment trace.txt. How to solve it? Thanks very much
trace.txt (3.6 MB)

AR0233 output format is UYVY

The trace log show the short frame that tell the output size is less than expect. You may try reduce the size to try like 1920x1078 … 1920x1070 …


Hi, I set the output size to (1920,1070), it’s bad yet.

and new trace log is trace2.txt (2.5 MB)

this log has some error log

     kworker/0:0-4     [000] ....   404.702138: rtcpu_vinotify_event: tstamp:13077444397 tag:CSIMUX_STREAM channel:0x00 frame:0 vi_tstamp:13077155250 data:0x00000001
     kworker/0:0-4     [000] ....   404.702138: rtcpu_vinotify_event: tstamp:13077444537 tag:FS channel:0x00 frame:0 vi_tstamp:13077155682 data:0x00000010
     kworker/0:0-4     [000] ....   404.702138: rtcpu_vinotify_event: tstamp:13077444660 tag:CHANSEL_NOMATCH channel:0x01 frame:0 vi_tstamp:13077155710 data:0x000003c9

Have a check if embedded_metadata_height value in device tree to confirm the value is correct.

I set embedded_metadata_height to 0 in device tree.
This is my device tree file.
tegra194-camera-ar0233-a00.dtsi (8.9 KB)

Have a check below link to analysis the trace.


     kworker/6:0-17456 [006] ....   553.622959: rtcpu_vinotify_error: tstamp:17732260834 tag:CHANSEL_NOMATCH channel:0x01 frame:0 vi_tstamp:17732259558 data:0x000003c9
     kworker/6:0-17456 [006] ....   553.622960: rtcpu_vinotify_error: tstamp:17732431310 tag:CHANSEL_NOMATCH channel:0x01 frame:0 vi_tstamp:17732430646 data:0x000003c9

I check the data 0x03c9 when error code is CHANSEL_NOMATCH, it looks like datatype not match, and its datatype is NvCsiDataType_YUV422_8 = 30, but my camera output datatype is yuv422 8bit (it has ISP)

and now i use vc-id = 1.

And I setup the isp and csi with command

echo 1 > /sys/kernel/debug/tracing/tracing_on
echo 30720 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
echo 3 > /sys/kernel/debug/camrtc/log-level
echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable
echo > /sys/kernel/debug/tracing/trace
echo 1 > /sys/kernel/debug/bpmp/debug/clk/vi/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/isp/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/nvcsi/mrq_rate_locked

echo "file csi5_fops.c +p " > /sys/kernel/debug/dynamic_debug/control
echo "file capture.c +p " > /sys/kernel/debug/dynamic_debug/control
echo "file capture_vi_channel.c +p " > /sys/kernel/debug/dynamic_debug/control
echo "file channel.c +p " > /sys/kernel/debug/dynamic_debug/control

The CHANSEL_NOMATCH could be embedded data line cause. You can try modify the embedded_metadata_height as 1/2/3/4 to try if any different.

Thanks for your reply.

Hi, how to print received the virtual channel id in vi??

Enable the debug print dev_dbg() in camera_common.c