Orin nano CSI0 cannot work

this is CSI0 connect;
this is CSI2 connect;
CSI port config as 4 lanes; this is the devicetree config:

#define BUS_WIDTH	4
#define BUS0_WIDTH	4
/ {
	tegra-capture-vi  {
		num-channels = <8>;
		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				ar0233yuv_vi_in0: endpoint {
					vc-id = <0>;
					port-index = <0>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out0>;
				};
			};
			port@1 {
				reg = <1>;
				ar0233yuv_vi_in1: endpoint {
					vc-id = <1>;
					port-index = <0>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out1>;
				};
			};
			port@2 {
				reg = <2>;
				ar0233yuv_vi_in2: endpoint {
					vc-id = <2>;
					port-index = <0>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out2>;
				};
			};
			port@3 {
				reg = <3>;
				ar0233yuv_vi_in3: endpoint {
					vc-id = <3>;
					port-index = <0>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out3>;
				};
			};
			port@4 {
				reg = <4>;
				ar0233yuv_vi_in4: endpoint {
					vc-id = <0>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out4>;
				};
			};
			port@5 {
				reg = <5>;
				ar0233yuv_vi_in5: endpoint {
					vc-id = <1>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out5>;
				};
			};
			port@6 {
				reg = <6>;
				ar0233yuv_vi_in6: endpoint {
					vc-id = <2>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out6>;
				};
			};
			port@7 {
				reg = <7>;
				ar0233yuv_vi_in7: endpoint {
					vc-id = <3>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out7>;
				};
			};
		};
	};

	host1x@13e00000 {
		nvcsi@15a00000 {
			num-channels = <8>;
			#address-cells = <1>;
			#size-cells = <0>;
			channel@0 {
				reg = <0>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in0: endpoint@0 {
							port-index = <0>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out0>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out0: endpoint@1 {
							remote-endpoint = <&ar0233yuv_vi_in0>;
						};
					};
				};
			};
			channel@1 {
				reg = <1>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in1: endpoint@2 {
							port-index = <0>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out1>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out1: endpoint@3 {
							remote-endpoint = <&ar0233yuv_vi_in1>;
						};
					};
				};
			};
			channel@2 {
				reg = <2>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in2: endpoint@4 {
							port-index = <0>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out2>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out2: endpoint@5 {
							remote-endpoint = <&ar0233yuv_vi_in2>;
						};
					};
				};
			};
			channel@3 {
				reg = <3>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in3: endpoint@6 {
							port-index = <0>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out3>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out3: endpoint@7 {
							remote-endpoint = <&ar0233yuv_vi_in3>;
						};
					};
				};
			};
			channel@4 {
				reg = <4>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in4: endpoint@8 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out4>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out4: endpoint@9 {
							remote-endpoint = <&ar0233yuv_vi_in4>;
						};
					};
				};
			};
			channel@5 {
				reg = <5>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in5: endpoint@10 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out5>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out5: endpoint@11 {
							remote-endpoint = <&ar0233yuv_vi_in5>;
						};
					};
				};
			};
			channel@6 {
				reg = <6>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in6: endpoint@12 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out6>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out6: endpoint@13 {
							remote-endpoint = <&ar0233yuv_vi_in6>;
						};
					};
				};
			};
			channel@7 {
				reg = <7>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in7: endpoint@14 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out7>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out7: endpoint@15 {
							remote-endpoint = <&ar0233yuv_vi_in7>;
						};
					};
				};
			};
		};
	};

	i2c@c240000 {						
		ar0233yuv_a@1a {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1a>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_a";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = "6";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out0: endpoint {
						vc-id = <0>;
						port-index = <0>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in0>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "a";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <0>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_b@1b {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1b>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_b";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = "6";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out1: endpoint {
						vc-id = <1>;
						port-index = <0>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in1>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "b";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <1>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_c@1c {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1c>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_c";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = "6";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out2: endpoint {
						vc-id = <2>;
						port-index = <0>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in2>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "c";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <2>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_d@1d {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1d>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_d";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = "6";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out3: endpoint {
						vc-id = <3>;
						port-index = <0>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in3>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "d";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <3>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};						
		ar0233yuv_e@1e {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1e>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_a";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out4: endpoint {
						vc-id = <0>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in4>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "a";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <0>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_f@1f {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1f>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_b";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out5: endpoint {
						vc-id = <1>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in5>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "b";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <1>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_g@20 {
			compatible = "nvidia,ar0233yuv";

			reg = <0x20>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_c";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out6: endpoint {
						vc-id = <2>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in6>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "c";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <2>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_h@21 {
			compatible = "nvidia,ar0233yuv";

			reg = <0x21>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_d";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out7: endpoint {
						vc-id = <3>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in7>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "d";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <3>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};
	};
};

/ {
	tegra-camera-platform {
		compatible = "nvidia, tegra-camera-platform";

		/**
		* Physical settings to calculate max ISO BW
		*
		* num_csi_lanes = <>;
		* Total number of CSI lanes when all cameras are active
		*
		* max_lane_speed = <>;
		* Max lane speed in Kbit/s
		*
		* min_bits_per_pixel = <>;
		* Min bits per pixel
		*
		* vi_peak_byte_per_pixel = <>;
		* Max byte per pixel for the VI ISO case
		*
		* vi_bw_margin_pct = <>;
		* Vi bandwidth margin in percentage
		*
		* max_pixel_rate = <>;
		* Max pixel rate in Kpixel/s for the ISP ISO case
		*
		* isp_peak_byte_per_pixel = <>;
		* Max byte per pixel for the ISP ISO case
		*
		* isp_bw_margin_pct = <>;
		* Isp bandwidth margin in percentage
		*/
		num_csi_lanes = <8>;
		max_lane_speed = <4000000>;
		min_bits_per_pixel = <10>;
		vi_peak_byte_per_pixel = <2>;
		vi_bw_margin_pct = <25>;
		max_pixel_rate = <7500000>;
		isp_peak_byte_per_pixel = <5>;
		isp_bw_margin_pct = <25>;

		/**
		 * The general guideline for naming badge_info contains 3 parts, and is as follows,
		 * The first part is the camera_board_id for the module; if the module is in a FFD
		 * platform, then use the platform name for this part.
		 * The second part contains the position of the module, ex. "rear" or "front".
		 * The third part contains the last 6 characters of a part number which is found
		 * in the module's specsheet from the vendor.
		 */
		modules {
			module0 {
				badge = "max96712_ar0233yuv";
				position = "front";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001a";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_a@1a";
				};
			};
			module1 {
				badge = "max96712_ar0233yuv";
				position = "rear";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001b";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_b@1b";
				};
			};
			module2 {
				badge = "max96712_ar0233yuv";
				position = "left";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001c";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_c@1c";
				};
			};
			module3 {
				badge = "max96712_ar0233yuv";
				position = "right";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001d";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_d@1d";
				};
			};
			module4 {
				badge = "max96712_ar0233yuv";
				position = "front";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001e";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_e@1e";
				};
			};
			module5 {
				badge = "max96712_ar0233yuv";
				position = "rear";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001f";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_f@1f";
				};
			};
			module6 {
				badge = "max96712_ar0233yuv";
				position = "left";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-0020";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_g@20";
				};
			};
			module7 {
				badge = "max96712_ar0233yuv";
				position = "right";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-0021";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_h@21";
				};
			};
		};
	};
};

