TX2NX PXL_SOF syncpt timeout when reading image


My board is TX2NX, jetpack version 4.5.1.

I’m having IMX485 image sensor and driver working in binning mode 1932x1090 resolution. Now I want to add one more mode to have FHD 1920x1080 crop resolution from this binning mode.
From the datasheet, I added register settings for the crop (I did the same with all pixel mode crop from 3864x2180 → 3840x2160 without problem), added camera mode in device tree. But when trying to read raw image using v4l2, the dmesg gives “PXL_SOF syncpt timeout! err = -11” and v4l2-ctrl returns “VIDIOC_DQBUF: failed: Input/output error”

Please find the trace/dmesg/v4l2 output attached.
I tried following command to get raw image. Similar for binning 1932x1090 mode, just change the resolution. Binning 1932x1090 is working fine, binning crop 1920x1080 is having timeout.

v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=RG12 --stream-mmap --set-ctrl=bypass_mode=0,frame_rate=15000000,exposure=30000,gain=0 --stream-count=1 --stream-skip=10 -d /dev/video0 --verbose

And here is the code update:
Binned but not crop:
Screenshot from 2022-06-13 12-24-20

Binned and crop:
Screenshot from 2022-06-13 12-24-29

dmesg_binning.txt (144 Bytes)
dmesg_binning_crop.txt (1.6 KB)
log_binning.txt (2.4 KB)
log_binning_crop.txt (5.6 KB)
trace_binning.txt (24.2 KB)
trace_binning_crop.txt (50.3 KB)

Does this mean the CSI setups is not correct? Do you have any idea about where I should look into to solve?
Thank you so much.

Maybe check the trace log for more information.


Hi @ShaneCCC ,

The trace shows:

     kworker/4:1-5532  [004] ....  4225.661576: rtcpu_vinotify_event: tstamp:132310780864 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:132310780475 data:0x00000000
     kworker/4:1-5532  [004] ....  4225.661578: rtcpu_vinotify_event: tstamp:132310784385 tag:CHANSEL_PXL_SOF channel:0x00 frame:1 vi_tstamp:132310783867 data:0x00000001
     kworker/4:1-5532  [004] ....  4225.661579: rtcpu_vinotify_event: tstamp:132310784556 tag:CHANSEL_FAULT channel:0x00 frame:1 vi_tstamp:132310783929 data:0x00000200
     kworker/4:1-5532  [004] ....  4225.661579: rtcpu_vinotify_event: tstamp:132310785510 tag:CHANSEL_LOAD_FRAMED channel:0x01 frame:1 vi_tstamp:132310784699 data:0x08000000
     kworker/4:1-5532  [004] ....  4225.661580: rtcpu_vinotify_event: tstamp:132310785619 tag:CHANSEL_FAULT_FE channel:0x01 frame:1 vi_tstamp:132310784792 data:0x00000001
     kworker/4:1-5532  [004] ....  4225.661581: rtcpu_vinotify_event: tstamp:132310785757 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:132310784796 data:0x00000000

compare to the CHANSEL_FAULT bitfield from your link, it is actually PIXEL_SOF error, same as in dmesg.

Does this mean the StartOfFrame signal comes earlier than expected? Or something else? Thank you.

The CHANSEL_FAULT bitfield tell PIXEL_SHORT_LINE, that tell the output pixel less than expect.

CHANSEL_FAULT channel:0x00 frame:1 vi_tstamp:132310783929 data:0x00000200

Hi @ShaneCCC ,

Thank you for point it out. I will check more.
Another question is: is there a way to crop the image using VI with configuration? Is there any example if it is possible? Thank you.

I would suggest using VIC(NV Video Convertor) to crop.

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