Serializer max9295+DESerializer max96712 NULL VI channel received

hi I am Chen Xianfei, a driving engineer from LCFC. We use serializer max9295 and deserializer max96712, but they cannot bring up properly on the Origin NX platform. We have conducted the following debugging and attached the log file.In addition, using the same deserializer and serializer on Origin AGX can bring up normally. So I used an oscilloscope to grab the origin AGX mipi csi data waveform and compare it with the mipi csi data waveform on origin nx, and also uploaded it to the attachment

lcfc@lcfc-desktop:~$ v4l2-ctl --all --device /dev/video0
Driver Info:
 Driver name      : tegra-video
 Card type        : vi-output, ox03c10_a 2-0010
 Bus info         : platform:tegra-capture-vi:0
 Driver version   : 5.10.104
 Capabilities     : 0x84200001
  Video Capture
  Streaming
  Extended Pix Format
  Device Capabilities
 Device Caps      : 0x04200001
  Video Capture
  Streaming
  Extended Pix Format
Media Driver Info:
 Driver name      : tegra-camrtc-ca
 Model            : NVIDIA Tegra Video Input Device
 Serial           : 
 Bus info         : 
 Media version    : 5.10.104
 Hardware revision: 0x00000003 (3)
 Driver version   : 5.10.104
Interface Info:
 ID               : 0x03000011
 Type             : V4L Video
Entity Info:
 ID               : 0x0000000f (15)
 Name             : vi-output, ox03c10_a 2-0010
 Function         : V4L2 I/O
 Pad 0x01000010   : 0: Sink
   Link 0x02000015: from remote pad 0x1000003 of entity '13e40000.host1x:nvcsi@15a00000-': Data, Enabled
Priority: 2
Video input : 0 (Camera 0: no power)
Format Video Capture:
 Width/Height      : 1920/1080
 Pixel Format      : 'UYVY' (UYVY 4:2:2)
 Field             : None
 Bytes per Line    : 3840
 Size Image        : 4147200
 Colorspace        : sRGB
 Transfer Function : Default (maps to sRGB)
 YCbCr/HSV Encoding: Default (maps to ITU-R 601)
 Quantization      : Default (maps to Limited Range)
 Flags             : 

Camera Controls

                     group_hold 0x009a2003 (bool)   : default=0 value=0 flags=execute-on-write
                     frame_rate 0x009a200b (int64)  : min=30000000 max=30000000 step=30000000 default=30000000 value=30000000 flags=slider
           sensor_configuration 0x009a2032 (u32)    : min=0 max=4294967295 step=1 default=0 [22] flags=read-only, volatile, has-payload
         sensor_mode_i2c_packet 0x009a2033 (u32)    : min=0 max=4294967295 step=1 default=0 [1026] flags=read-only, volatile, has-payload
      sensor_control_i2c_packet 0x009a2034 (u32)    : min=0 max=4294967295 step=1 default=0 [1026] flags=read-only, volatile, has-payload
                    bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0
    0: 0 (0x0)
    1: 1 (0x1)
                override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0
    0: 0 (0x0)
    1: 1 (0x1)
                   height_align 0x009a2066 (int)    : min=1 max=16 step=1 default=1 value=1
                     size_align 0x009a2067 (intmenu): min=0 max=2 default=0 value=0
    0: 1 (0x1)
    1: 65536 (0x10000)
    2: 131072 (0x20000)
               write_isp_format 0x009a2068 (int)    : min=1 max=1 step=1 default=1 value=1
       sensor_signal_properties 0x009a2069 (u32)    : min=0 max=4294967295 step=1 default=0 [30][18] flags=read-only, has-payload
        sensor_image_properties 0x009a206a (u32)    : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload
      sensor_control_properties 0x009a206b (u32)    : min=0 max=4294967295 step=1 default=0 [30][36] flags=read-only, has-payload
              sensor_dv_timings 0x009a206c (u32)    : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload
               low_latency_mode 0x009a206d (bool)   : default=0 value=0
               preferred_stride 0x009a206e (int)    : min=0 max=65535 step=1 default=0 value=0
                   sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=1 flags=read-only