The CSI2 port work correctly,but the CSI0 port can not startup. No data is being transferred on the CSI0 bus.


The serializer and deserializer configurations corresponding to the two sets of buses are the same.
Any ideas for troubleshooting?

Please try 2 lanes to confirm.
And get the trace log.

2 lane is same as 4 lane.

CSI0 can not use as 4 lane?

Devkit don’t support 4 lanes but customized carrier board.
Please modify the port-index to 1 for 2 lanes verifying.

按照你的建议,配置prot_index=1,2 lane;测试结果一样,没有任何改善。我们用的是自己设计的板子,提问开始的截图是CSI部分原理图;我们设计的是4 lane的总线。选用的是CSI0_CLK,CSI0_D0,CSI0_D1,CSI1_D0,CSI1_D1和解串器连接。针对我们的设计应该怎么修改设备树配置?

Only need to set the port-index and lane_polarity for it.

/*
 * Copyright (c) 2022-2023, NVIDIA CORPORATION.  All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#define BUS_WIDTH	4
#define BUS0_WIDTH	4
#define PORT0_IDX 0
#define LANE_POLARITY  "6"
/ {
	tegra-capture-vi  {
		num-channels = <8>;
		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				ar0233yuv_vi_in0: endpoint {
					vc-id = <0>;
					port-index = <PORT0_IDX>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out0>;
				};
			};
			port@1 {
				reg = <1>;
				ar0233yuv_vi_in1: endpoint {
					vc-id = <PORT0_IDX>;
					port-index = <1>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out1>;
				};
			};
			port@2 {
				reg = <2>;
				ar0233yuv_vi_in2: endpoint {
					vc-id = <2>;
					port-index = <PORT0_IDX>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out2>;
				};
			};
			port@3 {
				reg = <3>;
				ar0233yuv_vi_in3: endpoint {
					vc-id = <3>;
					port-index = <PORT0_IDX>;
					bus-width = <BUS0_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out3>;
				};
			};
			port@4 {
				reg = <4>;
				ar0233yuv_vi_in4: endpoint {
					vc-id = <0>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out4>;
				};
			};
			port@5 {
				reg = <5>;
				ar0233yuv_vi_in5: endpoint {
					vc-id = <1>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out5>;
				};
			};
			port@6 {
				reg = <6>;
				ar0233yuv_vi_in6: endpoint {
					vc-id = <2>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out6>;
				};
			};
			port@7 {
				reg = <7>;
				ar0233yuv_vi_in7: endpoint {
					vc-id = <3>;
					port-index = <2>;
					bus-width = <BUS_WIDTH>;
					remote-endpoint = <&ar0233yuv_csi_out7>;
				};
			};
		};
	};

	host1x@13e00000 {
		nvcsi@15a00000 {
			num-channels = <8>;
			#address-cells = <1>;
			#size-cells = <0>;
			channel@0 {
				reg = <0>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in0: endpoint@0 {
							port-index = <PORT0_IDX>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out0>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out0: endpoint@1 {
							remote-endpoint = <&ar0233yuv_vi_in0>;
						};
					};
				};
			};
			channel@1 {
				reg = <1>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in1: endpoint@2 {
							port-index = <PORT0_IDX>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out1>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out1: endpoint@3 {
							remote-endpoint = <&ar0233yuv_vi_in1>;
						};
					};
				};
			};
			channel@2 {
				reg = <2>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in2: endpoint@4 {
							port-index = <PORT0_IDX>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out2>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out2: endpoint@5 {
							remote-endpoint = <&ar0233yuv_vi_in2>;
						};
					};
				};
			};
			channel@3 {
				reg = <3>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in3: endpoint@6 {
							port-index = <PORT0_IDX>;
							bus-width = <BUS0_WIDTH>;
							remote-endpoint = <&ar0233yuv_out3>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out3: endpoint@7 {
							remote-endpoint = <&ar0233yuv_vi_in3>;
						};
					};
				};
			};
			channel@4 {
				reg = <4>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in4: endpoint@8 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out4>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out4: endpoint@9 {
							remote-endpoint = <&ar0233yuv_vi_in4>;
						};
					};
				};
			};
			channel@5 {
				reg = <5>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in5: endpoint@10 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out5>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out5: endpoint@11 {
							remote-endpoint = <&ar0233yuv_vi_in5>;
						};
					};
				};
			};
			channel@6 {
				reg = <6>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in6: endpoint@12 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out6>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out6: endpoint@13 {
							remote-endpoint = <&ar0233yuv_vi_in6>;
						};
					};
				};
			};
			channel@7 {
				reg = <7>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						ar0233yuv_csi_in7: endpoint@14 {
							port-index = <2>;
							bus-width = <BUS_WIDTH>;
							remote-endpoint = <&ar0233yuv_out7>;
						};
					};
					port@1 {
						reg = <1>;
						ar0233yuv_csi_out7: endpoint@15 {
							remote-endpoint = <&ar0233yuv_vi_in7>;
						};
					};
				};
			};
		};
	};

	i2c@c240000 {						
		ar0233yuv_a@1a {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1a>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_a";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "10";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = LANE_POLARITY;

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out0: endpoint {
						vc-id = <0>;
						port-index = <PORT0_IDX>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in0>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "a";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <0>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_b@1b {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1b>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_b";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = LANE_POLARITY;

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out1: endpoint {
						vc-id = <1>;
						port-index = <PORT0_IDX>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in1>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "b";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <1>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_c@1c {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1c>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_c";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = LANE_POLARITY;

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out2: endpoint {
						vc-id = <2>;
						port-index = <PORT0_IDX>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in2>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "c";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <2>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_d@1d {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1d>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_d";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";
				lane_polarity = LANE_POLARITY;

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out3: endpoint {
						vc-id = <3>;
						port-index = <PORT0_IDX>;
						bus-width = <BUS0_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in3>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "d";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <3>;
				num-lanes = <BUS0_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};						
		ar0233yuv_e@1e {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1e>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_a";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out4: endpoint {
						vc-id = <0>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in4>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "a";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <0>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_f@1f {
			compatible = "nvidia,ar0233yuv";

			reg = <0x1f>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_b";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out5: endpoint {
						vc-id = <1>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in5>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "b";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <1>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_g@20 {
			compatible = "nvidia,ar0233yuv";

			reg = <0x20>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_c";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out6: endpoint {
						vc-id = <2>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in6>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "c";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <2>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};					
		ar0233yuv_h@21 {
			compatible = "nvidia,ar0233yuv";

			reg = <0x21>;
			reg_mux = <0>;
			/* Physical dimensions of sensor */
			physical_w = "15.0";
			physical_h = "12.5";

			sensor_model ="ar0233yuv";

			/* Defines number of frames to be dropped by driver internally after applying */
			/* sensor crop settings. Some sensors send corrupt frames after applying */
			/* crop co-ordinates */
			post_crop_frame_drop = "0";

			/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
			use_decibel_gain = "true";

			/* enable CID_SENSOR_MODE_ID for sensor modes selection */
			use_sensor_mode_id = "true";

			mode0 {/*mode ar0233yuv_MODE_1920X1080_CROP_30FPS*/
				mclk_khz = "24000";
				num_lanes = "4";
				tegra_sinterface = "serial_d";
				vc_id = "0";
				phy_mode = "DPHY";
				discontinuous_clk = "no";
				dpcm_enable = "false";
				cil_settletime = "0";
				dynamic_pixel_bit_depth = "16";
				csi_pixel_bit_depth = "16";
				mode_type = "yuv";
				pixel_phase = "yuyv";

				active_w = "1920";
				active_h = "1080";
				readout_orientation = "0";
				line_length = "1920";
				inherent_gain = "1";
				mclk_multiplier = "200";
				pix_clk_hz = "74250000";
				serdes_pix_clk_hz = "833333333";

				gain_factor = "10";
				min_gain_val = "1"; /* dB */
				max_gain_val = "300"; /* dB */
				step_gain_val = "3"; /* 0.3 */
				default_gain = "0";
				min_hdr_ratio = "1";
				max_hdr_ratio = "1";
				framerate_factor = "1000000";
				min_framerate = "30000000";
				max_framerate = "30000000";
				step_framerate = "1";
				default_framerate = "30000000";
				exposure_factor = "1000000";
				min_exp_time = "59"; /*us, 2 lines*/
				max_exp_time = "16657";
				step_exp_time = "1";
				default_exp_time = "16657";/* us */
				embedded_metadata_height = "0";
			};
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					ar0233yuv_out7: endpoint {
						vc-id = <3>;
						port-index = <2>;
						bus-width = <BUS_WIDTH>;
						remote-endpoint = <&ar0233yuv_csi_in7>;
						};
					};
				};
			gmsl-link {
				src-csi-port = "b";
				dst-csi-port = "a";
				serdes-csi-link = "d";
				csi-mode = "1x4";
				st-vc = <0>;
				vc-id = <3>;
				num-lanes = <BUS_WIDTH>;
				streams =  "ued-u1", "yuv422";
				};
		};
	};
};

