ADV7280 Video Converter chip stopped working on Jetpack 5.1.2

We have an Xavier NX with an ADV7280 converter chip connected to CSI0. On Jetpack 5.0.1 DP, our driver and device tree were working, and we could get video from the chip. We are now trying to upgrade to Jetpack 5.1.2, but the video is no longer working.

When running media-ctl -p, it looks like the sensor and vi are properly connected to nvcsi

Media controller API version 5.10.120

Media device information
------------------------
driver          tegra-camrtc-ca
model           NVIDIA Tegra Video Input Device
serial          
bus info        
hw revision     0x3
driver version  5.10.120

Device topology
- entity 1: 13e10000.host1x:nvcsi@15a00000- (2 pads, 2 links)
            type V4L2 subdev subtype Unknown flags 0
            device node name /dev/v4l-subdev0
	pad0: Sink
		<- "adv7180 9-0021":0 [ENABLED]
	pad1: Source
		-> "vi-output, adv7180 9-0021":0 [ENABLED]

- entity 4: 13e10000.host1x:nvcsi@15a00000- (2 pads, 0 link)
            type V4L2 subdev subtype Unknown flags 0
            device node name /dev/v4l-subdev1
	pad0: Sink
	pad1: Source

- entity 7: adv7180 9-0021 (1 pad, 1 link)
            type V4L2 subdev subtype Decoder flags 0
            device node name /dev/v4l-subdev2
	pad0: Source
		[fmt:UYVY8_2X8/736x480@1001/30000 field:none colorspace:smpte170m]
		-> "13e10000.host1x:nvcsi@15a00000-":0 [ENABLED]