lcfc@lcfc-desktop:~$ 
[  272.658061] bwmgr API not supported
[  272.667460] ox03c10_start_streaming-------ox03c10_start_streaming---a-on---tc_dev->s_data->pdata->pwr_gpio =397 
[  275.198463] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[  275.208980] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[  275.225682] (NULL device *): vi_capture_control_message: NULL VI channel received
[  275.233781] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[  275.246550] (NULL device *): vi_capture_control_message: NULL VI channel received
[  275.255642] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[  275.270639] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[  278.014519] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[  278.024306] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[  278.037594] (NULL device *): vi_capture_control_message: NULL VI channel received
[  278.045940] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[  278.057102] (NULL device *): vi_capture_control_message: NULL VI channel received
[  278.065206] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[  278.079755] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[  280.830451] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[  280.839955] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[  280.856206] (NULL device *): vi_capture_control_message: NULL VI channel received
[  280.864236] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[  280.875320] (NULL device *): vi_capture_control_message: NULL VI channel received
[  280.883292] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[  280.895112] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[  283.646532] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[  283.656020] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[  283.672563] (NULL device *): vi_capture_control_message: NULL VI channel received
[  283.680597] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[  283.691542] (NULL device *): vi_capture_control_message: NULL VI channel received
[  283.699585] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[  283.711629] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[  286.462460] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[  286.471971] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[  286.483097] (NULL device *): vi_capture_control_message: NULL VI channel received
[  286.491873] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[  286.506629] (NULL device *): vi_capture_control_message: NULL VI channel received
[  286.514907] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[  286.527550] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[  289.282366] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[  289.292244] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[  289.304560] (NULL device *): vi_capture_control_message: NULL VI channel received
[  289.312670] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[  289.323646] (NULL device *): vi_capture_control_message: NULL VI channel received
[  289.331670] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[  289.343416] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel



trace.zip (11.6 MB)

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
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

echo 1 > /sys/kernel/debug/tracing/tracing_on
echo 30720 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
echo 2 > /sys/kernel/debug/camrtc/log-level
echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable
echo > /sys/kernel/debug/tracing/trace
cat /sys/kernel/debug/tracing/trace

tracer: nop

entries-in-buffer/entries-written: 871312/1510962 #P:4

_-----=> irqs-off

/ _----=> need-resched

| / _—=> hardirq/softirq

|| / _–=> preempt-depth

||| / delay

TASK-PID CPU# |||| TIMESTAMP FUNCTION

| | | |||| | |

    v4l2-ctl-2652    [001] ....   272.655610: tegra_channel_set_stream: enable : 0x1
    v4l2-ctl-2652    [001] ....   272.666792: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x1
    v4l2-ctl-2652    [001] ....   272.666808: csi_s_stream: enable : 0x1
    v4l2-ctl-2652    [001] ....   272.667374: tegra_channel_set_stream: ox03c10_a 2-0010 : 0x1

vi-output, ox03-2654 [001] … 275.269840: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [001] … 280.894541: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [001] … 283.710894: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [001] … 289.342920: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [001] … 292.158777: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [001] … 294.975085: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [001] … 297.793406: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13

CPU 2 buffer started

vi-output, ox03-2654 [002] … 300.607883: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [002] … 303.416840: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [002] … 306.238757: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [002] … 309.061434: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13

CPU 3 buffer started

vi-output, ox03-2654 [003] … 311.868054: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [003] … 314.682451: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
vi-output, ox03-2654 [002] … 325.948392: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13