/ {
	tegra-camera-platform {
		compatible = "nvidia, tegra-camera-platform";

		/**
		* Physical settings to calculate max ISO BW
		*
		* num_csi_lanes = <>;
		* Total number of CSI lanes when all cameras are active
		*
		* max_lane_speed = <>;
		* Max lane speed in Kbit/s
		*
		* min_bits_per_pixel = <>;
		* Min bits per pixel
		*
		* vi_peak_byte_per_pixel = <>;
		* Max byte per pixel for the VI ISO case
		*
		* vi_bw_margin_pct = <>;
		* Vi bandwidth margin in percentage
		*
		* max_pixel_rate = <>;
		* Max pixel rate in Kpixel/s for the ISP ISO case
		*
		* isp_peak_byte_per_pixel = <>;
		* Max byte per pixel for the ISP ISO case
		*
		* isp_bw_margin_pct = <>;
		* Isp bandwidth margin in percentage
		*/
		num_csi_lanes = <8>;
		max_lane_speed = <4000000>;
		min_bits_per_pixel = <10>;
		vi_peak_byte_per_pixel = <2>;
		vi_bw_margin_pct = <25>;
		max_pixel_rate = <7500000>;
		isp_peak_byte_per_pixel = <5>;
		isp_bw_margin_pct = <25>;

		/**
		 * The general guideline for naming badge_info contains 3 parts, and is as follows,
		 * The first part is the camera_board_id for the module; if the module is in a FFD
		 * platform, then use the platform name for this part.
		 * The second part contains the position of the module, ex. "rear" or "front".
		 * The third part contains the last 6 characters of a part number which is found
		 * in the module's specsheet from the vendor.
		 */
		modules {
			module0 {
				badge = "max96712_ar0233yuv";
				position = "front";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001a";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_a@1a";
				};
			};
			module1 {
				badge = "max96712_ar0233yuv";
				position = "rear";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001b";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_b@1b";
				};
			};
			module2 {
				badge = "max96712_ar0233yuv";
				position = "left";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001c";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_c@1c";
				};
			};
			module3 {
				badge = "max96712_ar0233yuv";
				position = "right";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001d";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_d@1d";
				};
			};
			module4 {
				badge = "max96712_ar0233yuv";
				position = "front";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001e";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_e@1e";
				};
			};
			module5 {
				badge = "max96712_ar0233yuv";
				position = "rear";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-001f";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_f@1f";
				};
			};
			module6 {
				badge = "max96712_ar0233yuv";
				position = "left";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-0020";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_g@20";
				};
			};
			module7 {
				badge = "max96712_ar0233yuv";
				position = "right";
				orientation = "1";
				drivernode0 {
					pcl_id = "v4l2_sensor";
					devname = "ar0233yuv 30-0021";
					proc-device-tree = "/proc/device-tree/i2c@c240000/ar0233yuv_h@21";
				};
			};
		};
	};
};