- entity 9: vi-output, adv7180 9-0021 (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video0
	pad0: Sink
		<- "13e10000.host1x:nvcsi@15a00000-":1 [ENABLED]

The kernel trace when running a v4l2-ctl test now shows CSIMUX_STREAM and CHANSEL_NOMATCH errors:

kworker/1:1-3083    [001] ....  9996.653443: rtcpu_vinotify_event: tstamp:313245795775 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:10023848440544 data:0x0000000000000010
kworker/1:1-3083    [001] ....  9996.653444: rtcpu_vinotify_event: tstamp:313245795928 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:10023848442176 data:0x00000000000003c9
kworker/1:1-3083    [001] ....  9996.653444: rtcpu_vinotify_event: tstamp:313245796094 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:10023864549792 data:0x0000000000000020
kworker/1:1-3083    [001] ....  9996.653445: rtcpu_vinotify_event: tstamp:313245796247 cch:-1 vi:0 tag:CSIMUX_STREAM channel:0x00 frame:0 vi_tstamp:10023864839616 data:0x0000000000000001
kworker/1:1-3083    [001] ....  9996.653445: rtcpu_vinotify_event: tstamp:313245796413 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:10023865124160 data:0x0000000000000010
kworker/1:1-3083    [001] ....  9996.653446: rtcpu_vinotify_event: tstamp:313245796562 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:1 vi_tstamp:10023865125792 data:0x00000000000003c9
kworker/1:1-3083    [001] ....  9996.653447: rtcpu_vinotify_error: tstamp:313246301455 cch:-1 vi:0 tag:CSIMUX_STREAM channel:0x00 frame:0 vi_tstamp:10023881523488 data:0x0000000000000001
kworker/1:1-3083    [001] ....  9996.653447: rtcpu_vinotify_event: tstamp:313246302252 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:10023881233664 data:0x0000000000000020

According to this https://elinux.org/Jetson/l4t/Camera_BringUp, the CSIMUX_STREAM error is a spurious stream on channel 0, and the CHANSEL_NOMATCH is failing to match DTYPE 30, which is NvCsiDataType_YUV422_8. That is the correct format, so why is there a NOMATCH error?

hello user88670,

do you have embedded data lines? or, is the packet coming with ECC/CRC?
please refer to Verifying the V4L2 Sensor Driver section, and you may run a v4l2-compliance test for checking.

We do not have any embedded data or CRC/ECC.

The v4l2-compliance test fails a few cases:

v4l2-compliance SHA: not available, 64 bits

Compliance test for tegra-video device /dev/video0:

Driver Info:
	Driver name      : tegra-video
	Card type        : vi-output, adv7180 9-0021
	Bus info         : platform:tegra-capture-vi:0
	Driver version   : 5.10.120
	Capabilities     : 0x84200001
		Video Capture
		Streaming
		Extended Pix Format
		Device Capabilities
	Device Caps      : 0x04200001
		Video Capture
		Streaming
		Extended Pix Format
Media Driver Info:
	Driver name      : tegra-camrtc-ca
	Model            : NVIDIA Tegra Video Input Device
	Serial           : 
	Bus info         : 
	Media version    : 5.10.120
	Hardware revision: 0x00000003 (3)
	Driver version   : 5.10.120
Interface Info:
	ID               : 0x0300000b
	Type             : V4L Video
Entity Info:
	ID               : 0x00000009 (9)
	Name             : vi-output, adv7180 9-0021
	Function         : V4L2 I/O
	Pad 0x0100000a   : 0: Sink
	  Link 0x0200000f: from remote pad 0x1000003 of entity '13e10000.host1x:nvcsi@15a00000-': Data, Enabled

Required ioctls:
	test MC information (see 'Media Driver Info' above): OK
	test VIDIOC_QUERYCAP: OK

Allow for multiple opens:
	test second /dev/video0 open: OK
	test VIDIOC_QUERYCAP: OK
	test VIDIOC_G/S_PRIORITY: OK
	test for unlimited opens: OK

Debug ioctls:
	test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
	test VIDIOC_LOG_STATUS: OK

Input ioctls:
	test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
	test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
	test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
	test VIDIOC_ENUMAUDIO: OK (Not Supported)
	test VIDIOC_G/S/ENUMINPUT: OK
	test VIDIOC_G/S_AUDIO: OK (Not Supported)
	Inputs: 1 Audio Inputs: 0 Tuners: 0

Output ioctls:
	test VIDIOC_G/S_MODULATOR: OK (Not Supported)
	test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
	test VIDIOC_ENUMAUDOUT: OK (Not Supported)
	test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
	test VIDIOC_G/S_AUDOUT: OK (Not Supported)
	Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
	test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
	test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
	test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
	test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls (Input 0):
	test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
	test VIDIOC_QUERYCTRL: OK
	test VIDIOC_G/S_CTRL: OK
		fail: v4l2-test-controls.cpp(663): g_ext_ctrls returned an error (22)
	test VIDIOC_G/S/TRY_EXT_CTRLS: FAIL
	test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
	test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
	Standard Controls: 6 Private Controls: 16

Format ioctls (Input 0):
	test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
	test VIDIOC_G/S_PARM: OK (Not Supported)
	test VIDIOC_G_FBUF: OK (Not Supported)
	test VIDIOC_G_FMT: OK
	test VIDIOC_TRY_FMT: OK
		G_FMT:     736x480, UYVY, 1, 1472, 786432, 1, 0, 0, feedcafe
		TRY/S_FMT: 736x240, UYVY, 1, 1472, 393216, 1, 0, 0, feedcafe
		fail: v4l2-test-formats.cpp(1115): Video Capture: S_FMT(G_FMT) != G_FMT
	test VIDIOC_S_FMT: FAIL
	test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
	test Cropping: OK (Not Supported)
	test Composing: OK (Not Supported)
	test Scaling: OK

Codec ioctls (Input 0):
	test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
	test VIDIOC_G_ENC_INDEX: OK (Not Supported)
	test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 0):
		fail: v4l2-test-buffers.cpp(715): q.create_bufs(node, 1, &fmt) != EINVAL
	test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: FAIL
	test VIDIOC_EXPBUF: OK
	test Requests: OK (Not Supported)

Total for tegra-video device /dev/video0: 45, Succeeded: 42, Failed: 3, Warnings: 0

On JP 5.0.1 DP, the compliance test crashes on test VIDIOC_G/S/TRY_EXT_CTRLS:. Up to that point, results are the same: all successful.

hello user88670,

these two test failed were harmful, please review your driver implementation.
please see-also Camera Driver Porting, and also Release Notes (35.4.1). did you also revise the min_gain_val param sensors in DT to be greater than 1?

Jerry, thanks for the help so far. We have fixed the VIDIOC_S_FMT failure

We also found this thread from a few years ago that shows the reference driver also failing these tests:
V4l2-compliance several errors - Jetson & Embedded Systems / Jetson TX2 - NVIDIA Developer Forums
Is this no longer the case, and compliance is now required for camera drivers?

After fixing the VIDIOC_S_FMT, we no longer get CSIMUX_STREAM errors, but we still get the CHANSEL_NOMATCH errors. Before the CHANSEL_NOMATCH errors start, we also see some CHANSEL_FAULT events.

