Orin camera bring up: CHANSEL_FAULT and CHANSEL_NOMATCH reported

Hello:

I’m bringing up camera module(2M, gmsl2) on orin. Now serdes seems work well(video lock ok).
But I can’t receive frame data from orin MIPI CSI.

Serdes: max96717 + max96712
Resolution: 1920x1080(2M YUV422-8)

v4l2-ctl -d /dev/video1 --stream-mmap --set-fmt-video=width=1920,height=1080,pixelformat=YUYV --stream-count=100

The trace reports CHANSEL_FAULT at begining of dump, then reports CHANSEL_NOMATCH.

  • CHANSEL_FAULT error bit is PIXEL_SHORT_LINE, but I tried to decrease size to both 1, but still error.
  • CHANSEL_NOMATCH shows vc/dt not match, but I’ve already set format to YUV in dts and v4l2-ctl, and set vc to 0 in serdes.

Trace log(part, attach file is the full logs):

    kworker/3:14-185     [003] .... 18407.580004: rtcpu_vinotify_event: tstamp:575838598451 cch:0 vi:1 tag:FS channel:0x00 frame:0 vi_tstamp:18426835126336 data:0x0000000000000012
    kworker/3:14-185     [003] .... 18407.580005: rtcpu_vinotify_event: tstamp:575838915823 cch:0 vi:1 tag:ATOMP_FS channel:0x00 frame:0 vi_tstamp:18426835126336 data:0x0000000800000000
    kworker/3:14-185     [003] .... 18407.580005: rtcpu_vinotify_event: tstamp:575838915960 cch:0 vi:1 tag:CHANSEL_PXL_SOF channel:0x23 frame:0 vi_tstamp:18426836243552 data:0x0000000000000001
    kworker/3:14-185     [003] .... 18407.580005: rtcpu_vinotify_event: tstamp:575838916116 cch:0 vi:1 tag:VIFALC_ACTIONLST channel:0x23 frame:0 vi_tstamp:18426836245120 data:0x0000000008020003
    kworker/3:14-185     [003] .... 18407.580006: rtcpu_vinotify_event: tstamp:575838916251 cch:0 vi:1 tag:**CHANSEL_FAULT** channel:0x23 frame:0 vi_tstamp:18426836253088 data:**0x0000000000000200**
    kworker/3:14-185     [003] .... 18407.580006: rtcpu_vinotify_event: tstamp:575838916405 cch:0 vi:1 tag:VIFALC_ACTIONLST channel:0x23 frame:0 vi_tstamp:18426836259808 data:0x0000000001020003
    kworker/3:14-185     [003] .... 18407.580006: rtcpu_vinotify_event: tstamp:575839253935 cch:0 vi:1 tag:**CHANSEL_FAULT** channel:0x23 frame:0 vi_tstamp:18426855426304 data:**0x0000000002cf0202**
    kworker/3:14-185     [003] .... 18407.580006: rtcpu_vinotify_event: tstamp:575839254088 cch:0 vi:1 tag:ATOMP_FRAME_DONE channel:0x23 frame:0 vi_tstamp:18426855426912 data:0x0000000000000000
    kworker/3:14-185     [003] .... 18407.580006: rtcpu_vinotify_event: tstamp:575839254220 cch:0 vi:1 tag:**CHANSEL_FAULT** channel:0x23 frame:0 vi_tstamp:18426855443424 data:**0x0000000002d00240**
    kworker/3:14-185     [003] .... 18407.580007: rtcpu_vinotify_event: tstamp:575839885165 cch:0 vi:1 tag:FE channel:0x00 frame:0 vi_tstamp:18426870893728 data:0x0000000000000022
    kworker/3:14-185     [003] .... 18407.580007: rtcpu_vinotify_event: tstamp:575839885304 cch:0 vi:1 tag:ATOMP_FE channel:0x00 frame:0 vi_tstamp:18426870893728 data:0x0000000800000000
    kworker/3:14-185     [003] .... 18407.580007: rtcpu_vinotify_event: tstamp:575839885456 cch:0 vi:1 tag:FS channel:0x00 frame:0 vi_tstamp:18426875126080 data:0x0000000000000012
    kworker/3:14-185     [003] .... 18407.580007: rtcpu_vinotify_event: tstamp:575839885592 cch:0 vi:1 tag:ATOMP_FS channel:0x00 frame:0 vi_tstamp:18426875126080 data:0x0000000800000000
    kworker/3:14-185     [003] .... 18407.580007: rtcpu_vinotify_event: tstamp:575839885744 cch:0 vi:1 tag:CHANSEL_PXL_SOF channel:0x23 frame:0 vi_tstamp:18426876243296 data:0x0000000000000001
    kworker/3:14-185     [003] .... 18407.580008: rtcpu_vinotify_event: tstamp:575839885876 cch:0 vi:1 tag:VIFALC_ACTIONLST channel:0x23 frame:0 vi_tstamp:18426876244864 data:0x0000000008020004
    kworker/3:14-185     [003] .... 18407.580008: rtcpu_vinotify_event: tstamp:575839886029 cch:0 vi:1 tag:**CHANSEL_FAULT** channel:0x23 frame:0 vi_tstamp:18426876252832 data:**0x0000000000000200**
    kworker/3:14-185     [003] .... 18407.580008: rtcpu_vinotify_event: tstamp:575839886161 cch:0 vi:1 tag:VIFALC_ACTIONLST channel:0x23 frame:0 vi_tstamp:18426876259552 data:0x0000000001020004
    kworker/3:14-185     [003] .... 18407.635999: rtcpu_vinotify_event: tstamp:575840504709 cch:0 vi:1 tag:**CHANSEL_FAULT** channel:0x23 frame:0 vi_tstamp:18426895426048 data:**0x0000000002cf0202**
    kworker/3:14-185     [003] .... 18407.636000: rtcpu_vinotify_event: tstamp:575840504853 cch:0 vi:1 tag:ATOMP_FRAME_DONE channel:0x23 frame:0 vi_tstamp:18426895426656 data:0x0000000000000000
    kworker/3:14-185     [003] .... 18407.636000: rtcpu_vinotify_event: tstamp:575840505003 cch:0 vi:1 tag:**CHANSEL_FAULT** channel:0x23 frame:0 vi_tstamp:18426895443200 data:**0x0000000002d00240**
    kworker/3:14-185     [003] .... 18407.636001: rtcpu_vinotify_error: tstamp:575841133390 cch:0 vi:1 tag:**CHANSEL_NOMATCH** channel:0x04 frame:0 vi_tstamp:18426916243008 data:**0x00000000000003c9**
    kworker/3:14-185     [003] .... 18407.636001: rtcpu_vinotify_event: tstamp:575841180660 cch:0 vi:1 tag:FE channel:0x00 frame:0 vi_tstamp:18426910893440 data:0x0000000000000022
    kworker/3:14-185     [003] .... 18407.636002: rtcpu_vinotify_event: tstamp:575841180815 cch:0 vi:1 tag:ATOMP_FE channel:0x00 frame:0 vi_tstamp:18426910893472 data:0x0000000800000000
    kworker/3:14-185     [003] .... 18407.636002: rtcpu_vinotify_event: tstamp:575841180946 cch:0 vi:1 tag:FS channel:0x00 frame:0 vi_tstamp:18426915125792 data:0x0000000000000012
    kworker/3:14-185     [003] .... 18407.636002: rtcpu_vinotify_event: tstamp:575841181095 cch:0 vi:1 tag:**CHANSEL_NOMATCH** channel:0x04 frame:0 vi_tstamp:18426916243008 data:**0x00000000000003c9**
    kworker/3:14-185     [003] .... 18407.692001: rtcpu_vinotify_error: tstamp:575842383380 cch:0 vi:1 tag:CHANSEL_NOMATCH channel:0x04 frame:0 vi_tstamp:18426956242752 data:0x00000000000003c9
    kworker/3:14-185     [003] .... 18407.692002: rtcpu_vinotify_event: tstamp:575842532922 cch:0 vi:1 tag:FE channel:0x00 frame:0 vi_tstamp:18426950893216 data:0x0000000000000022
    kworker/3:14-185     [003] .... 18407.692002: rtcpu_vinotify_event: tstamp:575842533074 cch:0 vi:1 tag:FS channel:0x00 frame:0 vi_tstamp:18426955125536 data:0x0000000000000012
    kworker/3:14-185     [003] .... 18407.692002: rtcpu_vinotify_event: tstamp:575842533206 cch:0 vi:1 tag:CHANSEL_NOMATCH channel:0x04 frame:0 vi_tstamp:18426956242752 data:0x00000000000003c9
    kworker/3:14-185     [003] .... 18407.692002: rtcpu_vinotify_event: tstamp:575843547022 cch:0 vi:1 tag:FE channel:0x00 frame:0 vi_tstamp:18426990892928 data:0x0000000000000022
    kworker/3:14-185     [003] .... 18407.692003: rtcpu_vinotify_error: tstamp:575843633368 cch:0 vi:1 tag:CHANSEL_NOMATCH channel:0x04 frame:0 vi_tstamp:18426996242464 data:0x00000000000003c9
    kworker/3:14-185     [003] .... 18407.747996: rtcpu_vinotify_event: tstamp:575843885033 cch:0 vi:1 tag:FS channel:0x00 frame:0 vi_tstamp:18426995125248 data:0x0000000000000012
    kworker/3:14-185     [003] .... 18407.747997: rtcpu_vinotify_event: tstamp:575843885189 cch:0 vi:1 tag:CHANSEL_NOMATCH channel:0x04 frame:0 vi_tstamp:18426996242464 data:0x00000000000003c9
    kworker/3:14-185     [003] .... 18407.747997: rtcpu_vinotify_error: tstamp:575844883344 cch:0 vi:1 tag:CHANSEL_NOMATCH channel:0x04 frame:0 vi_tstamp:18427036242208 data:0x00000000000003c9
    kworker/3:14-185     [003] .... 18407.747997: rtcpu_vinotify_event: tstamp:575844883805 cch:0 vi:1 tag:FE channel:0x00 frame:0 vi_tstamp:18427030892640

