What's problem with my device tree?

I have two type of Developer Kit.
One is Jetson Nano, another one is Jetson Xavier NX,
both not made by NVIDIA.

In my camera module, sensor will bring up by MCU (part of ISP).
So in my camera driver, I don`t need to deal with the sensor.

About driver, I reference this.

And, this is what I overlay to device tree.

fragment@0 {
        target-path = "/cam_i2cmux/i2c@0";
        __overlay__ {
            rbpcv2_ar0330_a@08 {
                compatible = "nvidia,ar0330";
                reg = <0x08>;
                devnode = "video0";
                physical_w = "3.680";
                physical_h = "2.760";
                sensor_model = "ar0330";
                use_sensor_mode_id = "true";
                status = "okay";
                reset-gpios = <0x5b 0x97 0x0>;
                linux,phandle = <0x123>;
                phandle = <0x123>;

                mode0 {
					mclk_khz = "24000";
					num_lanes = [32 00];
					tegra_sinterface = "serial_a";
					discontinuous_clk = "no";
					dpcm_enable = "false";
					cil_settletime = [30 00];
					dynamic_pixel_bit_depth = "16";
					csi_pixel_bit_depth = "16";
					mode_type = "yuv";
					pixel_phase = "uyvy";
					active_w = "1920";
					active_h = "1080";
					readout_orientation = [30 00];
					line_length = "2200";
					inherent_gain = [31 00];
					mclk_multiplier = [32 00];
					pix_clk_hz = "1152000000";
					deskew_initial_enable = "false";
					min_gain_val = [30 00];
					max_gain_val = "48";
					min_hdr_ratio = [31 00];
					max_hdr_ratio = [31 00];
					min_framerate = "1.5";
					max_framerate = "30";
					min_exp_time = "30";
					max_exp_time = "660000";
					embedded_metadata_height = [30 00];
                };

                ports {
                    #address-cells = <0x1>;
                    #size-cells = <0x0>;

                    port@0 {
                        reg = <0x0>;

                        endpoint {
                            port-index = <0x0>;
                            bus-width = <0x2>;
                            remote-endpoint = <0xc9>;
                            linux,phandle = <0x124>;
                            phandle = <0x124>;
                        };
                    };
                };
            };
        };
    };

I use the same driver and device tree for Naon and Xavier NX,
On Jetson Naon, I can see the /dev/video0 and I can see the video.
But failed on Xavier NX…
I guess I missed something in my device tree.


Left side is Naon , Right side is Xavier NX

hello kobe_nein,

according to the logs, it looks Xavier NX side has also detect the sensor driver, CS307.
there’ll be sensor power-on/off as a sanity test, the video node should be created after that.

hence,
please dig into your driver implementation, especially the regulator settings, i2c config, and GPIO settings.
thanks

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