kworker/0:0-3011    [000] ....  4501.019269: rtcpu_string: tstamp:141513976158 id:0x04010000 str:"VM0 deactivating."
kworker/0:1-2847    [000] ....  4516.475121: rtcpu_string: tstamp:141997854174 id:0x04010000 str:"VM0 activating."
kworker/0:1-2847    [000] ....  4516.475126: rtcpu_vinotify_error: tstamp:141998086950 cch:-1 vi:0 tag:CSIMUX_STREAM channel:0x00 frame:0 vi_tstamp:4543938666528 data:0x0000000000000001
kworker/0:1-2847    [000] ....  4516.531105: rtcpu_vinotify_event: tstamp:141998500660 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543935270272 data:0xcd9ce50010000000
kworker/0:1-2847    [000] ....  4516.531108: rtcpu_vinotify_event: tstamp:141998500814 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543935282048 data:0x0000000031000001
kworker/0:1-2847    [000] ....  4516.531109: rtcpu_vinotify_event: tstamp:141998500988 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543935337152 data:0xcd9ce20010000000
kworker/0:1-2847    [000] ....  4516.531110: rtcpu_vinotify_event: tstamp:141998501137 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543935349088 data:0x0000000031000002
kworker/0:1-2847    [000] ....  4516.531111: rtcpu_vinotify_event: tstamp:141998501347 cch:-1 vi:0 tag:CSIMUX_STREAM channel:0x00 frame:0 vi_tstamp:4543938666528 data:0x0000000000000001
kworker/0:1-2847    [000] ....  4516.531111: rtcpu_vinotify_event: tstamp:141998501495 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:4543950531936 data:0x0000000000000010
kworker/0:1-2847    [000] ....  4516.531112: rtcpu_vinotify_event: tstamp:141998501670 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:4543950532000 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.531112: rtcpu_vinotify_event: tstamp:141998501822 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:2 vi_tstamp:4543950534528 data:0x0000000000000001
kworker/0:1-2847    [000] ....  4516.531113: rtcpu_vinotify_event: tstamp:141998501994 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:4543950573472 data:0x0000000008020001
kworker/0:1-2847    [000] ....  4516.531114: rtcpu_vinotify_event: tstamp:141998960005 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:2 vi_tstamp:4543965767872 data:0x0000000000ef0002
kworker/0:1-2847    [000] ....  4516.531114: rtcpu_vinotify_event: tstamp:141998960184 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:2 vi_tstamp:4543965768640 data:0x0000000000000000
kworker/0:1-2847    [000] ....  4516.531115: rtcpu_vinotify_event: tstamp:141998960337 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:4543965792224 data:0x0000000002020001
kworker/0:1-2847    [000] ....  4516.531115: rtcpu_vinotify_event: tstamp:141998960507 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:2 vi_tstamp:4543965778752 data:0x0000000000f00040
kworker/0:1-2847    [000] ....  4516.531116: rtcpu_vinotify_event: tstamp:141998960656 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:4543965843488 data:0x0000000001020001
kworker/0:1-2847    [000] ....  4516.531117: rtcpu_vinotify_event: tstamp:141998960826 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:4543966596480 data:0x0000000000000020
kworker/0:1-2847    [000] ....  4516.531117: rtcpu_vinotify_event: tstamp:141998960980 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:4543966596544 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.531122: rtcpu_vinotify_event: tstamp:141999476964 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543966788768 data:0xcd9ce50010000000
kworker/0:1-2847    [000] ....  4516.531123: rtcpu_vinotify_event: tstamp:141999477121 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543966832192 data:0x0000000031000003
kworker/0:1-2847    [000] ....  4516.531123: rtcpu_vinotify_event: tstamp:141999477295 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:4543967174240 data:0x0000000000000010
kworker/0:1-2847    [000] ....  4516.531124: rtcpu_vinotify_event: tstamp:141999477452 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:4543967174336 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.531145: rtcpu_vinotify_event: tstamp:141999477623 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:1 vi_tstamp:4543967176832 data:0x0000000000000001
kworker/0:1-2847    [000] ....  4516.531146: rtcpu_vinotify_event: tstamp:141999477772 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:4543967215776 data:0x0000000008020002
kworker/0:1-2847    [000] ....  4516.531146: rtcpu_vinotify_event: tstamp:141999477948 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:1 vi_tstamp:4543982424864 data:0x0000000000ef0002
kworker/0:1-2847    [000] ....  4516.531147: rtcpu_vinotify_event: tstamp:141999478099 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:1 vi_tstamp:4543982425664 data:0x0000000000000000
kworker/0:1-2847    [000] ....  4516.531147: rtcpu_vinotify_event: tstamp:141999478269 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:4543982448256 data:0x0000000002020002
kworker/0:1-2847    [000] ....  4516.531148: rtcpu_vinotify_event: tstamp:141999478418 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:4543982435744 data:0x0000000000f00040
kworker/0:1-2847    [000] ....  4516.531149: rtcpu_vinotify_event: tstamp:141999478588 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:4543982499488 data:0x0000000001020002
kworker/0:1-2847    [000] ....  4516.531150: rtcpu_vinotify_event: tstamp:141999504142 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:4543983317472 data:0x0000000000000020
kworker/0:1-2847    [000] ....  4516.531150: rtcpu_vinotify_event: tstamp:141999504319 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:4543983317536 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.531151: rtcpu_vinotify_event: tstamp:141999504472 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543983421664 data:0xcd9ce20010000000
kworker/0:1-2847    [000] ....  4516.531152: rtcpu_vinotify_event: tstamp:141999504642 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:4543983465088 data:0x0000000031000004
kworker/0:1-2847    [000] ....  4516.531152: rtcpu_vinotify_event: tstamp:141999504790 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:4543983895648 data:0x0000000000000010
kworker/0:1-2847    [000] ....  4516.531153: rtcpu_vinotify_event: tstamp:142000019024 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:4543983895712 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.531153: rtcpu_vinotify_event: tstamp:142000019182 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:2 vi_tstamp:4543983898368 data:0x0000000000000001
kworker/0:1-2847    [000] ....  4516.531154: rtcpu_vinotify_event: tstamp:142000019356 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:4543983950016 data:0x0000000008020003
kworker/0:1-2847    [000] ....  4516.531155: rtcpu_vinotify_event: tstamp:142000019507 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:2 vi_tstamp:4543999148448 data:0x0000000000ef0002
kworker/0:1-2847    [000] ....  4516.531155: rtcpu_vinotify_event: tstamp:142000019677 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:2 vi_tstamp:4543999149216 data:0x0000000000000000
kworker/0:1-2847    [000] ....  4516.531156: rtcpu_vinotify_event: tstamp:142000019828 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:4543999171840 data:0x0000000002020003
kworker/0:1-2847    [000] ....  4516.531156: rtcpu_vinotify_event: tstamp:142000019996 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:2 vi_tstamp:4543999159296 data:0x0000000000f00040
kworker/0:1-2847    [000] ....  4516.531157: rtcpu_vinotify_event: tstamp:142000020143 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:4543999223072 data:0x0000000001020003
kworker/0:1-2847    [000] ....  4516.531157: rtcpu_vinotify_event: tstamp:142000020314 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:4543999977312 data:0x0000000000000020
kworker/0:1-2847    [000] ....  4516.531158: rtcpu_vinotify_event: tstamp:142000020468 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:4543999977376 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.587108: rtcpu_vinotify_event: tstamp:142000502736 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:4544000555360 data:0x0000000000000010
kworker/0:1-2847    [000] ....  4516.587110: rtcpu_vinotify_event: tstamp:142000502897 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:4544000555424 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.587111: rtcpu_vinotify_event: tstamp:142000503073 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:1 vi_tstamp:4544000557920 data:0x0000000000000001
kworker/0:1-2847    [000] ....  4516.587112: rtcpu_vinotify_event: tstamp:142000503226 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:4544000635616 data:0x0000000008020004
kworker/0:1-2847    [000] ....  4516.587112: rtcpu_vinotify_event: tstamp:142000503397 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:1 vi_tstamp:4544015802016 data:0x0000000000ef0002
kworker/0:1-2847    [000] ....  4516.587113: rtcpu_vinotify_event: tstamp:142000503548 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:1 vi_tstamp:4544015802816 data:0x0000000000000000
kworker/0:1-2847    [000] ....  4516.587114: rtcpu_vinotify_error: tstamp:142000543999 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:4544017274432 data:0x00000000000003c9
kworker/0:1-2847    [000] ....  4516.587115: rtcpu_vinotify_event: tstamp:142000996543 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:4544015834048 data:0x0000000002020004
kworker/0:1-2847    [000] ....  4516.587116: rtcpu_vinotify_event: tstamp:142000996697 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:4544015812896 data:0x0000000000f00040
kworker/0:1-2847    [000] ....  4516.587116: rtcpu_vinotify_event: tstamp:142000996871 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:4544015889696 data:0x0000000001020004
kworker/0:1-2847    [000] ....  4516.587117: rtcpu_vinotify_event: tstamp:142000997020 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:4544016694080 data:0x0000000000000020
kworker/0:1-2847    [000] ....  4516.587117: rtcpu_vinotify_event: tstamp:142000997194 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:4544016694144 data:0x0000000800000000
kworker/0:1-2847    [000] ....  4516.587118: rtcpu_vinotify_event: tstamp:142000997341 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:4544017271840 data:0x0000000000000010
kworker/0:1-2847    [000] ....  4516.587118: rtcpu_vinotify_event: tstamp:142000997514 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:4544017274432 data:0x00000000000003c9
kworker/0:1-2847    [000] ....  4516.587119: rtcpu_vinotify_error: tstamp:142001119843 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:4544035701536 data:0x00000000000003c9

