Dev node not populated for imx274

I’m using R32.3.1 package and modified imx274 driver to bypass eeprom as suggested in Using Main Platform Device Tree File

In my hardware have 2 camera’s, 4 lane MIPI interfaced

edited device tree (tegra194-camera-imx274-dual.dtsi) as suggested in the above section and removed camera-plugin-manager dtsi as suggested

and able to load my driver

linux@linux:~$ dmesg | grep imx
[   11.255413] imx274 30-001a: probing v4l2 sensor.
[   11.255420] [imx274] probing v4l2 sensor.
[   11.256192] imx274 30-001a: tegracam sensor driver:imx274_v2.0.6
[   11.256267] imx274 30-001a: Detected IMX274 sensor
[   11.256339] imx274 31-001a: probing v4l2 sensor.
[   11.256343] [imx274] probing v4l2 sensor.
[   11.256611] imx274 31-001a: tegracam sensor driver:imx274_v2.0.6
[   11.256674] imx274 31-001a: Detected IMX274 sensor
linux@linux:~$

But no devnode populated in /dev/ i mean /dev/video0

Can anyone suggest what my be wrong ? why devnode not populated ?

Noticed, below are populated

/dev/capture-isp-channel0    
.
.
/dev/capture-isp-channel63
   
/dev/capture-vi-channel0
.
.    
/dev/capture-vi-channel63

tegra194-camera-imx274-dual.dtsi.txt (25.1 KB)

You may need to add the staus=“okay” like camera-plugin-manager do

hello ShaneCCC,

Can you verify my dtsi changes ?
tegra194-camera-imx274-dual.dtsi:

/*
 * Copyright (c) 2017-2019, 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/>.
 */

