Image tearing of camera video output

Dear all,

I’m trying to enable 8 imx390 with FPDLINK on jetson agx xavier.
I can open two cameras at the same time, but both cameras have image tearing issue on same place, just like the upper half of the attached image.

Does anyone have any suggestion about how to solve this issue?

I’m working on jetson agx xavier and using jetpack 4.4

Thanks in advance

1 Like

Use v4l2-ctl to capture the raw image to confirm if the problem is before or after ISP processing.

Hi ShaneCCC,

Thanks for the reply.

So I tried this command,
v4l2-ctl -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=RG12 --stream-mmap --stream-count=1 --stream-to=csi.raw --verbose

But I can not get raw image and the trace log gave me this
rtos_queue_peek_from_isr_failed: tstamp:64063898711 queue:0x0bcbcf78

Add “–set-ctrl bypass_mode=0” to the command line.

Hi ShaneCCC.

With new argument, I still failed to get raw image. This is what I got from trace log

kworker/0:4-13416 [000] .... 5020.784519: rtcpu_vinotify_event: tstamp:157217617448 tag:CHANSEL_EMBED_EOF channel:0x23 frame:84 vi_tstamp:157217322437 data:0x00000008 kworker/0:4-13416 [000] .... 5020.784521: rtcpu_vinotify_event: tstamp:157217617578 tag:ATOMP_EMB_DATA_DONE channel:0x23 frame:84 vi_tstamp:157217322451 data:0x00000000 kworker/0:4-13416 [000] .... 5020.784521: rtcpu_vinotify_event: tstamp:157217617722 tag:RESERVED_19 channel:0x23 frame:84 vi_tstamp:156166437984 data:0x0302084c kworker/0:4-13416 [000] .... 5020.784522: rtcpu_vinotify_event: tstamp:157217617845 tag:CHANSEL_NOMATCH channel:0x01 frame:84 vi_tstamp:157217323712 data:0x000006e9 kworker/0:4-13416 [000] .... 5020.784522: rtcpu_vinotify_event: tstamp:157217617985 tag:CHANSEL_PXL_SOF channel:0x23 frame:84 vi_tstamp:157217328342 data:0x00000001 kworker/0:4-13416 [000] .... 5020.784522: rtcpu_vinotify_event: tstamp:157217618107 tag:RESERVED_19 channel:0x23 frame:84 vi_tstamp:156166626528 data:0x0802084c kworker/0:4-13416 [000] .... 5020.784522: rtcpu_vinotify_event: tstamp:157217618260 tag:CHANSEL_FAULT channel:0x23 frame:84 vi_tstamp:157217328453 data:0x00000100 kworker/0:4-13416 [000] .... 5020.784522: rtcpu_vinotify_event: tstamp:157217618382 tag:RESERVED_19 channel:0x23 frame:84 vi_tstamp:156166630496 data:0x0102084c kworker/0:4-13416 [000] .... 5020.784523: rtcpu_vinotify_event: tstamp:157217837818 tag:CHANSEL_FAULT channel:0x23 frame:84 vi_tstamp:157217827966 data:0x04370182 kworker/0:4-13416 [000] .... 5020.784523: rtcpu_vinotify_event: tstamp:157217837942 tag:RESERVED_19 channel:0x23 frame:84 vi_tstamp:156182614880 data:0x0102084c kworker/0:4-13416 [000] .... 5020.784523: rtcpu_vinotify_event: tstamp:157217838085 tag:ATOMP_FRAME_DONE channel:0x23 frame:84 vi_tstamp:157217827979 data:0x00000000 kworker/0:4-13416 [000] .... 5020.784523: rtcpu_vinotify_event: tstamp:157217838207 tag:RESERVED_19 channel:0x23 frame:84 vi_tstamp:156182615456 data:0x0202084c kworker/0:4-13416 [000] .... 5020.784524: rtcpu_vinotify_event: tstamp:157217838347 tag:CHANSEL_FAULT channel:0x23 frame:84 vi_tstamp:157217828320 data:0x043801c0 kworker/0:4-13416 [000] .... 5020.784524: rtcpu_vinotify_event: tstamp:157217838469 tag:RESERVED_19 channel:0x23 frame:84 vi_tstamp:156182626240 data:0x0102084c kworker/0:4-13416 [000] .... 5020.784524: rtcpu_vinotify_event: tstamp:157217838610 tag:FE channel:0x00 frame:84 vi_tstamp:157217837278 data:0x00000020 kworker/0:4-13416 [000] .... 5020.784524: rtcpu_vinotify_event: tstamp:157217838737 tag:ATOMP_FE channel:0x00 frame:84 vi_tstamp:157217837278 data:0x00000000 kworker/0:4-13416 [000] .... 5020.784533: rtos_queue_send_from_isr_failed: tstamp:157217860445 queue:0x0bcb41f8 kworker/0:4-13416 [000] .... 5020.784533: rtos_queue_send_from_isr_failed: tstamp:157217860585 queue:0x0bcb8a60 kworker/0:4-13416 [000] .... 5020.784534: rtos_queue_send_from_isr_failed: tstamp:157217860726 queue:0x0bcba5e0 kworker/0:4-13416 [000] .... 5020.784534: rtos_queue_send_from_isr_failed: tstamp:157217860860 queue:0x0bcbb3a0 kworker/0:4-13416 [000] .... 5020.784534: rtos_queue_send_from_isr_failed: tstamp:157217860992 queue:0x0bcbc160

That’s weird, does the argus run with the same sensor mode?

I think so. This is the setting of my dtsi file

` mode0 { // IMX390_MODE_1920X1080
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_a";
				phy_mode = "DPHY";
				vc_id = "0";
				discontinuous_clk = "yes";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "12";
				csi_pixel_bit_depth = "12";
				mode_type = "bayer";
				pixel_phase = "rggb";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "2200";
				inherent_gain = "1";
				mclk_multiplier = "3.09";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "0"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "33333";
				step_exp_time = "1";
				default_exp_time = "33333";/* us */
				embedded_metadata_height = "1";
			};

`

Sorry to revive a dead post, but I recently came across this issue and there were no solutions. The solution for my setup (JetPack 5.0.2) was setting active_w = "1936" and active_h = "1100". The IMX390 does have 1936x1096 pixels available, but I had to add 4 to the height for what I assume is the SMPG lines in order for Argus to not throw an error about the crop rectangle.