It looks like the CHANSEL_FAULT is a PIXEL_RUNAWAY on line 240. That should be the last line, so we’re not sure exactly what that means.

Here is the device tree we are using. We haven’t had any issues probing the device, so it doesn’t seem to be the issue from the release notes.
device-tree.txt (389.0 KB)

hello user88670,

it looks there’re CHANSEL_PXL_SOF/EOF sending to VI engine continuously.
may I know what’s your test command-line?
could you please try boosting clocks for testing. (you may skip ISP as it’s not used by your use-case)
for example,

sudo su
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 1 > /sys/kernel/debug/bpmp/debug/clk/emc/mrq_rate_locked
cat /sys/kernel/debug/bpmp/debug/clk/vi/max_rate |tee /sys/kernel/debug/bpmp/debug/clk/vi/rate
cat /sys/kernel/debug/bpmp/debug/clk/isp/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/isp/rate
cat /sys/kernel/debug/bpmp/debug/clk/nvcsi/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/nvcsi/rate
cat /sys/kernel/debug/bpmp/debug/clk/emc/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/emc/rate

We are using this command to test:

v4l2-ctl --set-fmt-video=width=720,height=480,pixelformat=UYVY --stream-mmap --stream-count=1 -d /dev/video0 --stream-to=test.raw