/ {
	host1x {
		vi@15c10000 {
			num-channels = <2>;
			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					liimx274_vi_in0: endpoint {
						port-index = <0>;
						bus-width = <4>;
						remote-endpoint = <&liimx274_csi_out0>;
					};
				};
				port@1 {
					reg = <1>;
					liimx274_vi_in1: endpoint {
						port-index = <2>;
						bus-width = <4>;
						remote-endpoint = <&liimx274_csi_out1>;
					};
				};
			};
		};

		nvcsi@15a00000 {
			num-channels = <2>;
			#address-cells = <1>;
			#size-cells = <0>;
			channel@0 {
				reg = <0>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						liimx274_csi_in0: endpoint@0 {
							port-index = <0>;
							bus-width = <4>;
							remote-endpoint = <&liimx274_imx274_out0>;
						};
					};
					port@1 {
						reg = <1>;
						liimx274_csi_out0: endpoint@1 {
							remote-endpoint = <&liimx274_vi_in0>;
						};
					};
				};
			};
			channel@1 {
				reg = <1>;
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						liimx274_csi_in1: endpoint@2 {
							port-index = <2>;
							bus-width = <4>;
							remote-endpoint = <&liimx274_imx274_out1>;
						};
					};
					port@1 {
						reg = <1>;
						liimx274_csi_out1: endpoint@3 {
							remote-endpoint = <&liimx274_vi_in1>;
						};
					};
				};
			};
		};
	};

	i2c@3180000 {
		tca9546@70 {
			i2c@0 {
			imx274_a@1a {
				compatible = "nvidia,imx274";
				/* I2C device address */
				reg = <0x1a>;

				/* V4L2 device node location */
				devnode = "video0";

				/* Physical dimensions of sensor */
				physical_w = "3.674";
				physical_h = "2.738";

				sensor_model = "imx274";

				/* Define any required hw resources needed by driver */
				/* ie. clocks, io pins, power sources */
				avdd-reg = "vana";
				iovdd-reg = "vif";

				/* 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";*/

				/* if true, delay gain setting by one frame to be in sync with exposure */
				delayed_gain = "true";

				/*has-eeprom;
				fuse_id_start_addr = <91>;*/

				/**
				* ==== Modes ====
				* A modeX node is required to support v4l2 driver
				* implementation with NVIDIA camera software stack
				*
				* == Signal properties ==
				*
				* phy_mode = "";
				* PHY mode used by the MIPI lanes for this device
				*
				* tegra_sinterface = "";
				* CSI Serial interface connected to tegra
				* Incase of virtual HW devices, use virtual
				* For SW emulated devices, use host
				*
				* pix_clk_hz = "";
				* Sensor pixel clock used for calculations like exposure and framerate
				*
				* readout_orientation = "0";
				* Based on camera module orientation.
				* Only change readout_orientation if you specifically
				* Program a different readout order for this mode
				*
				* == Image format Properties ==
				*
				* active_w = "";
				* Pixel active region width
				*
				* active_h = "";
				* Pixel active region height
				*
				* pixel_t = "";
				* The sensor readout pixel pattern
				*
				* line_length = "";
				* Pixel line length (width) for sensor mode.
				*
				* == Source Control Settings ==
				*
				* Gain factor used to convert fixed point integer to float
				* Gain range [min_gain/gain_factor, max_gain/gain_factor]
				* Gain step [step_gain/gain_factor is the smallest step that can be configured]
				* Default gain [Default gain to be initialized for the control.
                                       *     use min_gain_val as default for optimal results]
				* Framerate factor used to convert fixed point integer to float
				* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
				* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
				* Default Framerate [Default framerate to be initialized for the control.
                                       *     use max_framerate to get required performance]
				* Exposure factor used to convert fixed point integer to float
				* For convenience use 1 sec = 1000000us as conversion factor
				* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
				* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
				* Default Exposure Time [Default exposure to be initialized for the control.
                                       *     Set default exposure based on the default_framerate for optimal exposure settings]
				* For convenience use 1 sec = 1000000us as conversion factor
				*
				* gain_factor = ""; (integer factor used for floating to fixed point conversion)
				* min_gain_val = ""; (ceil to integer)
				* max_gain_val = ""; (ceil to integer)
				* step_gain_val = ""; (ceil to integer)
				* default_gain = ""; (ceil to integer)
				* Gain limits for mode
				*
				* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
				* min_exp_time = ""; (ceil to integer)
				* max_exp_time = ""; (ceil to integer)
				* step_exp_time = ""; (ceil to integer)
				* default_exp_time = ""; (ceil to integer)
				* Exposure Time limits for mode (sec)
				*
				* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
				* min_framerate = ""; (ceil to integer)
				* max_framerate = ""; (ceil to integer)
				* step_framerate = ""; (ceil to integer)
				* default_framerate = ""; (ceil to integer)
				* Framerate limits for mode (fps)
				*
				* embedded_metadata_height = "";
				* Sensor embedded metadata height in units of rows.
				* If sensor does not support embedded metadata value should be 0.

				* num_of_exposure = "";
				* Digital overlap(Dol) frames
				*
				* num_of_ignored_lines = "";
				* Used for cropping, eg. OB lines + Ignored area of effective pixel lines
				*
				* num_of_lines_offset_0 = "";
				* Used for cropping, vertical blanking in front of short exposure data
				* If more Dol frames are used, it can be extended, eg. num_of_lines_offset_1
				*
				* num_of_ignored_pixels = "";
				* Used for cropping, The length of line info(pixels)
				*
				* num_of_left_margin_pixels = "";
				* Used for cropping, the size of the left edge margin before
				* the active pixel area (after ignored pixels)
				*
				* num_of_right_margin_pixels = "";
				* Used for cropping, the size of the right edge margin after
				* the active pixel area
				*
				*/
				mode0 { // IMX274_MODE_3840X2160
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_a";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";

					active_w = "3840";
					active_h = "2160";
					mode_type = "bayer";
					pixel_phase = "rggb";
					csi_pixel_bit_depth = "10";
					readout_orientation = "0";
					line_length = "4208";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "44400000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "1";
					max_hdr_ratio = "1";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "60000000";
					step_framerate = "1";
					default_framerate= "60000000";
					exposure_factor = "1000000";
					min_exp_time = "44";
					max_exp_time = "478696";
					step_exp_time = "1";
					default_exp_time = "16667";/* us */
					embedded_metadata_height = "1";
				};
				mode1 { // IMX274_MODE_1920X1080
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_a";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";
					dynamic_pixel_bit_depth = "10";
					csi_pixel_bit_depth = "10";
					mode_type = "bayer";
					pixel_phase = "rggb";

					active_w = "1920";
					active_h = "1080";
					readout_orientation = "0";
					line_length = "4160";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "177000000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "1";
					max_hdr_ratio = "1";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "60000000";
					step_framerate = "1";
					default_framerate= "60000000";
					exposure_factor = "1000000";
					min_exp_time = "58";
					max_exp_time = "184611";
					step_exp_time = "1";
					default_exp_time = "16667";/* us */
					embedded_metadata_height = "1";
				};
				mode2 { // IMX274_MODE_3840X2160_DOL_30FPS
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_a";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";
					dynamic_pixel_bit_depth = "10";
					csi_pixel_bit_depth = "10";
					mode_type = "bayer_wdr_dol";
					pixel_phase = "rggb";

					active_w = "3856";
					active_h = "4448";
					readout_orientation = "0";
					line_length = "4208";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "30000000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "32";
					max_hdr_ratio = "32";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "30000000";
					step_framerate = "1";
					default_framerate= "30000000";
					exposure_factor = "1000000";
					min_exp_time = "864";
					max_exp_time = "20480";
					step_exp_time = "1";
					default_exp_time = "20480";/* us */
					embedded_metadata_height = "1";

					num_of_exposure = "2";
					num_of_ignored_lines = "14";
					num_of_lines_offset_0 = "50";
					num_of_ignored_pixels = "4";
					num_of_left_margin_pixels = "12";
					num_of_right_margin_pixels = "0";
				};
				mode3 { // IMX274_MODE_1920X1080_DOL_60FPS
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_a";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";
					dynamic_pixel_bit_depth = "10";
					csi_pixel_bit_depth = "10";
					mode_type = "bayer_wdr_dol";
					pixel_phase = "rggb";

					active_w = "1936";
					active_h = "2264";
					readout_orientation = "0";
					line_length = "4160";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "177000000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "32";
					max_hdr_ratio = "32";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "60000000";
					step_framerate = "1";
					default_framerate= "60000000";
					exposure_factor = "1000000";
					min_exp_time = "859";
					max_exp_time = "15649";
					step_exp_time = "1";
					default_exp_time = "15649";/* us */
					embedded_metadata_height = "1";

					/* WDR related settings */
					num_of_exposure = "2";
					num_of_ignored_lines = "14";
					num_of_lines_offset_0 = "38";
					num_of_ignored_pixels = "4";
					num_of_left_margin_pixels = "6";
					num_of_right_margin_pixels = "6";
				};
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						liimx274_imx274_out0: endpoint {
							port-index = <0>;
							bus-width = <4>;
							remote-endpoint = <&liimx274_csi_in0>;
							};
						};
					};
				};
			};
			i2c@1 {
			imx274_c@1a {
				compatible = "nvidia,imx274";
				/* I2C device address */
				reg = <0x1a>;

				/* V4L2 device node location */
				devnode = "video1";

				/* Physical dimensions of sensor */
				physical_w = "3.674";
				physical_h = "2.738";

				sensor_model = "imx274";

				/* Define any required hw resources needed by driver */
				/* ie. clocks, io pins, power sources */
				avdd-reg = "vana";
				iovdd-reg = "vif";

				/* 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";*/

				/* if true, delay gain setting by one frame to be in sync with exposure */
				delayed_gain = "true";

				/*has-eeprom;
				fuse_id_start_addr = <99>;*/

				/**
				* ==== Modes ====
				* A modeX node is required to support v4l2 driver
				* implementation with NVIDIA camera software stack
				*
				* == Signal properties ==
				*
				* phy_mode = "";
				* PHY mode used by the MIPI lanes for this device
				*
				* tegra_sinterface = "";
				* CSI Serial interface connected to tegra
				* Incase of virtual HW devices, use virtual
				* For SW emulated devices, use host
				*
				* pix_clk_hz = "";
				* Sensor pixel clock used for calculations like exposure and framerate
				*
				* readout_orientation = "0";
				* Based on camera module orientation.
				* Only change readout_orientation if you specifically
				* Program a different readout order for this mode
				*
				* == Image format Properties ==
				*
				* active_w = "";
				* Pixel active region width
				*
				* active_h = "";
				* Pixel active region height
				*
				* pixel_t = "";
				* The sensor readout pixel pattern
				*
				* line_length = "";
				* Pixel line length (width) for sensor mode.
				*
				* == Source Control Settings ==
				*
				* Gain factor used to convert fixed point integer to float
				* Gain range [min_gain/gain_factor, max_gain/gain_factor]
				* Gain step [step_gain/gain_factor is the smallest step that can be configured]
				* Default gain [Default gain to be initialized for the control.
                                       *     use min_gain_val as default for optimal results]
				* Framerate factor used to convert fixed point integer to float
				* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
				* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
				* Default Framerate [Default framerate to be initialized for the control.
                                       *     use max_framerate to get required performance]
				* Exposure factor used to convert fixed point integer to float
				* For convenience use 1 sec = 1000000us as conversion factor
				* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
				* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
				* Default Exposure Time [Default exposure to be initialized for the control.
                                       *     Set default exposure based on the default_framerate for optimal exposure settings]
				* For convenience use 1 sec = 1000000us as conversion factor
				*
				* gain_factor = ""; (integer factor used for floating to fixed point conversion)
				* min_gain_val = ""; (ceil to integer)
				* max_gain_val = ""; (ceil to integer)
				* step_gain_val = ""; (ceil to integer)
				* default_gain = ""; (ceil to integer)
				* Gain limits for mode
				*
				* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
				* min_exp_time = ""; (ceil to integer)
				* max_exp_time = ""; (ceil to integer)
				* step_exp_time = ""; (ceil to integer)
				* default_exp_time = ""; (ceil to integer)
				* Exposure Time limits for mode (sec)
				*
				* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
				* min_framerate = ""; (ceil to integer)
				* max_framerate = ""; (ceil to integer)
				* step_framerate = ""; (ceil to integer)
				* default_framerate = ""; (ceil to integer)
				* Framerate limits for mode (fps)
				*
				* embedded_metadata_height = "";
				* Sensor embedded metadata height in units of rows.
				* If sensor does not support embedded metadata value should be 0.
				* num_of_exposure = "";

				* Digital overlap(Dol) frames
				*
				* num_of_ignored_lines = "";
				* Used for cropping, eg. OB lines + Ignored area of effective pixel lines
				*
				* num_of_lines_offset_0 = "";
				* Used for cropping, vertical blanking in front of short exposure data
				* If more Dol frames are used, it can be extended, eg. num_of_lines_offset_1
				*
				* num_of_ignored_pixels = "";
				* Used for cropping, The length of line info(pixels)
				*
				* num_of_left_margin_pixels = "";
				* Used for cropping, the size of the left edge margin before
				* the active pixel area (after ignored pixels)
				*
				* num_of_right_margin_pixels = "";
				* Used for cropping, the size of the right edge margin after
				* the active pixel area
				*
				*/
				mode0 { // IMX274_MODE_3840X2160
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_c";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";

					active_w = "3840";
					active_h = "2160";
					mode_type = "bayer";
					pixel_phase = "rggb";
					csi_pixel_bit_depth = "10";
					readout_orientation = "0";
					line_length = "4208";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "44400000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "1";
					max_hdr_ratio = "1";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "60000000";
					step_framerate = "1";
					default_framerate= "60000000";
					exposure_factor = "1000000";
					min_exp_time = "44";
					max_exp_time = "478696";
					step_exp_time = "1";
					default_exp_time = "16667";/* us */
					embedded_metadata_height = "1";
				};
				mode1 { // IMX274_MODE_1920X1080
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_c";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";
					dynamic_pixel_bit_depth = "10";
					csi_pixel_bit_depth = "10";
					mode_type = "bayer";
					pixel_phase = "rggb";

					active_w = "1920";
					active_h = "1080";
					readout_orientation = "0";
					line_length = "4160";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "177000000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "1";
					max_hdr_ratio = "1";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "60000000";
					step_framerate = "1";
					default_framerate= "60000000";
					exposure_factor = "1000000";
					min_exp_time = "58";
					max_exp_time = "184611";
					step_exp_time = "1";
					default_exp_time = "16667";/* us */
					embedded_metadata_height = "1";
				};
				mode2 { // IMX274_MODE_3840X2160_DOL_30FPS
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_c";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";
					dynamic_pixel_bit_depth = "10";
					csi_pixel_bit_depth = "10";
					mode_type = "bayer_wdr_dol";
					pixel_phase = "rggb";

					active_w = "3856";
					active_h = "4448";
					readout_orientation = "0";
					line_length = "4208";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "30000000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "32";
					max_hdr_ratio = "32";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "30000000";
					step_framerate = "1";
					default_framerate= "30000000";
					exposure_factor = "1000000";
					min_exp_time = "864";
					max_exp_time = "20480";
					step_exp_time = "1";
					default_exp_time = "20480";/* us */
					embedded_metadata_height = "1";

					num_of_exposure = "2";
					num_of_ignored_lines = "14";
					num_of_lines_offset_0 = "50";
					num_of_ignored_pixels = "4";
					num_of_left_margin_pixels = "12";
					num_of_right_margin_pixels = "0";
				};
				mode3 { // IMX274_MODE_1920X1080_DOL_60FPS
					mclk_khz = "24000";
					num_lanes = "4";
					tegra_sinterface = "serial_c";
					phy_mode = "DPHY";
					discontinuous_clk = "yes";
					dpcm_enable = "false";
					cil_settletime = "0";
					dynamic_pixel_bit_depth = "10";
					csi_pixel_bit_depth = "10";
					mode_type = "bayer_wdr_dol";
					pixel_phase = "rggb";

					active_w = "1936";
					active_h = "2264";
					readout_orientation = "0";
					line_length = "4160";
					inherent_gain = "1";
					mclk_multiplier = "24";
					pix_clk_hz = "576000000";

					gain_factor = "1000000";
					min_gain_val = "1000000";
					max_gain_val = "177000000";
					step_gain_val = "1";
					default_gain = "1000000";
					min_hdr_ratio = "32";
					max_hdr_ratio = "32";
					framerate_factor = "1000000";
					min_framerate = "1500000";
					max_framerate = "60000000";
					step_framerate = "1";
					default_framerate= "60000000";
					exposure_factor = "1000000";
					min_exp_time = "859";
					max_exp_time = "15649";
					step_exp_time = "1";
					default_exp_time = "15649";/* us */
					embedded_metadata_height = "1";

					/* WDR related settings */
					num_of_exposure = "2";
					num_of_ignored_lines = "14";
					num_of_lines_offset_0 = "38";
					num_of_ignored_pixels = "4";
					num_of_left_margin_pixels = "6";
					num_of_right_margin_pixels = "6";
				};
				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					port@0 {
						reg = <0>;
						liimx274_imx274_out1: endpoint {
							port-index = <2>;
							bus-width = <4>;
							remote-endpoint = <&liimx274_csi_in1>;
							};
						};
					};
				};
			};
		};
	};
	lens_imx274@A6V26 {
		min_focus_distance = "0.0";
		hyper_focal = "0.0";
		focal_length = "5.00";
		f_number = "2.0";
		aperture = "2.2";
	};
};