CPU 0 buffer started
 kworker/0:2-96      [000] ....   326.975886: rtcpu_nvcsi_intr: tstamp:10931281967 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975888: rtcpu_nvcsi_intr: tstamp:10931282539 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975891: rtcpu_nvcsi_intr: tstamp:10931285315 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975893: rtcpu_nvcsi_intr: tstamp:10931287525 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975895: rtcpu_nvcsi_intr: tstamp:10931289196 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975897: rtcpu_nvcsi_intr: tstamp:10931292899 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975900: rtcpu_nvcsi_intr: tstamp:10931294002 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975902: rtcpu_nvcsi_intr: tstamp:10931296784 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975904: rtcpu_nvcsi_intr: tstamp:10931300486 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975907: rtcpu_nvcsi_intr: tstamp:10931302335 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975909: rtcpu_nvcsi_intr: tstamp:10931306241 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975911: rtcpu_nvcsi_intr: tstamp:10931313091 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975913: rtcpu_nvcsi_intr: tstamp:10931316045 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975916: rtcpu_nvcsi_intr: tstamp:10931316421 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975918: rtcpu_nvcsi_intr: tstamp:10931316975 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975958: rtcpu_nvcsi_intr: tstamp:10931318077 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975960: rtcpu_nvcsi_intr: tstamp:10931319751 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975963: rtcpu_nvcsi_intr: tstamp:10931321426 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975965: rtcpu_nvcsi_intr: tstamp:10931322348 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975968: rtcpu_nvcsi_intr: tstamp:10931326410 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975970: rtcpu_nvcsi_intr: tstamp:10931326976 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975972: rtcpu_nvcsi_intr: tstamp:10931327335 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975975: rtcpu_nvcsi_intr: tstamp:10931331963 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975978: rtcpu_nvcsi_intr: tstamp:10931332298 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
 kworker/0:2-96      [000] ....   326.975980: rtcpu_nvcsi_intr: tstamp:10931332643 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080

Did you connect to CSI0? CSI0 D1 and CSI1 D0 P/N will always be swizzled for
P/N need add lane_polarity=6 in camera device tree.

I currently only configure one csi2 data0 as output. It seems that the waveform on csi2 data0 is present, but I still cannot obtain the data using v4l ctl
v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=UYVY --stream-mmap=0 --stream-count=10000 -d /dev/video0
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
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

echo 1 > /sys/kernel/debug/tracing/tracing_on
echo 30720 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
echo 2 > /sys/kernel/debug/camrtc/log-level
echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable
echo > /sys/kernel/debug/tracing/trace
cat /sys/kernel/debug/tracing/trace
trace0712.log (12.4 KB)

Looks like nvcsi/vi didn’t receive any validate data from sensor.
BTW, don’t just post the whole kernel log to make the review hardly if needed attached as file.

Thanks

tegra234-camera-ox03c10-a00.dtsi (24.2 KB)
tegra234-p3737-0000-camera-ox03c10-a00.dtsi (2.9 KB)
tegra234-p3737-camera-modules.dtsi (6.2 KB)
dmesg.log (74.3 KB)
The attachment is the kernel log and dts. Could you please help review it

I don’t have idea for you HW design to help you to review the dts.

kernel The following error,May I ask how to solve this problem?

[ 70.497263] ox03c10_start_streaming-------ox03c10_start_streaming—a-on—tc_dev->s_data->pdata->pwr_gpio =397
[ 73.025038] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 73.034187] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 73.044612] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 73.052345] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=2, csi_port=2
[ 73.063005] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 73.070706] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 2 vc- 0
[ 73.081482] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[ 75.841085] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 75.850293] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 75.860587] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 75.868317] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=2, csi_port=2

the kernel log “(NULL device *): vi_capture_control_message: NULL VI channel received”,
The source code reported an error here, indicating that there is a problem in that area