This is the kernel trace after boosting the clocks:

# tracer: nop
#
# entries-in-buffer/entries-written: 1124/1124   #P:4
#
#                                _-----=> irqs-off
#                               / _----=> need-resched
#                              | / _---=> hardirq/softirq
#                              || / _--=> preempt-depth
#                              ||| /     delay
#           TASK-PID     CPU#  ||||   TIMESTAMP  FUNCTION
#              | |         |   ||||      |         |
     kworker/3:5-157     [003] ....   406.092628: rtcpu_dbg_set_loglevel: tstamp:14036811769 old:0 new:2
     kworker/3:6-158     [003] ....   412.196562: rtcpu_string: tstamp:14227674015 id:0x04010000 str:"VM0 deactivating."
     kworker/3:5-157     [003] ....   799.363925: rtcpu_string: tstamp:26326454719 id:0x04010000 str:"VM0 activating."
     kworker/3:5-157     [003] ....   799.419917: rtcpu_vinotify_event: tstamp:26326905506 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842450549888 data:0xcd9ce50010000000
     kworker/3:5-157     [003] ....   799.419919: rtcpu_vinotify_event: tstamp:26326905657 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842450561632 data:0x0000000031000001
     kworker/3:5-157     [003] ....   799.419921: rtcpu_vinotify_event: tstamp:26326905820 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842450616736 data:0xcd9ce20010000000
     kworker/3:5-157     [003] ....   799.419921: rtcpu_vinotify_event: tstamp:26326905961 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842450628672 data:0x0000000031000002
     kworker/3:5-157     [003] ....   799.875904: rtcpu_vinotify_event: tstamp:26341825198 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:842938030688 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.875907: rtcpu_vinotify_event: tstamp:26341825347 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:842938030720 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.875908: rtcpu_vinotify_event: tstamp:26341825532 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:1 vi_tstamp:842938033472 data:0x0000000000000001
     kworker/3:5-157     [003] ....   799.875909: rtcpu_vinotify_event: tstamp:26341825672 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:842938041280 data:0x0000000008020001
     kworker/3:5-157     [003] ....   799.875910: rtcpu_vinotify_event: tstamp:26342319758 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:1 vi_tstamp:842953275616 data:0x0000000000ef0002
     kworker/3:5-157     [003] ....   799.875910: rtcpu_vinotify_event: tstamp:26342319903 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:1 vi_tstamp:842953276128 data:0x0000000000000000
     kworker/3:5-157     [003] ....   799.875911: rtcpu_vinotify_event: tstamp:26342320067 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:842953280928 data:0x0000000002020001
     kworker/3:5-157     [003] ....   799.875911: rtcpu_vinotify_event: tstamp:26342320209 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:842953286432 data:0x0000000000f00040
     kworker/3:5-157     [003] ....   799.875912: rtcpu_vinotify_event: tstamp:26342320369 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:842953296672 data:0x0000000001020001
     kworker/3:5-157     [003] ....   799.875913: rtcpu_vinotify_event: tstamp:26342320510 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:842954167616 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.875913: rtcpu_vinotify_event: tstamp:26342320672 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:842954167616 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.875914: rtcpu_vinotify_event: tstamp:26342320812 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842954190528 data:0xcd9ce50010000000
     kworker/3:5-157     [003] ....   799.875915: rtcpu_vinotify_event: tstamp:26342639090 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842954228480 data:0x0000000031000003
     kworker/3:5-157     [003] ....   799.875915: rtcpu_vinotify_event: tstamp:26342639233 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:842954681888 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.875916: rtcpu_vinotify_event: tstamp:26342639397 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:842954681920 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.875917: rtcpu_vinotify_event: tstamp:26342639539 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:2 vi_tstamp:842954684640 data:0x0000000000000001
     kworker/3:5-157     [003] ....   799.875937: rtcpu_vinotify_event: tstamp:26342639698 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:842954692448 data:0x0000000008020002
     kworker/3:5-157     [003] ....   799.931918: rtcpu_vinotify_event: tstamp:26342859243 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:2 vi_tstamp:842969926784 data:0x0000000000ef0002
     kworker/3:5-157     [003] ....   799.931921: rtcpu_vinotify_event: tstamp:26342859405 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:2 vi_tstamp:842969927296 data:0x0000000000000000
     kworker/3:5-157     [003] ....   799.931922: rtcpu_vinotify_event: tstamp:26342859548 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:842969932128 data:0x0000000002020002
     kworker/3:5-157     [003] ....   799.931922: rtcpu_vinotify_event: tstamp:26342859709 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:2 vi_tstamp:842969937632 data:0x0000000000f00040
     kworker/3:5-157     [003] ....   799.931923: rtcpu_vinotify_event: tstamp:26342859851 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:842969947904 data:0x0000000001020002
     kworker/3:5-157     [003] ....   799.931924: rtcpu_vinotify_event: tstamp:26342860012 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:842970818784 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.931924: rtcpu_vinotify_event: tstamp:26342860156 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:842970818816 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.931925: rtcpu_vinotify_event: tstamp:26342860314 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842970843040 data:0xcd9ce20010000000
     kworker/3:5-157     [003] ....   799.931925: rtcpu_vinotify_event: tstamp:26342860454 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:842970854976 data:0x0000000031000004
     kworker/3:5-157     [003] ....   799.931926: rtcpu_vinotify_event: tstamp:26342860611 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:842971396640 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.931926: rtcpu_vinotify_event: tstamp:26342860755 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:842971396640 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.931927: rtcpu_vinotify_event: tstamp:26343181804 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:2 vi_tstamp:842971399360 data:0x0000000000000001
     kworker/3:5-157     [003] ....   799.931928: rtcpu_vinotify_event: tstamp:26343181947 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:842971410400 data:0x0000000008020003
     kworker/3:5-157     [003] ....   799.931948: rtcpu_vinotify_event: tstamp:26343520706 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:2 vi_tstamp:842986641536 data:0x0000000000ef0002
     kworker/3:5-157     [003] ....   799.931948: rtcpu_vinotify_event: tstamp:26343520852 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:2 vi_tstamp:842986642016 data:0x0000000000000000
     kworker/3:5-157     [003] ....   799.931949: rtcpu_vinotify_event: tstamp:26343521013 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:842986646816 data:0x0000000002020003
     kworker/3:5-157     [003] ....   799.931950: rtcpu_vinotify_event: tstamp:26343521153 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:2 vi_tstamp:842986652384 data:0x0000000000f00040
     kworker/3:5-157     [003] ....   799.931950: rtcpu_vinotify_event: tstamp:26343521311 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:2 vi_tstamp:842986662592 data:0x0000000001020003
     kworker/3:5-157     [003] ....   799.931951: rtcpu_vinotify_event: tstamp:26343521454 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:842987469984 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.931951: rtcpu_vinotify_event: tstamp:26343521616 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:842987469984 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.931952: rtcpu_vinotify_event: tstamp:26343521754 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:842988047808 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.931952: rtcpu_vinotify_event: tstamp:26343521917 cch:0 vi:0 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:842988047840 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.931953: rtcpu_vinotify_event: tstamp:26343522057 cch:0 vi:0 tag:CHANSEL_PXL_SOF channel:0x23 frame:1 vi_tstamp:842988050560 data:0x0000000000000001
     kworker/3:5-157     [003] ....   799.931954: rtcpu_vinotify_event: tstamp:26343522215 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:842988058400 data:0x0000000008020004
     kworker/3:5-157     [003] ....   799.931954: rtcpu_vinotify_event: tstamp:26343856485 cch:0 vi:0 tag:CHANSEL_PXL_EOF channel:0x23 frame:1 vi_tstamp:843003292736 data:0x0000000000ef0002
     kworker/3:5-157     [003] ....   799.931955: rtcpu_vinotify_event: tstamp:26343856647 cch:0 vi:0 tag:ATOMP_FRAME_DONE channel:0x23 frame:1 vi_tstamp:843003293216 data:0x0000000000000000
     kworker/3:5-157     [003] ....   799.931969: rtcpu_vinotify_event: tstamp:26343856790 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:843003297984 data:0x0000000002020004
     kworker/3:5-157     [003] ....   799.931970: rtcpu_vinotify_error: tstamp:26343900095 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:843004765280 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.931971: rtcpu_vinotify_event: tstamp:26344164964 cch:0 vi:0 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:843003303552 data:0x0000000000f00040
     kworker/3:5-157     [003] ....   799.931972: rtcpu_vinotify_event: tstamp:26344165109 cch:0 vi:0 tag:VIFALC_ACTIONLST channel:0x23 frame:1 vi_tstamp:843003314976 data:0x0000000001020004
     kworker/3:5-157     [003] ....   799.931972: rtcpu_vinotify_event: tstamp:26344165270 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:843004184672 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.931973: rtcpu_vinotify_event: tstamp:26344165414 cch:0 vi:0 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:843004184704 data:0x0000000800000000
     kworker/3:5-157     [003] ....   799.931974: rtcpu_vinotify_event: tstamp:26344165571 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:843004762528 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.931974: rtcpu_vinotify_event: tstamp:26344165714 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:843004765280 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.931975: rtcpu_vinotify_error: tstamp:26344420447 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:1 vi_tstamp:843021416448 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.931975: rtcpu_vinotify_event: tstamp:26344504213 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:843020835872 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.931976: rtcpu_vinotify_event: tstamp:26344504355 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:843021413728 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.931977: rtcpu_vinotify_event: tstamp:26344504515 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:1 vi_tstamp:843021416448 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.991892: rtcpu_vinotify_error: tstamp:26344942779 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:843038131200 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.991895: rtcpu_vinotify_event: tstamp:26345182218 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:843037550592 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.991896: rtcpu_vinotify_event: tstamp:26345182377 cch:0 vi:0 tag:FS channel:0x00 frame:2 vi_tstamp:843038128448 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.991897: rtcpu_vinotify_event: tstamp:26345182517 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:843038131200 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.991897: rtcpu_vinotify_error: tstamp:26345463124 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:1 vi_tstamp:843054782368 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.991898: rtcpu_vinotify_event: tstamp:26345521472 cch:0 vi:0 tag:FE channel:0x00 frame:2 vi_tstamp:843054201792 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.991899: rtcpu_vinotify_event: tstamp:26345521614 cch:0 vi:0 tag:FS channel:0x00 frame:1 vi_tstamp:843054779648 data:0x0000000000000010
     kworker/3:5-157     [003] ....   799.991899: rtcpu_vinotify_event: tstamp:26345521776 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:1 vi_tstamp:843054782368 data:0x00000000000003c9
     kworker/3:5-157     [003] ....   799.991900: rtcpu_vinotify_event: tstamp:26345967233 cch:0 vi:0 tag:FE channel:0x00 frame:1 vi_tstamp:843070916544 data:0x0000000000000020
     kworker/3:5-157     [003] ....   799.991900: rtcpu_vinotify_error: tstamp:26345985453 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:2 vi_tstamp:843071497120 data:0x00000000000003c9