/ {

	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 = <1500000>;
		min_bits_per_pixel = <10>;
		vi_peak_byte_per_pixel = <2>;
		vi_bw_margin_pct = <25>;
		max_pixel_rate = <750000>;
		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 vender.
		 */
		modules {
			module0 {
				badge = "imx274_bottom_A6V26";
				position = "bottom";
				orientation = "1";
				drivernode0 {
					/* Declare PCL support driver (classically known as guid)  */
					pcl_id = "v4l2_sensor";
					/* Driver v4l2 device name */
					devname = "imx274 30-001a";
					/* Declare the device-tree hierarchy to driver instance */
					proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@70/i2c@0/imx274_a@1a";
				};
				drivernode1 {
					/* Declare PCL support driver (classically known as guid)  */
					pcl_id = "v4l2_lens";
					proc-device-tree = "/proc/device-tree/lens_imx274@A6V26/";
				};
			};
			module1 {
				badge = "imx274_top_A6V26";
				position = "top";
				orientation = "1";
				drivernode0 {
					/* Declare PCL support driver (classically known as guid)  */
					pcl_id = "v4l2_sensor";
					/* Driver v4l2 device name */
					devname = "imx274 31-001a";
					/* Declare the device-tree hierarchy to driver instance */
					proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@70/i2c@1/imx274_c@1a";
				};
				drivernode1 {
					/* Declare PCL support driver (classically known as guid)  */
					pcl_id = "v4l2_lens";
					proc-device-tree = "/proc/device-tree/lens_imx274@A6V26/";
				};
			};
		};
	};
};

and tegra194-p2822-camera-modules.dtsi

/*
 * Copyright (c) 2016-2019, 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; version 2 of the License.
 *
 * 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.
 *
 */

#include "tegra194-p2822-0000-camera-e3377-a00.dtsi"
#include "tegra194-p2822-0000-camera-e3326-a00.dtsi"
#include "tegra194-p2822-0000-camera-e3333-a00.dtsi"
#include "tegra194-p2822-0000-camera-e3331-a00.dtsi"
#include "tegra194-p2822-0000-camera-imx274-dual.dtsi"
/*#include "tegra194-p2822-0000-camera-imx274-a00.dtsi"*/
#include "tegra194-p2822-0000-camera-imx185-a00.dtsi"
#include "tegra194-p2822-0000-camera-imx390-a00.dtsi"
#include "tegra194-p2822-0000-camera-vivid.dtsi"

#define CAM0_RST_L	TEGRA194_MAIN_GPIO(H, 3)
#define CAM0_PWDN	TEGRA194_MAIN_GPIO(H, 6)
#define CAM1_RST_L	TEGRA194_MAIN_GPIO(T, 6)
#define CAM1_PWDN	TEGRA194_MAIN_GPIO(T, 5)
#define SLVS_CAM0_RST_L	TEGRA194_MAIN_GPIO(Y, 1)