这是我们当前的设备树配置;设置的有问题吗。

# tracer: nop
#
# entries-in-buffer/entries-written: 145/145   #P:6
#
#                                _-----=> irqs-off
#                               / _----=> need-resched
#                              | / _---=> hardirq/softirq
#                              || / _--=> preempt-depth
#                              ||| /     delay
#           TASK-PID     CPU#  ||||   TIMESTAMP  FUNCTION
#              | |         |   ||||      |         |
     kworker/2:3-138     [002] ....    93.129899: rtcpu_dbg_set_loglevel: tstamp:3282492421 old:0 new:2
        v4l2-ctl-2461    [002] ....   670.514068: tegra_channel_close: vi-output, ar0233yuv 1-001a
        v4l2-ctl-2461    [002] ....   670.514144: tegra_channel_set_stream: enable : 0x0
        v4l2-ctl-2461    [002] ....   670.514146: tegra_channel_set_stream: ar0233yuv 1-001a : 0x0
        v4l2-ctl-2461    [002] ....   670.514189: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-2461    [002] ....   670.514192: csi_s_stream: enable : 0x0
        v4l2-ctl-2461    [001] ....   670.520609: tegra_channel_set_power: ar0233yuv 1-001a : 0x0
        v4l2-ctl-2461    [001] ....   670.520619: camera_common_s_power: status : 0x0
        v4l2-ctl-2461    [001] ....   670.520826: tegra_channel_set_power: 13e40000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-2461    [001] ....   670.520829: csi_s_power: enable : 0x0
        v4l2-ctl-15988   [002] ....   671.348517: tegra_channel_open: vi-output, ar0233yuv 1-001a
        v4l2-ctl-15988   [002] ....   671.355014: tegra_channel_set_power: ar0233yuv 1-001a : 0x1
        v4l2-ctl-15988   [002] ....   671.355025: camera_common_s_power: status : 0x1
        v4l2-ctl-15988   [002] ....   671.355453: tegra_channel_set_power: 13e40000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-15988   [002] ....   671.355455: csi_s_power: enable : 0x1
        v4l2-ctl-15988   [002] ....   671.355826: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 10
        v4l2-ctl-15988   [002] ....   671.356097: tegra_channel_set_stream: enable : 0x1
        v4l2-ctl-15988   [002] ....   671.359063: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-15988   [002] ....   671.359066: csi_s_stream: enable : 0x1
        v4l2-ctl-15988   [002] ....   671.359259: tegra_channel_set_stream: ar0233yuv 1-001a : 0x1
     kworker/2:3-138     [002] ....   671.381931: rtcpu_vinotify_event: tstamp:21353887639 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:683323169664 data:0x759d580010000000
     kworker/2:3-138     [002] ....   671.381932: rtcpu_vinotify_event: tstamp:21353887901 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:683323179392 data:0x0000000031000001
     kworker/2:3-138     [002] ....   671.381933: rtcpu_vinotify_event: tstamp:21353888190 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:683323270432 data:0x759d550010000000
     kworker/2:3-138     [002] ....   671.381933: rtcpu_vinotify_event: tstamp:21353888439 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:683323280960 data:0x0000000031000002
     kworker/2:3-138     [002] ....   671.381935: rtcpu_string: tstamp:21353941406 id:0x04010000 str:"ERROR: camera-ip/nvcsi/nvcsi.c:1984 [nvcsi_strea"
     kworker/2:3-138     [002] ....   671.381936: rtcpu_string: tstamp:21353941595 id:0x04010000 str:"m_set_config] ""
     kworker/2:3-138     [002] ....   671.381936: rtcpu_string: tstamp:21353942172 id:0x04010000 str:"MIPI clock rate not known. Using 250000 kHz