hello user88670,

PIXEL_RUNAWAY failure it might be the sensor output size more than device tree configuration, or, an incorrect sensor register settings.
hence, please give it a try to reduce your active_h settings.

Jerry,
The ADV7280m generates a test pattern that we were able to get working. We had to set the resolution in the driver and the device tree to 720x507.

The problem now is when we connect an actual camera, we only get a couple of frames before we start getting CHANSEL_SHORT_FRAME errors. If we try to reduce the height at all we instead don’t get any frames and get the CHANSEL_FAULT pixel runaway errors from the start.

The few frames we do get at the start look like they are out of sync (the bottom of one frame at the top of the image and the top of the next frame at the bottom).

We did try increasing the number of skip frames in the driver to try to skip over the initial garbage frames, but it did not seem to make any difference.

hello user88670,

device tree port bindings should be okay since you’ve validate with test pattern.
those issues, such as CHANSEL_SHORT_FRAME, CHANSEL_FAULT…etc were related to MIPI signaling.

BTW,
you may try with using even numbers for image height.

Jerry,
The output from the ADV7280 chip has a height of 507 for the mode we are using.

If we try to change the height in the driver, we get CHANSEL_SHORT_FRAME errors if the height is greater than 507, and CHANSEL_FAULT runaway pixel errors if the height is less than 507.