/ {
	tegra-camera-platform {
		/**
		* tpg_max_iso = <>;
		* Max iso bw for 6 streams of tpg
		* streams * nvcsi_freq * PG_bitrate / RG10 * BPP
		* 6 * 102Mhz * 32 bits/ 10 bits * 2 Bps
		* = 3916.8 MBps
		*/
		tpg_max_iso = <3916800>;
	};

	/* set camera gpio direction to output */
	gpio@2200000 {
		camera-control-output-low {
			gpio-hog;
			output-low;
			gpios = <CAM0_RST_L 0 CAM0_PWDN 0
				 CAM1_RST_L 0 CAM1_PWDN 0
				 SLVS_CAM0_RST_L 0>;
			label = "cam0-rst", "cam0-pwdn",
				"cam1-rst", "cam1-pwdn",
				"slvs-cam0-rst";
		};
	};

	/* all cameras are disabled by default */
	host1x {
		vi_base: vi@15c10000 {
			ports {
				vi_port0: port@0 {
					status = "okay";
					vi_in0: endpoint {
						vc-id = <0>;
						status = "okay";
					};
				};
				vi_port1: port@1 {
					status = "okay";
					vi_in1: endpoint {
						vc-id = <0>;
						status = "okay";
					};
				};
				vi_port2: port@2 {
					status = "okay";
					vi_in2: endpoint {
						vc-id = <0>;
						status = "okay";
					};
				};
				vi_port3: port@3 {
					status = "disabled";
					vi_in3: endpoint {
						vc-id = <0>;
						status = "disabled";
					};
				};
				vi_port4: port@4 {
					status = "disabled";
					vi_in4: endpoint {
						vc-id = <0>;
						status = "disabled";
					};
				};
				vi_port5: port@5 {
					status = "disabled";
					vi_in5: endpoint {
						vc-id = <0>;
						status = "disabled";
					};
				};
			};
		};
		csi_base: nvcsi@15a00000 {
			num-tpg-channels = <36>;
			csi_chan0: channel@0 {
				status = "okay"; 
				ports {
					csi_chan0_port0: port@0 {
						status = "okay";
						csi_in0: endpoint@0 {
							status = "okay";
						};
					};
					csi_chan0_port1: port@1 {
						status = "okay";
						csi_out0: endpoint@1 {
							status = "okay";
						};
					};
				};
			};
			csi_chan1: channel@1 {
				status = "okay";
				ports {
					csi_chan1_port0: port@0 {
						status = "okay";
						csi_in1: endpoint@2 {
							status = "okay";
						};
					};
					csi_chan1_port1: port@1 {
						status = "okay";
						csi_out1: endpoint@3 {
							status = "okay";
						};
					};
				};
			};
			csi_chan2: channel@2 {
				status = "okay";
				ports {
					csi_chan2_port0: port@0 {
						status = "okay";
						csi_in2: endpoint@4 {
							status = "okay";
						};
					};
					csi_chan2_port1: port@1 {
						status = "okay";
						csi_out2: endpoint@5 {
							status = "okay";
						};
					};
				};
			};
			csi_chan3: channel@3 {
				status = "okay";
				ports {
					csi_chan3_port0: port@0 {
						status = "okay";
						csi_in3: endpoint@6 {
							status = "okay";
						};
					};
					csi_chan3_port1: port@1 {
						status = "okay";
						csi_out3: endpoint@7 {
							status = "okay";
						};
					};
				};
			};
			csi_chan4: channel@4 {
				status = "okay";
				ports {
					csi_chan4_port0: port@0 {
						status = "okay";
						csi_in4: endpoint@8 {
							status = "okay";
						};
					};
					csi_chan4_port1: port@1 {
						status = "okay";
						csi_out4: endpoint@9 {
							status = "okay";
						};
					};
				};
			};
			csi_chan5: channel@5 {
				status = "disabled";
				ports {
					csi_chan5_port0: port@0 {
						status = "disabled";
						csi_in5: endpoint@10 {
							status = "disabled";
						};
					};
					csi_chan5_port1: port@1 {
						status = "disabled";
						csi_out5: endpoint@11 {
							status = "disabled";
						};
					};
				};
			};
		};

		slvs_ec_base: slvs-ec@15ac0000 {
			status = "disabled";
			streams {
				slvs_ec_stream0: stream@0 {
					status = "disabled";
					ports {
						slvs_ec_stream0_port0: port@0 {
							status = "disabled";
							e3377_slvs_ec_in0: endpoint@0 {
								status = "disabled";
							};
						};
						slvs_ec_stream0_port1: port@1 {
							status = "disabled";
							e3377_slvs_ec_out0: endpoint@1 {
								status = "disabled";
							};
						};
					};
				};
			};
		};
	};

	i2c@3180000 {
		e3326_cam0: ov5693_c@36 {
			status = "disabled";
		};
		tca6408@21 {
			status = "disabled";
		};
		tca9548@77 {
			status = "disabled";
			i2c@0 {
				e3333_cam0: ov5693_a@36 {
					status = "disabled";
				};
			};
			i2c@1 {
				e3333_cam1: ov5693_b@36 {
					status = "disabled";
				};
			};
			i2c@2 {
				e3333_cam2: ov5693_c@36 {
					status = "disabled";
				};
			};
			i2c@3 {
				e3333_cam3: ov5693_d@36 {
					status = "disabled";
				};
			};
			i2c@4 {
				e3333_cam4: ov5693_e@36 {
					status = "disabled";
				};
			};
			i2c@5 {
				e3333_cam5: ov5693_g@36 {
					status = "disabled";
				};
			};
		};
		tca9546_70: tca9546@70 {
			status = "okay";
			i2c@0 {
				pca9570_a_24: pca9570_a@24 {
					status = "disabled";
				};
				imx274_cam0: imx274_a@1a {
					status = "okay";
				};
				imx185_cam0: imx185_a@1a {
					status = "disable";
				};
				e3331_cam0: imx318_a@10 {
					status = "disable";
				};
				max9296_dser: max9296@48 {
					status = "disabled";
				};
				max9295_prim: max9295_prim@62 {
					status = "disabled";
				};
				max9295_ser0: max9295_a@40 {
					status = "disabled";
				};
				max9295_ser1: max9295_b@60 {
					status = "disabled";
				};
				imx390_cam0: imx390_a@1b {
					status = "disabled";
				};
				imx390_cam1: imx390_b@1c {
					status = "disabled";
				};
			};
			i2c@1 {
				imx274_cam1: imx274_c@1a {
					status = "okay";
				};
			};
		};
	};

	spi_cam0: spi@c260000 {
		e3377_cam0: imx204@0 {
			status = "disabled";
		};
	};

	tcp: tegra-camera-platform {
		compatible = "nvidia, tegra-camera-platform";
		modules {
			cam_module0: module0 {
				status = "okay";
				cam_module0_drivernode0: drivernode0 {
					status = "okay";
				};
				cam_module0_drivernode1: drivernode1 {
					status = "okay";
					pcl_id = "v4l2_lens";
				};
			};
			cam_module1: module1 {
				status = "okay";
				cam_module1_drivernode0: drivernode0 {
					status = "okay";
				};
				cam_module1_drivernode1: drivernode1 {
					status = "okay";
					pcl_id = "v4l2_lens";
				};
			};
			cam_module2: module2 {
				status = "okay";
				cam_module2_drivernode0: drivernode0 {
					status = "okay";
				};
				cam_module2_drivernode1: drivernode1 {
					status = "okay";
					pcl_id = "v4l2_lens";
				};
			};
			cam_module3: module3 {
				status = "okay";
				cam_module3_drivernode0: drivernode0 {
					status = "okay";
				};
				cam_module3_drivernode1: drivernode1 {
					status = "okay";
					pcl_id = "v4l2_lens";
				};
			};
			cam_module4: module4 {
				status = "okay";
				cam_module4_drivernode0: drivernode0 {
					status = "okay";
				};
				cam_module4_drivernode1: drivernode1 {
					status = "okay";
					pcl_id = "v4l2_lens";
				};
			};
			cam_module5: module5 {
				status = "okay";
				cam_module5_drivernode0: drivernode0 {
					status = "okay";
				};
				cam_module5_drivernode1: drivernode1 {
					status = "okay";
					pcl_id = "v4l2_lens";
				};
			};
		};
	};
};

Anything else need to change ??

Have a try this patch.

diff --git a/tegra194-p2888-0001-p2822-0000.dts b/tegra194-p2888-0001-p2822-0000.dts
index f4073db..28f8af1 100644
--- a/tegra194-p2888-0001-p2822-0000.dts
+++ b/tegra194-p2888-0001-p2822-0000.dts
@@ -13,5 +13,4 @@
  * more details.
  */
 #include "common/tegra194-p2888-0001-p2822-0000-common.dtsi"
-#include "common/tegra194-p2822-camera-modules.dtsi"
-#include "t19x-common-modules/tegra194-camera-plugin-manager.dtsi"
+#include "common/tegra194-p2822-0000-camera-imx274-dual.dtsi"

Hello ShaneCCC,

Thank you, now able to see /dev/video0 & /dev/video1 when driver insert, but when try grab raw data using v4l2-ctl, it gives following error

root@linux:~# v4l2-ctl --set-fmt-video=width=2048,height=2160,pixelformat=RG10 --set-ctrl=sensor_modes=0 --stream-mmap --stream-count=3 --stream-to=IMX274.raw -d /dev/video0
VIDIOC_S_EXT_CTRLS: failed: Permission denied
Error setting controls: Permission denied
VIDIOC_S_FMT: failed: Device or resource busy
VIDIOC_REQBUFS: failed: Device or resource busy

root@linux:~# v4l2-ctl --set-fmt-video=width=2048,height=2160,pixelformat=RG10 --set-ctrl=sensor_modes=0 --stream-mmap --stream-count=3 --stream-to=IMX274.raw -d /dev/video1
VIDIOC_S_EXT_CTRLS: failed: Permission denied
Error setting controls: Permission denied
VIDIOC_STREAMON: failed: Invalid argument
root@linux:~#

and dmesg log shows as below

[ 3655.108624] ------------[ cut here ]------------
[ 3655.108772] WARNING: CPU: 0 PID: 8796 at /home/thiru/work/nvidia/JetPack-L4T/JAX-TX2-public_sources/Linux_for_Tegra/source/sources/kernel/kernel/kernel-4.9/drivers/media/v4l2-core/videobuf2-core.c:1350 vb2_start_streaming+0xdc/0x158
[ 3655.109134] Modules linked in: imx274 fuse zram overlay spidev nvgpu bluedroid_pm ip_tables x_tables [last unloaded: imx274]

[ 3655.109240] CPU: 0 PID: 8796 Comm: v4l2-ctl Tainted: G        W       4.9.140-tegra #1
[ 3655.109245] Hardware name: Jetson-AGX (DT)
[ 3655.109253] task: ffffffc3e05b9c00 task.stack: ffffffc3bc590000
[ 3655.109263] PC is at vb2_start_streaming+0xdc/0x158
[ 3655.109270] LR is at vb2_start_streaming+0x6c/0x158
[ 3655.109278] pc : [<ffffff8008b2a564>] lr : [<ffffff8008b2a4f4>] pstate: 60400145
[ 3655.109283] sp : ffffffc3bc593b30
[ 3655.109290] x29: ffffffc3bc593b30 x28: 0000000000000000 
[ 3655.109305] x27: ffffffc3e4be7800 x26: 0000000000000001 
[ 3655.109319] x25: ffffff8009fcd2b8 x24: 0000000000000012 
[ 3655.109333] x23: 0000000000000000 x22: ffffffc3bc593d10 
[ 3655.109347] x21: ffffffc3e828a768 x20: ffffffc3e828a5d0 
[ 3655.109361] x19: 00000000e828a018 x18: 0000007f8193ba70 
[ 3655.109376] x17: 0000007f818b0b10 x16: ffffff80082739b0 
[ 3655.109415] x15: ffffffffffffffff x14: ffff000000000000 
[ 3655.109430] x13: ffffffffffffffff x12: 0000000000000030 
[ 3655.109443] x11: 0000000000000020 x10: 0101010101010101 
[ 3655.109457] x9 : 0000000000000000 x8 : ffffffc3e48b3c00 
[ 3655.109472] x7 : 0000000000000000 x6 : 0000000000000000 
[ 3655.109485] x5 : ffffffc3e05b9c00 x4 : ffffffc3ffcde0e0 
[ 3655.109500] x3 : 00000000027b3c40 x2 : ffffffc3e3b21a80 
[ 3655.109537] x1 : 0000000000000000 x0 : 0000000000000004 