"
     kworker/2:3-138     [002] ....   671.381944: rtcpu_string: tstamp:21353942447 id:0x04010000 str:""
"
 vi-output, ar02-15990   [001] ....   674.016615: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 10
        v4l2-ctl-15988   [003] ....   692.578857: tegra_channel_close: vi-output, ar0233yuv 1-001a
        v4l2-ctl-15988   [003] ....   692.579102: tegra_channel_set_stream: enable : 0x0
        v4l2-ctl-15988   [003] ....   692.579104: tegra_channel_set_stream: ar0233yuv 1-001a : 0x0
        v4l2-ctl-15988   [003] ....   692.579144: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-15988   [003] ....   692.579147: csi_s_stream: enable : 0x0
        v4l2-ctl-15988   [000] ....   692.583540: tegra_channel_set_power: ar0233yuv 1-001a : 0x0
        v4l2-ctl-15988   [000] ....   692.583551: camera_common_s_power: status : 0x0
        v4l2-ctl-15988   [000] ....   692.583751: tegra_channel_set_power: 13e40000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-15988   [000] ....   692.583754: csi_s_power: enable : 0x0
     kworker/2:3-138     [002] ....   698.598079: rtcpu_string: tstamp:22203659945 id:0x04010000 str:"VM0 deactivating."
        v4l2-ctl-16712   [002] ....   701.812065: tegra_channel_open: vi-output, ar0233yuv 1-001a
        v4l2-ctl-16712   [002] ....   701.818684: tegra_channel_set_power: ar0233yuv 1-001a : 0x1
        v4l2-ctl-16712   [002] ....   701.818695: camera_common_s_power: status : 0x1
        v4l2-ctl-16712   [002] ....   701.819473: tegra_channel_set_power: 13e40000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-16712   [002] ....   701.819476: csi_s_power: enable : 0x1
        v4l2-ctl-16712   [002] ....   701.820373: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 10
        v4l2-ctl-16712   [002] ....   701.831036: tegra_channel_set_stream: enable : 0x1
        v4l2-ctl-16712   [002] ....   701.834412: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-16712   [002] ....   701.834415: csi_s_stream: enable : 0x1
        v4l2-ctl-16712   [002] ....   701.834853: tegra_channel_set_stream: ar0233yuv 1-001a : 0x1
     kworker/2:3-138     [002] ....   701.869899: rtcpu_string: tstamp:22306013839 id:0x04010000 str:"VM0 activating."
     kworker/2:3-138     [002] ....   701.869901: rtcpu_string: tstamp:22306296053 id:0x04010000 str:"ERROR: camera-ip/nvcsi/nvcsi.c:1984 [nvcsi_strea"
     kworker/2:3-138     [002] ....   701.869902: rtcpu_string: tstamp:22306296240 id:0x04010000 str:"m_set_config] ""
     kworker/2:3-138     [002] ....   701.869902: rtcpu_string: tstamp:22306296817 id:0x04010000 str:"MIPI clock rate not known. Using 250000 kHz
