Large size raw sensor issue

Hello,

Large resolution sensor is not working propely.
This one has 7712x2176 resolution.
On the other hand, 3840x2160 resolution works well.

It stopped after 4 frame error output.
Is there any solution?

Plus, it works normally using this sensor on xavier. (only orin issue)

[ dts settings ]

         mode0 {
             mclk_khz = "25000";
             num_lanes = "4";
             discontinuous_clk = "no";
             dpcm_enable = "false";
             cil_settletime = "0";
             csi_pixel_bit_depth = "12";
             mode_type = "bayer";
             dynamic_pixel_bit_depth = "12";
             pixel_phase = "gbrg";
             active_w = "7712";
             active_h = "2176";
             readout_orientation = "0";
             line_length = "5304";
             inherent_gain = "1";
             mclk_multiplier = "11";
             pix_clk_hz = "365976000";
             serdes_pix_clk_hz = "0";
             min_hdr_ratio = "1";
             max_hdr_ratio = "300";
             gain_factor = "10000";
             min_gain_val = "10000";
             max_gain_val = "160000";
             step_gain_val = "1000";
             default_gain = "10000";
             framerate_factor = "1000000";
             min_framerate = "30000000";
             max_framerate = "30000000";
             step_framerate = "1000000";
             default_framerate = "30000000";
             exposure_factor = "10000000";
             min_exp_time = "10000000";
             max_exp_time = "200000000";
             step_exp_time = "10000000";
             default_exp_time = "180000000";
             embedded_metadata_height = "0";
         };

[ dmesg logs ]

[ 3187.035213] DBG-MMM sam_is_write_reg:write addr 0x8b12 < val 0x100
[ 3187.035383] DBG-MMM samis_start_streaming
[ 3187.082221] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 1, flags: 0, err_data 4194400
[ 3187.116754] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 2, flags: 0, err_data 4194400
[ 3187.151284] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 3, flags: 0, err_data 4194400
[ 3187.185838] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 4, flags: 0, err_data 4194400

[ trace log ]

kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043384141 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043384141 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043390710 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043390710 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043399626 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043399626 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217377: rtcpu_nvcsi_intr: tstamp:101043400186 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043400186 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043400737 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043400737 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043401502 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043401502 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043422612 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_nvcsi_intr: tstamp:101043422612 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217378: rtcpu_vinotify_error: tstamp:101043449210 cch:0 vi:0 tag:CSIMUX_FRAME channel:0x00 frame:2 vi_tstamp:3233390273152 data:0x0000000200400060
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_vinotify_event: tstamp:101043458853 cch:0 vi:0 tag:CSIMUX_FRAME channel:0x00 frame:2 vi_tstamp:3233390273152 data:0x0000000200400060
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_nvcsi_intr: tstamp:101043504719 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_nvcsi_intr: tstamp:101043504719 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_nvcsi_intr: tstamp:101043505282 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_nvcsi_intr: tstamp:101043505282 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_nvcsi_intr: tstamp:101043507385 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217379: rtcpu_nvcsi_intr: tstamp:101043507385 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_vinotify_error: tstamp:101043509099 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:3 vi_tstamp:3233392139872 data:0x0000000000000589
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_vinotify_event: tstamp:101043509643 cch:0 vi:0 tag:FS channel:0x00 frame:3 vi_tstamp:3233391492480 data:0x0000000300000010
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_vinotify_event: tstamp:101043509775 cch:0 vi:0 tag:CHANSEL_NOMATCH channel:0x01 frame:3 vi_tstamp:3233392139872 data:0x0000000000000589
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_nvcsi_intr: tstamp:101043510352 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_nvcsi_intr: tstamp:101043510352 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_nvcsi_intr: tstamp:101043512228 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_nvcsi_intr: tstamp:101043512228 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217380: rtcpu_nvcsi_intr: tstamp:101043512778 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004
 kworker/4:1-4007    [004] ....  3210.217381: rtcpu_nvcsi_intr: tstamp:101043512778 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:0 vc:0 status:0x00000004

Did you boost the clocks to try?

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

Also check the pix_clk_hz as below “Note” from programing guide.

Skew calibration is required if sensor or deserializer is using DPHY, and the output data rate is > 1.5Gbps.
An initiation deskew signal should be sent by sensor or deserializer to perform the skew calibration. If the deskew signals is not sent, the receiver will stall, and the capture will time out.
You can calculate the output data rate with the following equation:

Output data rate = (sensor or deserializer pixel clock in hertz) * (bits per pixel) / (number of CSI lanes)

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