[ 3655.109556] ---[ end trace f7b3b3b2482d5721 ]---
[ 3655.109641] Call trace:
[ 3655.109652] [<ffffff8008b2a564>] vb2_start_streaming+0xdc/0x158
[ 3655.109661] [<ffffff8008b2c2cc>] vb2_core_streamon+0x16c/0x1a0
[ 3655.109670] [<ffffff8008b2ee8c>] vb2_streamon+0x54/0x88
[ 3655.109685] [<ffffff8008b2ef14>] vb2_ioctl_streamon+0x54/0x60
[ 3655.109694] [<ffffff8008b091c4>] v4l_streamon+0x3c/0x50
[ 3655.109706] [<ffffff8008b0e24c>] __video_do_ioctl+0x204/0x2c8
[ 3655.109715] [<ffffff8008b0dbf8>] video_usercopy+0x2a0/0x6a0
[ 3655.109745] [<ffffff8008b0e034>] video_ioctl2+0x3c/0x50
[ 3655.109753] [<ffffff8008b07b10>] v4l2_ioctl+0x88/0x118
[ 3655.109764] [<ffffff8008273188>] do_vfs_ioctl+0xb0/0x8d8
[ 3655.109792] [<ffffff8008273a3c>] SyS_ioctl+0x8c/0xa8
[ 3655.109803] [<ffffff80080838c0>] el0_svc_naked+0x34/0x38

Any Hint what going wrong ?
we are you using two camera’s with 4lane MIPI each

Add --set-ctrl bypass_mode=0 in the v4l2-ctl command of the pipeline.

Hi,

I followed your suggestion, but no luck

v4l2-ctl --set-fmt-video=width=2048,height=2160,pixelformat=RG10 --set-ctrl=sensor_mode=0 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=3 --stream-to=IMX274.raw -d /dev/video0