source/kernel/nvidia/drivers/media/platform/tegra/camera/fusa-capture/capture-vi.c
int vi_capture_control_message(
struct tegra_vi_channel *chan,
struct vi_capture_control_msg *msg)
{
struct vi_capture *capture;
void *msg_cpy;
struct CAPTURE_CONTROL_MSG *resp_msg;
int err = 0;

if (chan == NULL) {
	dev_err(NULL,"%s: NULL VI channel received\n", __func__);
	return -ENODEV;
}

lcfc@lcfc-desktop:~$ v4l2-ctl --all --device /dev/video0
Driver Info:
Driver name : tegra-video
Card type : vi-output, ox03c10_a 2-0010
Bus info : platform:tegra-capture-vi:2
Driver version : 5.10.104
Capabilities : 0x84200001
Video Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Media Driver Info:
Driver name : tegra-camrtc-ca
Model : NVIDIA Tegra Video Input Device
Serial :
Bus info :
Media version : 5.10.104
Hardware revision: 0x00000003 (3)
Driver version : 5.10.104
Interface Info:
ID : 0x0300000b
Type : V4L Video
Entity Info:
ID : 0x00000009 (9)
Name : vi-output, ox03c10_a 2-0010
Function : V4L2 I/O
Pad 0x0100000a : 0: Sink
Link 0x0200000f: from remote pad 0x1000003 of entity ‘13e40000.host1x:nvcsi@15a00000-’: Data, Enabled
Priority: 2
Video input : 0 (Camera 2: ok)
Format Video Capture:
Width/Height : 1920/1080
Pixel Format : ‘UYVY’ (UYVY 4:2:2)
Field : None
Bytes per Line : 3840
Size Image : 4147200
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Limited Range)
Flags :

Camera Controls

                 group_hold 0x009a2003 (bool)   : default=0 value=0 flags=execute-on-write
                 frame_rate 0x009a200b (int64)  : min=30000000 max=30000000 step=30000000 default=30000000 value=30000000 flags=slider
       sensor_configuration 0x009a2032 (u32)    : min=0 max=4294967295 step=1 default=0 [22] flags=read-only, volatile, has-payload
     sensor_mode_i2c_packet 0x009a2033 (u32)    : min=0 max=4294967295 step=1 default=0 [1026] flags=read-only, volatile, has-payload
  sensor_control_i2c_packet 0x009a2034 (u32)    : min=0 max=4294967295 step=1 default=0 [1026] flags=read-only, volatile, has-payload
                bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0
			0: 0 (0x0)
			1: 1 (0x1)
            override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0
			0: 0 (0x0)
			1: 1 (0x1)
               height_align 0x009a2066 (int)    : min=1 max=16 step=1 default=1 value=1
                 size_align 0x009a2067 (intmenu): min=0 max=2 default=0 value=0
			0: 1 (0x1)
			1: 65536 (0x10000)
			2: 131072 (0x20000)
           write_isp_format 0x009a2068 (int)    : min=1 max=1 step=1 default=1 value=1
   sensor_signal_properties 0x009a2069 (u32)    : min=0 max=4294967295 step=1 default=0 [30][18] flags=read-only, has-payload
    sensor_image_properties 0x009a206a (u32)    : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload
  sensor_control_properties 0x009a206b (u32)    : min=0 max=4294967295 step=1 default=0 [30][36] flags=read-only, has-payload
          sensor_dv_timings 0x009a206c (u32)    : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload
           low_latency_mode 0x009a206d (bool)   : default=0 value=0
           preferred_stride 0x009a206e (int)    : min=0 max=65535 step=1 default=0 value=0
               sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=1 flags=read-only

lcfc@lcfc-desktop:~$

lcfc@lcfc-desktop:~$ v4l2-compliance -d /dev/video0
v4l2-compliance SHA: not available, 64 bits

Compliance test for tegra-video device /dev/video0:

Driver Info:
Driver name : tegra-video
Card type : vi-output, ox03c10_a 2-0010
Bus info : platform:tegra-capture-vi:2
Driver version : 5.10.104
Capabilities : 0x84200001
Video Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Media Driver Info:
Driver name : tegra-camrtc-ca
Model : NVIDIA Tegra Video Input Device
Serial :
Bus info :
Media version : 5.10.104
Hardware revision: 0x00000003 (3)
Driver version : 5.10.104
Interface Info:
ID : 0x0300000b
Type : V4L Video
Entity Info:
ID : 0x00000009 (9)
Name : vi-output, ox03c10_a 2-0010
Function : V4L2 I/O
Pad 0x0100000a : 0: Sink
Link 0x0200000f: from remote pad 0x1000003 of entity ‘13e40000.host1x:nvcsi@15a00000-’: Data, Enabled

Required ioctls:
test MC information (see ‘Media Driver Info’ above): OK
test VIDIOC_QUERYCAP: OK

Allow for multiple opens:
test second /dev/video0 open: OK
test VIDIOC_QUERYCAP: OK
test VIDIOC_G/S_PRIORITY: OK
test for unlimited opens: OK

Debug ioctls:
test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
test VIDIOC_LOG_STATUS: OK

Input ioctls:
test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
test VIDIOC_ENUMAUDIO: OK (Not Supported)
test VIDIOC_G/S/ENUMINPUT: OK
test VIDIOC_G/S_AUDIO: OK (Not Supported)
Inputs: 1 Audio Inputs: 0 Tuners: 0

Output ioctls:
test VIDIOC_G/S_MODULATOR: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_ENUMAUDOUT: OK (Not Supported)
test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
test VIDIOC_G/S_AUDOUT: OK (Not Supported)
Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls (Input 0):
test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
test VIDIOC_QUERYCTRL: OK
test VIDIOC_G/S_CTRL: OK
test VIDIOC_G/S/TRY_EXT_CTRLS: OK
test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
Standard Controls: 1 Private Controls: 17

Format ioctls (Input 0):
fail: v4l2-test-formats.cpp(280): duplicate format 59565955 (UYVY)
test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: FAIL
fail: v4l2-test-formats.cpp(1280): ret && node->has_frmintervals
test VIDIOC_G/S_PARM: FAIL
test VIDIOC_G_FBUF: OK (Not Supported)
test VIDIOC_G_FMT: OK
test VIDIOC_TRY_FMT: OK
test VIDIOC_S_FMT: OK
test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
test Cropping: OK (Not Supported)
test Composing: OK (Not Supported)
test Scaling: OK (Not Supported)

Codec ioctls (Input 0):
test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
test VIDIOC_G_ENC_INDEX: OK (Not Supported)
test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 0):
fail: v4l2-test-buffers.cpp(715): q.create_bufs(node, 1, &fmt) != EINVAL
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: FAIL
test VIDIOC_EXPBUF: OK
test Requests: OK (Not Supported)

Total for tegra-video device /dev/video0: 45, Succeeded: 42, Failed: 3, Warnings: 0
lcfc@lcfc-desktop:~$

The attachment is our HW


Have check the programing guide to review your configure.

https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/SD/CameraDevelopment/SensorSoftwareDriverProgramming.html

trace0717.log (12.3 KB)
dmesg.log (106.3 KB)
examples.desktop (8.8 KB)
tegra234-camera-ox03c10-a00.dtsi (24.3 KB)
tegra234-p3737-camera-modules.dtsi (6.1 KB)
tegra234-p3737-0000-camera-ox03c10-a00.dtsi (2.9 KB)

The trace log tell didn’t receive any data from MIPI bus.

Thanks

hi ShaneCCC
Can you have any suggestions?

The port-index and bus-width looks like incorrect.
What the camera connect to?

trace0718.tar.gz (1.6 MB)
dmesg0718.log (99.4 KB)
tegra234-camera-ox03c10-a00.dtsi (24.3 KB)
This is my latest port configuration, but I still can’t receive data. Is there any further issue?

Hi, xianfei.chen

It looks like there are some errors in your device tree configuration.

Your video0 are CSI0 and CSI1, but your video1 and 2 and 3 are CSI2 and CSI3, why?

And your lane_polarity is always 6, but it should only need to be configured in CSI0 and CSI1.