Camera can't capture on TX2 NX

Hi,
We are porting fpd-linkⅢ camera driver on TX2 NX with jetson-xavier-nx-devkit-tx2-nx ( tegra186-p3636-0001-p3509-0000-a01 ), deserializer is ds90ub954 and serializer is ds90ub933, refer to gmsl (max9296/max9295) driver. Now, we have configured the serdes and the deserializer is giving out mipi data, but we’re having trouble with the preview. The trace log shows CHANSEL_SHORT_FRAME.

command for capture:
v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=UYVY --set-ctrl bypass_mode=0 --stream-mmap --stream-count=1 --stream-to=t.yuv -d /dev/video0 --all

Trace for debug information:

     kworker/3:2-1137  [003] ....    82.156590: rtos_queue_send_failed: tstamp:2807756079 queue:0x0b4a7698
     kworker/3:2-1137  [003] ....    82.156596: rtcpu_vinotify_event: tstamp:2807816275 tag:CSIMUX_STREAM channel:0xff frame:0 vi_tstamp:2807815886 data:0x00010000
     kworker/3:2-1137  [003] ....    82.212478: rtos_queue_peek_from_isr_failed: tstamp:2809927517 queue:0x0b4b4940
     kworker/3:2-1137  [003] ....    82.268519: rtcpu_vinotify_event: tstamp:2810799619 tag:CHANSEL_SHORT_FRAME channel:0x10 frame:2 vi_tstamp:2810798901 data:0x00000001
     kworker/3:2-1137  [003] ....    82.268529: rtcpu_vinotify_event: tstamp:2810799947 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:2810798903 data:0x00000001
 vi-output, imx3-7846  [003] ....    82.357059: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt cb
 vi-output, imx3-7846  [003] ....    82.357091: tegra_channel_capture_frame: sof:-549620698956.-271060618432
     kworker/3:2-1137  [003] ....    82.380471: rtos_queue_send_from_isr_failed: tstamp:2814582553 queue:0x0b4a7698
     kworker/3:2-1137  [003] ....    82.380478: rtos_queue_send_from_isr_failed: tstamp:2814582664 queue:0x0b4ab1a8

dmesg_log.txt (175.7 KB)
trace_log.txt (1.3 MB)

Boost the clocks to try.
If didn’t help that tell the sensor output size less than expected.

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