root@localhost:~# [  317.474141] [RCE] vi5_hwinit: firmware CL2018101701 protocol version 2.2
[  327.598097] tegra194-vi5 15c10000.vi: vi_capture_status no reply from camera processor
[  327.598268] tegra194-vi5 15c10000.vi: uncorr_err: request timed out after 2500 ms
[  327.598446] tegra194-vi5 15c10000.vi: err_rec: attempting to reset the capture channel
[  327.611737] tegra194-vi5 15c10000.vi: err_rec: successfully reset the capture channel
[  337.838092] tegra194-vi5 15c10000.vi: vi_capture_status no reply from camera processor
[  337.838289] tegra194-vi5 15c10000.vi: uncorr_err: request timed out after 2500 ms
[  337.838449] tegra194-vi5 15c10000.vi: err_rec: attempting to reset the capture channel
[  337.838597] tegra194-vi5 15c10000.vi: unexpected response from camera processor
[  337.838742] video4linux video0: vi capture release failed
[  337.838847] tegra194-vi5 15c10000.vi: fatal: error recovery failed
[  517.252815] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[  517.252995] Mem abort info:
[  517.253060]   ESR = 0x96000005
[  517.253131]   Exception class = DABT (current EL), IL = 32 bits
[  517.253239]   SET = 0, FnV = 0
[  517.253307]   EA = 0, S1PTW = 0
[  517.253374] Data abort info:
[  517.253435]   ISV = 0, ISS = 0x00000005
[  517.253510]   CM = 0, WnR = 0
[  517.253592] user pgtable: 4k pages, 39-bit VAs, pgd = ffffffc3dfd5a000
[  517.253711] [0000000000000000] *pgd=0000000000000000, *pud=0000000000000000
[  517.253883] Internal error: Oops: 96000005 [#1] PREEMPT SMP
[  517.253987] Modules linked in: imx185 fuse zram overlay spidev nvgpu bluedroid_pm ip_tables x_tables [last unloaded: imx185]
[  517.254347] CPU: 0 PID: 7118 Comm: v4l2-ctl Not tainted 4.9.140-tegra #4
[  517.254492] Hardware name: Jetson-AGX (DT)
[  517.254796] task: ffffffc3bd983800 task.stack: ffffffc3dec5c000
[  517.255271] PC is at exit_creds+0x2c/0x78
[  517.255595] LR is at __put_task_struct+0x4c/0x140
[  517.255935] pc : [<ffffff80080def7c>] lr : [<ffffff80080b01ac>] pstate: 60400045
[  517.262392] sp : ffffffc3dec5fa10
[  517.265633] x29: ffffffc3dec5fa10 x28: 0000000000000008 
[  517.271402] x27: ffffff8008f62000 x26: ffffffc3dec5fde8 
[  517.276756] x25: ffffffc3e42a57e8 x24: ffffffc3e4d15558 
[  517.282605] x23: 0000000000000001 x22: ffffffc3e9b5a018 
[  517.287609] x21: ffffffc3dfe3b830 x20: 0000000000000000 
[  517.292784] x19: ffffffc3dfe3b800 x18: 0000000000000411 
[  517.298480] x17: 0000000000029000 x16: 0000000000000001 
[  517.304143] x15: 0000000000000000 x14: 0000000000002400 
[  517.310094] x13: 00000000002afb0f x12: 0000000000000000 
[  517.315341] x11: 0000000000000000 x10: 0000000000000a20 
[  517.321116] x9 : ffffffc3dec5f860 x8 : ffffffc3bd984280 
[  517.327159] x7 : 0000000000004000 x6 : 00000000002c2d52 
[  517.332650] x5 : 0000000000000800 x4 : 0000000000000000 
[  517.337739] x3 : 00000000000000ae x2 : 0000000000000000 
[  517.343328] x1 : 0000000000000000 x0 : 00000000ffffffff 
[  517.348415] 
[  517.350082] Process v4l2-ctl (pid: 7118, stack limit = 0xffffffc3dec5c000)
[  517.356715] Call trace:
[  517.359100] [<ffffff80080def7c>] exit_creds+0x2c/0x78
[  517.363645] [<ffffff80080b01ac>] __put_task_struct+0x4c/0x140
[  517.368980] [<ffffff80080dca3c>] kthread_stop+0x1e4/0x1e8
[  517.374318] [<ffffff8008b35a98>] vi5_channel_stop_kthreads+0x40/0x58
[  517.380441] [<ffffff8008b35b3c>] vi5_channel_stop_streaming+0x8c/0xa8
[  517.386323] [<ffffff8008b2858c>] tegra_channel_stop_streaming+0x34/0x48
[  517.392794] [<ffffff8008b2089c>] __vb2_queue_cancel+0x34/0x188
[  517.398120] [<ffffff8008b21dc4>] vb2_core_queue_release+0x2c/0x58
[  517.404231] [<ffffff8008b24444>] _vb2_fop_release+0x84/0xa0
[  517.409570] [<ffffff8008b29f04>] tegra_channel_close+0x64/0x140
[  517.415258] [<ffffff8008afd9f8>] v4l2_release+0x48/0xa0
[  517.420098] [<ffffff800825fc00>] __fput+0x90/0x1d0
[  517.424904] [<ffffff800825fdb8>] ____fput+0x20/0x30
[  517.429709] [<ffffff80080d9bf4>] task_work_run+0xbc/0xd8
[  517.435473] [<ffffff80080b9674>] do_exit+0x2c4/0xa08
[  517.440389] [<ffffff80080b9e48>] do_group_exit+0x40/0xa8
[  517.445450] [<ffffff80080c7744>] get_signal+0x26c/0x578
[  517.450612] [<ffffff800808b150>] do_signal+0x130/0x500
[  517.455878] [<ffffff800808b698>] do_notify_resume+0x90/0xb0
[  517.461718] [<ffffff8008083754>] work_pending+0x8/0x10
[  517.466802] ---[ end trace 11f2a555bd5b1d90 ]---
[  517.483210] Fixing recursive fault but reboot is needed!

Remove the --set-ctrl=sensor_mode=0 and correct the width to 3840

v4l2-ctl --set-fmt-video=width=3840,height=2160,pixelformat=RG10 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=3 --stream-to=IMX274.raw -d /dev/video0

Hello ShaneCCC,

Actually, in my custom hardware the camera(imx255 of 2048x2160) is configured by external controller, Currently using imx185 driver as a reference and bypassed I2C read/write and trying to receive MIPI frames from FPGA, Able to load the driver and /dev/video0 populated successfully, but unable to receive the MIPI frame (4 lane MIPI interface to CSI-2 port0-3)

getting following dmesg errors (enabled all debug messages)

rapsodo@localhost:~$ v4l2-ctl -d0 --all
Driver Info (not using libv4l2):
	Driver name   : tegra-video
	Card type     : vi-output, imx185 30-001a
	Bus info      : platform:15c10000.vi:0
	Driver version: 4.9.140
	Capabilities  : 0x84200001
		Video Capture
		Streaming
		Extended Pix Format
		Device Capabilities
	Device Caps   : 0x04200001
		Video Capture
		Streaming
		Extended Pix Format
Priority: 2
Video input : 0 (Camera 0: no power)
Format Video Capture:
	Width/Height      : 2048/2160
	Pixel Format      : 'RG10'
	Field             : None
	Bytes per Line    : 4096
	Size Image        : 8847360
	Colorspace        : sRGB
	Transfer Function : Default (maps to sRGB)
	YCbCr/HSV Encoding: Default (maps to ITU-R 601)
	Quantization      : Default (maps to Full Range)
	Flags             : 

Camera Controls

                     group_hold 0x009a2003 (bool)   : default=0 value=0 flags=execute-on-write
                     hdr_enable 0x009a2004 (intmenu): min=0 max=1 default=0 value=0
                        fuse_id 0x009a2007 (str)    : min=0 max=12 step=2 value='000000000000' flags=read-only, has-payload
                    sensor_mode 0x009a2008 (int64)  : min=0 max=0 step=0 default=0 value=0 flags=slider
                           gain 0x009a2009 (int64)  : min=0 max=0 step=0 default=0 value=0 flags=slider
                       exposure 0x009a200a (int64)  : min=0 max=0 step=0 default=0 value=30 flags=slider
                     frame_rate 0x009a200b (int64)  : min=0 max=0 step=0 default=0 value=1500000 flags=slider
           sensor_configuration 0x009a2032 (u32)    : min=0 max=0 step=0 default=0 flags=read-only, volatile, has-payload
         sensor_mode_i2c_packet 0x009a2033 (u32)    : min=0 max=0 step=0 default=0 flags=read-only, volatile, has-payload
      sensor_control_i2c_packet 0x009a2034 (u32)    : min=0 max=0 step=0 default=0 flags=read-only, volatile, has-payload
                    bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0
                override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0
                   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
               write_isp_format 0x009a2068 (int)    : min=1 max=1 step=1 default=1 value=1
       sensor_signal_properties 0x009a2069 (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
        sensor_image_properties 0x009a206a (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
      sensor_control_properties 0x009a206b (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
              sensor_dv_timings 0x009a206c (u32)    : min=0 max=0 step=0 default=0 flags=read-only, has-payload
               low_latency_mode 0x009a206d (bool)   : default=0 value=0
                   sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=1 flags=read-only

v4l2-ctl --set-fmt-video=width=2048,height=2160,pixelformat=RG10 --set-ctrl bypass_mode=0 --set-ctrl=sensor_mode=0 --stream-mmap --stream-count=3 --stream-to=test.raw -d /dev/video0

dmesg:
[ 1554.681320] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:2500 ms
[ 1557.191256] tegra194-vi5 15c10000.vi: vi_capture_status no reply from camera processor
[ 1557.191408] tegra194-vi5 15c10000.vi: uncorr_err: request timed out after 2500 ms
[ 1557.191528] tegra194-vi5 15c10000.vi: err_rec: attempting to reset the capture channel
[ 1557.191654] tegra194-vi5 15c10000.vi: vi_capture_ivc_send_control: sending chan_id 0 msg_id 20
[ 1557.192668] tegra194-vi5 15c10000.vi: vi_capture_ivc_send_control: response chan_id 0 msg_id 21
[ 1557.192848] tegra194-vi5 15c10000.vi: vi_capture_shutdown--
[ 1557.195495] t194-nvcsi 15a00000.nvcsi: csi5_stop_streaming: csi_pt=0, st_id=0, vc_id=0, pg_mode=0x0
[ 1557.195662] t194-nvcsi 15a00000.nvcsi: csi5_stream_close: stream_id=0, csi_port=0
[ 1557.195783] t194-nvcsi 15a00000.nvcsi: csi5_start_streaming: csi_pt=0, st_id=0, vc_id=0, pg_mode=0x0
[ 1557.195960] t194-nvcsi 15a00000.nvcsi: csi5_stream_set_config: stream_id=0, csi_port=0
[ 1557.196102] t194-nvcsi 15a00000.nvcsi: csi5_stream_open: stream_id=0, csi_port=0
[ 1557.196261] tegra194-vi5 15c10000.vi: vi_capture_init++
[ 1557.196435] tegra194-vi5 15c10000.vi: chan flags 4163
[ 1557.198335] tegra194-vi5 15c10000.vi: chan mask ffffffffffffffff
[ 1557.204484] tegra194-vi5 15c10000.vi: queue depth 4
[ 1557.209188] tegra194-vi5 15c10000.vi: request size 704
[ 1557.214300] tegra194-vi5 15c10000.vi: 6 GoS tables configured.
[ 1557.220033] tegra194-vi5 15c10000.vi: gos[0] = 0xc2100000
[ 1557.225713] tegra194-vi5 15c10000.vi: gos[1] = 0xc2101000
[ 1557.231134] tegra194-vi5 15c10000.vi: gos[2] = 0xc2102000
[ 1557.236647] tegra194-vi5 15c10000.vi: gos[3] = 0xc2103000
[ 1557.242157] tegra194-vi5 15c10000.vi: gos[4] = 0xc2104000
[ 1557.247497] tegra194-vi5 15c10000.vi: gos[5] = 0xc2105000
[ 1557.253010] tegra194-vi5 15c10000.vi: vi_capture_ivc_send_control: sending chan_id 82 msg_id 16
[ 1557.261974] tegra194-vi5 15c10000.vi: vi_capture_ivc_send_control: response chan_id 82 msg_id 17
[ 1557.270526] tegra194-vi5 15c10000.vi: err_rec: successfully reset the capture channel
[ 1557.278323] imx185 30-001a: v4l2sd_stream++ enable 0
[ 1557.283217] t194-nvcsi 15a00000.nvcsi: csi5_stop_streaming: csi_pt=0, st_id=0, vc_id=0, pg_mode=0x0
[ 1557.291861] t194-nvcsi 15a00000.nvcsi: csi5_stream_close: stream_id=0, csi_port=0
[ 1557.301740] tegra194-vi5 15c10000.vi: vi_capture_ivc_send_control: sending chan_id 0 msg_id 20
[ 1557.308686] tegra194-vi5 15c10000.vi: vi_capture_ivc_send_control: response chan_id 0 msg_id 21
[ 1557.315273] [RCE] Configuring VI GoS.
[ 1557.315277] [RCE] VM GOS[#0] addr=0xc2100000
[ 1557.315280] [RCE] VM GOS[#1] addr=0xc2101000
[ 1557.315283] [RCE] VM GOS[#2] addr=0xc2102000
[ 1557.315286] [RCE] VM GOS[#3] addr=0xc2103000
[ 1557.315289] [RCE] VM GOS[#4] addr=0xc2104000
[ 1557.315291] [RCE] VM GOS[#5] addr=0xc2105000
[ 1557.347108] tegra194-vi5 15c10000.vi: vi_capture_shutdown--
[ 1557.354922] imx185 30-001a: imx185_power_off: power off
[ 1557.357937] imx185 30-001a: camera_common_dpd_enable: csi 0
[ 1557.363859] imx185 30-001a: camera_common_dpd_enable: csi 1
[ 1557.369497] imx185 30-001a: camera_common_mclk_disable: disable MCLK
[ 1557.376191] t194-nvcsi 15a00000.nvcsi: csi5_power_off
[ 1571.206890] imx185 30-001a: camera_common_mclk_enable: enable MCLK with 600000000 Hz
[ 1571.207401] imx185 30-001a: camera_common_dpd_disable: csi 0
[ 1571.207529] imx185 30-001a: camera_common_dpd_disable: csi 1
[ 1571.207625] imx185 30-001a: imx185_power_on: power on
[ 1571.214688] t194-nvcsi 15a00000.nvcsi: csi5_power_on
[ 1571.216495] t194-nvcsi 15a00000.nvcsi: csi5_mipi_cal
[ 1571.216605] t194-nvcsi 15a00000.nvcsi: csi_port:0
[ 1571.218924] imx185 30-001a: imx185_power_off: power off
[ 1571.219123] imx185 30-001a: camera_common_dpd_enable: csi 0
[ 1571.219299] imx185 30-001a: camera_common_dpd_enable: csi 1
[ 1571.219406] imx185 30-001a: camera_common_mclk_disable: disable MCLK
[ 1571.219578] t194-nvcsi 15a00000.nvcsi: csi5_power_off

Just read in forum, it’s able to receive external configure CSI-2 frames, but didn’t find concrete solution, can you point me what is going wrong ?

Thanks,

This description are confuse “MIPI frame (4 lane MIPI interface to CSI-2 port0-3)”
Did you connect to CSI-A or CSI-C? From the log your dt configure as CSI-0(CSI-A) does that correct.

Check the trace if any data received by CSI/VI

CSI-A is connected, 4 lane MIPI with 10bits/pixel & resolution is 2048x2160.

  1. How to calculate line_length ?
  2. what is the max mclk_khz value ? my camera input clock is 37.125MHz (FPGA provides clock to camera)
  3. pix_clk_hz = 2048x2160x30 (WxHxFPS), is it correct ?
  4. In forum suggested to add serdes_pix_clk_hz with big value, is it correct in my case ?

my dtsi configuration:

mode0 {/*mode IMX185_MODE_2048x2160_10BIT_30FPS*/
	mclk_khz = "37125"; //24000
	num_lanes = "4";
	tegra_sinterface = "serial_a";
	phy_mode = "DPHY";
	discontinuous_clk = "yes";
	dpcm_enable = "false";
	cil_settletime = "0";
	dynamic_pixel_bit_depth = "10";
	csi_pixel_bit_depth = "10";
	mode_type = "bayer";
	pixel_phase = "rggb";

	active_w = "2048";
	active_h = "2160";
	readout_orientation = "0";
	line_length = "4208";
	inherent_gain = "1";
	mclk_multiplier = "3.58";
	pix_clk_hz = "133000000";
        serdes_pix_clk_hz = "833333333";

	gain_factor = "10";
	min_gain_val = "0"; /* 0dB */
	max_gain_val = "480"; /* 48dB */
	step_gain_val = "3"; /* 0.3 */
	default_gain = "480";
	min_hdr_ratio = "1";
	max_hdr_ratio = "1";
	framerate_factor = "1000000";
	min_framerate = "1500000"; /* 1.5 */
	max_framerate = "30000000"; /* 30 */
	step_framerate = "1";
	default_framerate= "30000000";
	exposure_factor = "1000000";
	min_exp_time = "30"; /* us */
	max_exp_time = "660000"; /* us */
	step_exp_time = "1";
	default_exp_time = "1000";/* us */
	embedded_metadata_height = "0";
};

dmesg output:

131.604224] tegra194-vi5 15c10000.vi: vi_capture_ivc_status_callback: status chan_id 0 msg_id 2
[  131.604227] tegra194-vi5 15c10000.vi: corr_err: discarding frame 1, flags: 0, err_data 256
[  131.604248] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:20000 ms
[  131.604265] tegra194-vi5 15c10000.vi: vi_capture_request: sending chan_id 0 msg_id 1 buf:0
[  151.259625] tegra194-vi5 15c10000.vi: vi_capture_ivc_status_callback: status chan_id 0 msg_id 2
[  151.259628] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 32, err_data 160
[  151.259651] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:20000 ms
[  151.259667] tegra194-vi5 15c10000.vi: vi_capture_request: sending chan_id 0 msg_id 1 buf:1
[  151.371779] tegra194-vi5 15c10000.vi: vi_capture_ivc_status_callback: status chan_id 0 msg_id 2
[  151.371806] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 32, err_data 160
[  151.371819] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:20000 ms
[  151.371832] tegra194-vi5 15c10000.vi: vi_capture_request: sending chan_id 0 msg_id 1 buf:2
[  151.460854] tegra194-vi5 15c10000.vi: vi_capture_ivc_status_callback: status chan_id 0 msg_id 2
[  151.460864] tegra194-vi5 15c10000.vi: corr_err: discarding frame 1, flags: 0, err_data 256
[  151.460876] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:20000 ms
[  151.460890] tegra194-vi5 15c10000.vi: vi_capture_request: sending chan_id 0 msg_id 1 buf:3
[  151.461406] tegra194-vi5 15c10000.vi: vi_capture_ivc_status_callback: status chan_id 0 msg_id 2
[  151.461412] tegra194-vi5 15c10000.vi: corr_err: discarding frame 1, flags: 0, err_data 256
[  151.461419] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:20000 ms
[  151.461427] tegra194-vi5 15c10000.vi: vi_capture_request: sending chan_id 0 msg_id 1 buf:0
[  151.471788] tegra194-vi5 15c10000.vi: vi_capture_ivc_status_callback: status chan_id 0 msg_id 2
[  151.471797] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 32, err_data 160
[  151.471809] tegra194-vi5 15c10000.vi: vi_capture_status: waiting for status, timeout:20000 ms
[  151.471820] tegra194-vi5 15c10000.vi: vi_capture_request: sending chan_id 0 msg_id 1 buf:1

Trace Output:

kworker/0:0-4     [000] ....   163.498871: rtos_queue_send_from_isr_failed: tstamp:5427609084 queue:0x0bcba5e0
     kworker/0:0-4     [000] ....   163.498875: rtos_queue_send_from_isr_failed: tstamp:5427609217 queue:0x0bcbb3a0
     kworker/0:0-4     [000] ....   163.498876: rtos_queue_send_from_isr_failed: tstamp:5427609349 queue:0x0bcbc160
     kworker/0:0-4     [000] ....   163.498876: rtcpu_vinotify_event: tstamp:5427861698 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:5427603684 data:0x086f0182
     kworker/0:0-4     [000] ....   163.498876: rtcpu_vinotify_event: tstamp:5427861848 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6179594304 data:0x010200f3
     kworker/0:0-4     [000] ....   163.498877: rtcpu_vinotify_event: tstamp:5427861975 tag:ATOMP_FRAME_DONE channel:0x23 frame:1 vi_tstamp:5427603694 data:0x00000000
     kworker/0:0-4     [000] ....   163.498877: rtcpu_vinotify_event: tstamp:5427862117 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6179594880 data:0x020200f3
     kworker/0:0-4     [000] ....   163.498877: rtcpu_vinotify_event: tstamp:5427862244 tag:CSIMUX_FRAME channel:0x00 frame:1 vi_tstamp:5427603795 data:0x000000a0
     kworker/0:0-4     [000] ....   163.498878: rtcpu_vinotify_event: tstamp:5427862388 tag:FS channel:0x00 frame:1 vi_tstamp:5427603795 data:0x00000010
     kworker/0:0-4     [000] ....   163.498878: rtcpu_vinotify_event: tstamp:5427862517 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:5427603796 data:0x00000000
     kworker/0:0-4     [000] ....   163.498878: rtcpu_vinotify_event: tstamp:5427862659 tag:RESERVED_19 channel:0x23 frame:0 vi_tstamp:6179599616 data:0x070200f4
     kworker/0:0-4     [000] ....   163.498879: rtcpu_vinotify_event: tstamp:5427862786 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:5427603796 data:0x00000000
     kworker/0:0-4     [000] ....   163.498879: rtcpu_vinotify_event: tstamp:5427862927 tag:RESERVED_18 channel:0x23 frame:0 vi_tstamp:6179608992 data:0x10000000
     kworker/0:0-4     [000] ....   163.498879: rtcpu_vinotify_event: tstamp:5427863048 tag:RESERVED_18 channel:0x23 frame:0 vi_tstamp:6179615360 data:0x310000f7
     kworker/0:0-4     [000] ....   163.610828: rtcpu_vinotify_event: tstamp:5430388670 tag:CHANSEL_PXL_SOF channel:0x23 frame:1 vi_tstamp:5430387656 data:0x00000001
     kworker/0:0-4     [000] ....   163.610830: rtcpu_vinotify_event: tstamp:5430388802 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6268680992 data:0x080200f4
     kworker/0:0-4     [000] ....   163.610831: rtcpu_vinotify_event: tstamp:5430388946 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:5430387790 data:0x00000100
     kworker/0:0-4     [000] ....   163.610831: rtcpu_vinotify_event: tstamp:5430389068 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6268685664 data:0x010200f4
     kworker/0:0-4     [000] ....   163.610832: rtcpu_vinotify_error: tstamp:5430729358 tag:CSIMUX_FRAME channel:0x00 frame:1 vi_tstamp:5430728634 data:0x000000a0
     kworker/0:0-4     [000] ....   163.610833: rtos_queue_send_from_isr_failed: tstamp:5430734177 queue:0x0bcb41f8
     kworker/0:0-4     [000] ....   163.610834: rtos_queue_send_from_isr_failed: tstamp:5430734317 queue:0x0bcb8a60
     kworker/0:0-4     [000] ....   163.610835: rtos_queue_send_from_isr_failed: tstamp:5430734458 queue:0x0bcba5e0
     kworker/0:0-4     [000] ....   163.610836: rtos_queue_send_from_isr_failed: tstamp:5430734592 queue:0x0bcbb3a0
     kworker/0:0-4     [000] ....   163.610836: rtos_queue_send_from_isr_failed: tstamp:5430734724 queue:0x0bcbc160
     kworker/0:0-4     [000] ....   163.610836: rtcpu_vinotify_event: tstamp:5430741271 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:5430728524 data:0x086f0182
     kworker/0:0-4     [000] ....   163.610837: rtcpu_vinotify_event: tstamp:5430741398 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6279589152 data:0x010200f4
     kworker/0:0-4     [000] ....   163.610837: rtcpu_vinotify_event: tstamp:5430741541 tag:ATOMP_FRAME_DONE channel:0x23 frame:1 vi_tstamp:5430728534 data:0x00000000
     kworker/0:0-4     [000] ....   163.610838: rtcpu_vinotify_event: tstamp:5430741663 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6279589728 data:0x020200f4
     kworker/0:0-4     [000] ....   163.610838: rtcpu_vinotify_event: tstamp:5430741811 tag:CSIMUX_FRAME channel:0x00 frame:1 vi_tstamp:5430728634 data:0x000000a0
     kworker/0:0-4     [000] ....   163.610838: rtcpu_vinotify_event: tstamp:5430741936 tag:FS channel:0x00 frame:1 vi_tstamp:5430728634 data:0x00000010
     kworker/0:0-4     [000] ....   163.610839: rtcpu_vinotify_event: tstamp:5430742079 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:5430728634 data:0x00000000
     kworker/0:0-4     [000] ....   163.610839: rtcpu_vinotify_event: tstamp:5430742202 tag:RESERVED_19 channel:0x23 frame:0 vi_tstamp:6279594432 data:0x070200f7
     kworker/0:0-4     [000] ....   163.610840: rtcpu_vinotify_event: tstamp:5430742345 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:5430728634 data:0x00000000
     kworker/0:0-4     [000] ....   163.610840: rtcpu_vinotify_event: tstamp:5430742467 tag:RESERVED_18 channel:0x23 frame:0 vi_tstamp:6279607808 data:0x10000000
     kworker/0:0-4     [000] ....   163.610841: rtcpu_vinotify_event: tstamp:5430742608 tag:RESERVED_18 channel:0x23 frame:0 vi_tstamp:6279613440 data:0x310000f8
     kworker/0:0-4     [000] ....   163.610842: rtos_queue_peek_from_isr_failed: tstamp:5430745065 queue:0x0bcbcf78
     kworker/0:0-4     [000] ....   163.666835: rtos_queue_send_from_isr_failed: tstamp:5433518481 queue:0x0bcb41f8
     kworker/0:0-4     [000] ....   163.666836: rtos_queue_send_from_isr_failed: tstamp:5433518636 queue:0x0bcb8a60
     kworker/0:0-4     [000] ....   163.666837: rtos_queue_send_from_isr_failed: tstamp:5433518778 queue:0x0bcba5e0
     kworker/0:0-4     [000] ....   163.666837: rtos_queue_send_from_isr_failed: tstamp:5433518911 queue:0x0bcbb3a0
     kworker/0:0-4     [000] ....   163.666838: rtos_queue_send_from_isr_failed: tstamp:5433519043 queue:0x0bcbc160
     kworker/0:0-4     [000] ....   163.666838: rtos_queue_send_from_isr_failed: tstamp:5433534837 queue:0x0bcb41f8
     kworker/0:0-4     [000] ....   163.666838: rtos_queue_send_from_isr_failed: tstamp:5433534973 queue:0x0bcb8a60
     kworker/0:0-4     [000] ....   163.666839: rtos_queue_send_from_isr_failed: tstamp:5433535111 queue:0x0bcba5e0
     kworker/0:0-4     [000] ....   163.666839: rtos_queue_send_from_isr_failed: tstamp:5433535244 queue:0x0bcbb3a0
     kworker/0:0-4     [000] ....   163.666840: rtos_queue_send_from_isr_failed: tstamp:5433535376 queue:0x0bcbc160
     kworker/0:0-4     [000] ....   163.666840: rtcpu_vinotify_event: tstamp:5433558382 tag:CHANSEL_PXL_SOF channel:0x23 frame:1 vi_tstamp:5433512496 data:0x00000001
     kworker/0:0-4     [000] ....   163.666841: rtcpu_vinotify_event: tstamp:5433558530 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6368675840 data:0x080200f7
     kworker/0:0-4     [000] ....   163.666841: rtcpu_vinotify_event: tstamp:5433558656 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:5433512629 data:0x00000100
     kworker/0:0-4     [000] ....   163.666842: rtcpu_vinotify_event: tstamp:5433558798 tag:RESERVED_19 channel:0x23 frame:1 vi_tstamp:6368680512 data:0x010200f7
     kworker/0:0-4     [000] ....   163.722835: rtcpu_vinotify_event: tstamp:5433854260 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:5433853363 data:0x086f0182
     kworker/0:0-4     [000] ....   163.722836: rtcpu_vinotify_error: tstamp:5433854640 tag:CSIMUX_FRAME channel:0x00 frame:1 vi_tstamp:5433853473 data:0x000000a0
     kworker/0:0-4     [000] ....   163.722838: rtos_queue_send_from_isr_failed: tstamp:5433859960 queue:0x0bcb41f8

Looks like the PIXEL_LONG_LINE check the sensor output size and reduce the active_w to try.
Also check this wiki to know the trace error. https://elinux.org/Jetson_TX2_Camera_BringUp

rtcpu_vinotify_event: tstamp:5433558656 tag:CHANSEL_FAULT channel:0x23 frame:1 vi_tstamp:5433512629 data:0x00000100

Hello ShaneCCC,

You mean vary both in dtsi & driver mode table imx185_frmfmt ?

For r32.3.1 you just need to modify the DT only if your sensor driver are latest version.

I’m using R32.3.1 only, is there any latest than this ??

When reduce active_w do i need to re-calculate the pix_clk_hz ??

Hello ShaneCCC,

I tried by reducing active_w till 2032, but no luck, Is there a way to know, how many total lines received in driver ??

Hello ShaneCCC,

I’m able to receive Images (2048x2160] after commenting the below lines (vi5_fops.c)

else if (descr->status.status != CAPTURE_STATUS_SUCCESS) {
		if ((descr->status.flags
				& CAPTURE_STATUS_FLAG_CHANNEL_IN_ERROR) != 0) {
			chan->queue_error = true;
			dev_err(vi->dev, "uncorr_err: flags %d, err_data %d\n",
				descr->status.flags, descr->status.err_data);
		} else {
			dev_warn(vi->dev,
				"corr_err: discarding frame %d, flags: %d, "
				"err_data %d\n",
				descr->status.frame_id, descr->status.flags,
				descr->status.err_data);
			buf->vb2_state = VB2_BUF_STATE_REQUEUEING;
			goto done;
		}

This means VI layer is unable to extract packet which received from MIPI Layer ? Because i didn’t observed any error from MIPI calls.

Can you hint, what exactly going wrong, why VI detects as packet corrupted & discarding?

Always check the trace to know the status.
And always check the sensor output size by v4l2-ctl --list-formats-ext to make sure the you have reduce the size correctly.