Device tree:

	pix_clk_hz = "100000000";

	num_lanes = "4";
	tegra_sinterface = "serial_c";

	mode_type = "yuv";
	pixel_phase = "yuyv";
	csi_pixel_bit_depth = "16";

	active_w = "1920";
	active_h = "1080";

	line_length = "1920";

	embedded_metadata_height = "0";

I tried the follow actions, but still reports error:

  1. Boost the rates as Jetson/l4t/Camera BringUp - eLinux.org
  2. Narrow down active_w/active_h/line_length, even to 1
  3. Increase embedded_metadata_height(no effection, for serdes pipeline only mapped FS/FE/YUV422-8 datatypes)
  4. Burn RCE FW to debug version, and find no useful information.

I debugged this for days, and have no idea now.
Could you help me or give me some advice, thank you very much!

dmesg.log (3.3 KB)
trace.log (29.1 KB)

hello Vestiges,

may I also know which Jetpack release version you’re working with?
could you please check sensor format dumps.. $ v4l2-ctl -d /dev/video1 --list-formats-ext

the CHANSEL_FAULT with error code 0x200 it means a line ends with fewer pixels than expected. (but, it’s not reporting how many is expected). you should only changing active_w for trial and error.
line_length is the settings of pixel line width horizontal timing size for the sensor mode. you may double check the sensor spec, please also aware this value must be greater than or equal to active_w.

according to the logs..
it looks weird discarding frame warning has reported before stream_set_config.
could you please try add set_mode_delay_ms for testing.
for instance,

[18407.417755] ov490_set_mode, unimplement function...
[18407.421367] ov490_start_streaming, unimplement function...
[18407.452048] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 512
[18407.464008] [RCE] tegra_nvcsi_stream_set_config(vm0, stream=2, csi=2)
[18407.464011] [RCE] MIPI clock = 200000 kHz, tHS-SETTLE = 0, tCLK-SETTLE = 0

besides, just an FYI, the output capabilities of v4l2src shows that for video/x-raw it supports YUY2, YVYU, and UYVY, YUYV is defined as YUY2 actually.

Hello, JerryChang,

Thank you for your reply!

I solved this problem later, the reason is “frmfmt” I configed in driver code not match to the serdes output.
This driver code is ported from another 1M sensor, and I forgot modify the params.
The line number in CHANSEL_FAULT 0x0000000002cf0202 (719)reminded me and I found the mistake finnally.
It works well after I corrected the width/height param.
Besides, my Jetpack version is 5.1.2

Thank you again!

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.