NX CSI2 port-index compatibility

Dear Experts,

I am porting the camera device-tree of my Xavier-NX based custom board to TN2-NX. I wonder if the CSI2 port-indexes btw Xavier-NX and TX2-NX are similar as they share same form-factor and pinout:

/ {
        host1x {
                vi@15700000  {
                        num-channels = <2>;
                        ports {
                                #address-cells = <1>;
                                #size-cells = <0>;
                                vi_port0: port@0 {
                                        reg = <0>;
                                        hdmi2mipi_vi_in0: endpoint {
                                                port-index = <0>;
                                                bus-width = <4>;
                                                remote-endpoint = <&hdmi2mipi_csi_out0>;
                                        };
                                };
                                vi_port1: port@1 {
                                        reg = <1>;
                                        analog2mipi_vi_in0: endpoint {
                                                port-index = <4>;
                                                bus-width = <1>;
                                                remote-endpoint = <&analog2mipi_csi_out0>;
                                        };
                                };
                        };
                };

                nvcsi@150c0000 {
                        num-channels = <2>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        csi_chan0: channel@0 {
                                reg = <0x0>;
                                ports {
                                        #address-cells = <1>;
                                        #size-cells = <0>;
                                        csi_chan0_port0: port@0 {
                                                reg = <0>;
                                                hdmi2mipi_csi_in0: endpoint@0 {
                                                        port-index = <0>;
                                                        bus-width = <4>;
                                                        remote-endpoint = <&hdmi2mipi_out0>;
                                                };
                                        };
                                        csi_chan0_port1: port@1 {
                                                reg = <1>;
                                                hdmi2mipi_csi_out0: endpoint@1 {
                                                        remote-endpoint = <&hdmi2mipi_vi_in0>;
                                                };
                                        };
                                };
                        };
                        csi_chan1: channel@1 {
                                reg = <0x1>;
                                discontinuous_clk = "no";
                                ports {
                                        #address-cells = <1>;
                                        #size-cells = <0>;
                                        csi_chan1_port0: port@0 {
                                                reg = <0>;
                                                analog2mipi_csi_in0: endpoint@2 {
                                                        port-index = <4>;
                                                        bus-width = <1>;
                                                        remote-endpoint = <&analog2mipi_out0>;
                                                };
                                        };
                                        csi_chan1_port1: port@1 {
                                                reg = <1>;
                                                analog2mipi_csi_out0: endpoint@3 {
                                                        remote-endpoint = <&analog2mipi_vi_in0>;
                                                };
                                        };
                                };
                        };
                };
        };

        i2c@c240000 {
                status = "okay";
                #address-cells = <1>;
                #size-cells = <0>;

                hdmi2mipi_a@10 {

                        ...

                       mode0 {
                                mclk_khz = "24000";
                                num_lanes = "4";
                                tegra_sinterface = "serial_a";
                                phy_mode = "DPHY";
                                discontinuous_clk = "no";
                                dpcm_enable = "false";
                                cil_settletime = "0";
                        	...
                        };

                       ports {
                                #address-cells = <1>;
                                #size-cells = <0>;
                                port@0 {
                                        reg = <0>;
                                        hdmi2mipi_out0: endpoint {
                                                status = "okay";
                                                port-index = <0>; /* CSI A */
                                                bus-width = <4>;
                                                remote-endpoint = <&hdmi2mipi_csi_in0>;
                                        };
                                };
                        };


                analog2mipi_e@20 {

                        ...

		mode0 {
			mclk_khz = "24000";
			num_lanes = "1";
			tegra_sinterface = "serial_e";
			phy_mode = "DPHY";
			discontinuous_clk = "no";
			dpcm_enable = "false";
			cil_settletime = "0";

                        	...
                        };

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

                                port@0 {
                                        reg = <0>;
                                        analog2mipi_out0: endpoint {
                                                port-index = <4>; /* CSI E */
                                                bus-width = <1>;
                                                remote-endpoint = <&analog2mipi_csi_in0>;
                                        };
                                };
                        };
                };
        };
    ...
};

Regards,
K.

From the design guide the connector #2 is CS2 aka CSI-C and port-index should be 2

Thanks

Dear @ShaneCCC,

For clarification, we do NOT use Nvidia Devkit’s carrier board.

The device-tree in my previous post was mainly copied from the device-tree of Xavier NX SOM + custom carrier board combination (with adaptation for vi@, nvcsi@ and i2c@ for TX2 NX) and we used CSI port #4 (serial_e) with that board combination. Now we change the SOM to TX2 NX.

Best Regards,
K.

OK, then what’s your question? If you just want to confirm the port-index for CSI-E then that is correct.

port-index =4 for csi-e

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