"
     kworker/2:3-138     [002] ....   701.869909: rtcpu_string: tstamp:22306297089 id:0x04010000 str:""
"
     kworker/2:3-138     [002] ....   701.869914: rtcpu_vinotify_event: tstamp:22306626999 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:713797578464 data:0x759d580010000000
     kworker/2:3-138     [002] ....   701.869914: rtcpu_vinotify_event: tstamp:22306627258 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:713797588256 data:0x0000000031000001
     kworker/2:3-138     [002] ....   701.869914: rtcpu_vinotify_event: tstamp:22306627541 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:713797679264 data:0x759d550010000000
     kworker/2:3-138     [002] ....   701.869915: rtcpu_vinotify_event: tstamp:22306627795 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:713797689184 data:0x0000000031000002
 vi-output, ar02-16714   [001] ....   704.480643: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 10

# tracer: nop
#
# entries-in-buffer/entries-written: 25/25   #P:6
#
#                                _-----=> irqs-off
#                               / _----=> need-resched
#                              | / _---=> hardirq/softirq
#                              || / _--=> preempt-depth
#                              ||| /     delay
#           TASK-PID     CPU#  ||||   TIMESTAMP  FUNCTION
#              | |         |   ||||      |         |
     kworker/5:0-40      [005] ....   194.312566: rtcpu_nvcsi_intr: tstamp:6462280049 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x12000000
     kworker/5:0-40      [005] ....   194.312570: rtcpu_nvcsi_intr: tstamp:6462280049 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   194.368571: rtcpu_nvcsi_intr: tstamp:6464093207 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x12000000
     kworker/5:0-40      [005] ....   194.368571: rtcpu_nvcsi_intr: tstamp:6464093207 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   194.368572: rtcpu_nvcsi_intr: tstamp:6464094045 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000004
     kworker/5:0-40      [005] ....   195.324914: rtcpu_nvcsi_intr: tstamp:6493582780 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x02000000
     kworker/5:0-40      [005] ....   195.324919: rtcpu_nvcsi_intr: tstamp:6493582780 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   195.324920: rtcpu_nvcsi_intr: tstamp:6493583611 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x10000000
     kworker/5:0-40      [005] ....   199.730484: rtcpu_nvcsi_intr: tstamp:6630298550 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x12000000
     kworker/5:0-40      [005] ....   199.730489: rtcpu_nvcsi_intr: tstamp:6630298550 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   199.730490: rtcpu_nvcsi_intr: tstamp:6630299843 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000004
     kworker/5:0-40      [005] ....   201.087157: rtcpu_nvcsi_intr: tstamp:6673691085 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x12000000
     kworker/5:0-40      [005] ....   201.087163: rtcpu_nvcsi_intr: tstamp:6673691085 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   205.374315: rtcpu_nvcsi_intr: tstamp:6807154362 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x12000000
     kworker/5:0-40      [005] ....   205.374320: rtcpu_nvcsi_intr: tstamp:6807154362 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   205.374321: rtcpu_nvcsi_intr: tstamp:6807157213 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000004
     kworker/5:0-40      [005] ....   205.933931: rtcpu_nvcsi_intr: tstamp:6825453699 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x12000000
     kworker/5:0-40      [005] ....   205.933934: rtcpu_nvcsi_intr: tstamp:6825453699 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   205.933934: rtcpu_nvcsi_intr: tstamp:6825454520 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000004
     kworker/5:0-40      [005] ....   205.933935: rtcpu_nvcsi_intr: tstamp:6825454520 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x00000040
     kworker/5:0-40      [005] ....   210.099364: rtcpu_nvcsi_intr: tstamp:6954972021 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x02000000
     kworker/5:0-40      [005] ....   210.099368: rtcpu_nvcsi_intr: tstamp:6954972021 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x04000000
     kworker/5:0-40      [005] ....   210.099369: rtcpu_nvcsi_intr: tstamp:6954972851 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x10000000
     kworker/5:0-40      [005] ....   210.099370: rtcpu_nvcsi_intr: tstamp:6954973389 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000004
     kworker/5:0-40      [005] ....   210.099370: rtcpu_nvcsi_intr: tstamp:6954973389 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x0000004

这是rtcpu的trace log。

Below is incorrect. The port-index and vc-id should exchagne.
BTW, what’s the version? cat /etc/nv_tegra_release

这个错误已经修改了。并且我们测试了CSI0相连的4路相机,现象是一样的。感觉rtcpu的log里还没有到解析vc id和port映射这一步。
这是版本固件版本信息。
image

我们测量的是CSI的CLK线没有波形,但是数据线上有波形输出。想知道什么原因会引发这种情况?

Apply this patch to try.

0001-camera-oot-use-reg-number-as-channel-id.patch (3.7 KB)

patch和现有的代码有出入,我会尝试打进去看一下效果。我们现在的情况的是再相同都是4 lane的配置下,CSI0 时钟没有信号,数据线上有信号;相同配置CSI2总线通讯正常,能够正常出图。所以想知道这两组总线在配置上需要有什么差异吗?或者电气参数上有需要注意针对调整的吗?

Is this still an issue to support? Any result can be shared?

问题解决了。需要在解串器端交换CSI lane的极性,soc内部配置没有效果。

Glad to know issue resolved, thanks for your update.

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