Here is the driver and device tree overlay we are using to get the test pattern working.
adv7180.c (41.2 KB)
tegra194-p3668-all-camera-adv7280m.dts (2.4 KB)

is it outputting interleaved data? it looks there’re Even/Odd frames in the mode description.
note, we don’t have the deinterlacing support for Xavier series.

We are using the deinterlacer on the chip, so it is already in progressive format.

hello user88670,

re-cap your device tree as following…

adv7280m_a: composite-in@21 {
				ports {
					port@0 {
						adv7280_out: endpoint {
							port-index = <0>;
							bus-width = <1>;
							remote-endpoint = <&rbpcv2_imx219_csi_in0>;

it looks you’re based-on Raspberry Pi IMX219 for your implementation,
you may double check you’ve also revise those IMX219 node definition to your ADV7280 chip accordingly.
i.e. tegra194-camera-rbpcv2-imx219.dtsi

besides, it’s more like signaling issue as you’ve got the test pattern working.

Hi @user88670,

I was able to test your driver in attachment and confirm that it works for me. However, I used my own device-tree and had to re-launch gstreamer command once as the streaming does not work with the first launch.

Regards,
Khang

Jerry,
Yes, we use the csi endpoint node from the IMX219 camera. We make sure to point the endpoints to our camera and set the correct endpoint in vi as well. media-ctl -p shows the pads all linked properly.

It looks like after a few attempts to get frames, we stop getting the CHANSEL_FAULT errors and just get CHANSEL_NOMATCH. Does it give up after a certain number of failures? We may not be getting a proper sync on the signal for the first couple of frames. We do get 1 or 2 frames displayed when we run gstreamer, but they are not lined up with the top of the frame. There is a seem between the frames that moves depending on when I start the stream. In this case it is about 3/4 of the way down the image.

Khang,
We also have to relaunch gstreamer to get the stream working. What hardware and Jetpack are you using? We have an ADV7280-m with an NTSC camera. On the 5.0.1 DP Jetpack, we have a driver that works fine, but on 5.1.2, only the test pattern works.

Hi @user88670,

We use our own custom hardware with the recent Jetpack-5.1.2 and after the first re-launch of gstreamer it seems to work properly with any re-launch and smoothly for hours. I’d had my own ADV7280-m driver version (heavily modified from the upstream driver) that worked fine with Jetpack-4.5.1 then it stopped working since Jetpack-4.6.x.

Maybe I will re-test your driver with Jetpack-5.0.1 if necessary but we do not plan to use this BSP version for the production.

Regards,
Khang

hello user88670,

thanks for sharing that snapshot.

if you looking into it closely.
it looks like some lines were missing, and part of capture has dislocation to bottom.
are those active dimension DT settings (i.e. active_w, active_h) identical with the actual sensor outputs?
I assume you don’t have such issue with test-pattern, right?

besides, there’s --stream-skip options in v4l IOCTL, please give it a try to drop several frames while start stream.
for example,
$ v4l2-ctl --set-fmt-video=width=1920,height=1200,pixelformat=BA10 --set-ctrl bypass_mode=0 --stream-mmap --stream-skip=9 --stream-count=100 -d /dev/video0

Hi @user88670,

I share with you the device-tree’s node of the ADV7280-M for the Jetpack-5.x.y in case you would need to compare:

		adv7280_e@20 {
			compatible = "adi,adv7280-m";

			/* I2C device address */
			reg = <0x20>;

			/* V4L2 device node location */
			devnode = "video0";

			/* Physical dimensions of sensor */
			physical_w = "4.713";
			physical_h = "3.494";

			sensor_model = "adv7280-m";

			use_sensor_mode_id = "false";

			reset-gpios = <&mcp23008_27 2 GPIO_ACTIVE_LOW>;

			ports {
				#address-cells = <1>;
				#size-cells = <0>;

				port@0 {
					reg = <0>;
					toto_cam_out1: endpoint {
						port-index = <4>; /* CSI E */
						bus-width = <1>;
						remote-endpoint = <&toto_csi_in1>;
					};
				};
			};
		};

Regards,
Khang