Commit 28325213 authored by Niklas Söderlund's avatar Niklas Söderlund Committed by Geert Uytterhoeven
Browse files

arm64: dts: renesas: falcon-csi-dsi: Add and connect MAX96712



The sub-board contains three MAX96712 connected to the main-board using
I2C and CSI-2, record the connections. Also enable all nodes (VIN, CSI-2
and ISP) that are part of the downstream video capture pipeline.

Signed-off-by: default avatarNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Link: https://lore.kernel.org/r/20220113163239.3035073-1-niklas.soderlund+renesas@ragnatech.se


Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
parent c705c871
Loading
Loading
Loading
Loading
+229 −0
Original line number Diff line number Diff line
@@ -5,6 +5,63 @@
 * Copyright (C) 2021 Glider bv
 */

&csi40 {
	status = "okay";

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

		port@0 {
			reg = <0>;

			csi40_in: endpoint {
				clock-lanes = <0>;
				data-lanes = <1 2 3 4>;
				remote-endpoint = <&max96712_out0>;
			};
		};
	};
};

&csi42 {
	status = "okay";

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

		port@0 {
			reg = <0>;

			csi42_in: endpoint {
				clock-lanes = <0>;
				data-lanes = <1 2 3 4>;
				remote-endpoint = <&max96712_out1>;
			};
		};
	};
};

&csi43 {
	status = "okay";

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

		port@0 {
			reg = <0>;

			csi43_in: endpoint {
				clock-lanes = <0>;
				data-lanes = <1 2 3 4>;
				remote-endpoint = <&max96712_out2>;
			};
		};
	};
};

&i2c0 {
	pca9654_a: gpio@21 {
		compatible = "onnn,pca9654";
@@ -34,3 +91,175 @@ eeprom@52 {
		pagesize = <8>;
	};
};

&i2c1 {
	gmsl0: gmsl-deserializer@49 {
		compatible = "maxim,max96712";
		reg = <0x49>;
		enable-gpios = <&pca9654_a 0 GPIO_ACTIVE_HIGH>;

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

			port@4 {
				reg = <4>;
				max96712_out0: endpoint {
					clock-lanes = <0>;
					data-lanes = <1 2 3 4>;
					remote-endpoint = <&csi40_in>;
				};
			};
		};
	};

	gmsl1: gmsl-deserializer@4b {
		compatible = "maxim,max96712";
		reg = <0x4b>;
		enable-gpios = <&pca9654_b 0 GPIO_ACTIVE_HIGH>;

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

			port@4 {
				reg = <4>;
				max96712_out1: endpoint {
					clock-lanes = <0>;
					data-lanes = <1 2 3 4>;
					lane-polarities = <0 0 0 0 1>;
					remote-endpoint = <&csi42_in>;
				};
			};
		};
	};

	gmsl2: gmsl-deserializer@6b {
		compatible = "maxim,max96712";
		reg = <0x6b>;
		enable-gpios = <&pca9654_c 0 GPIO_ACTIVE_HIGH>;

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

			port@4 {
				reg = <4>;
				max96712_out2: endpoint {
					clock-lanes = <0>;
					data-lanes = <1 2 3 4>;
					lane-polarities = <0 0 0 0 1>;
					remote-endpoint = <&csi43_in>;
				};
			};
		};
	};
};

&isp0 {
	status = "okay";
};

&isp2 {
	status = "okay";
};

&isp3 {
	status = "okay";
};

&vin00 {
	status = "okay";
};

&vin01 {
	status = "okay";
};

&vin02 {
	status = "okay";
};

&vin03 {
	status = "okay";
};

&vin04 {
	status = "okay";
};

&vin05 {
	status = "okay";
};

&vin06 {
	status = "okay";
};

&vin07 {
	status = "okay";
};

&vin16 {
	status = "okay";
};

&vin17 {
	status = "okay";
};

&vin18 {
	status = "okay";
};

&vin19 {
	status = "okay";
};

&vin20 {
	status = "okay";
};

&vin21 {
	status = "okay";
};

&vin22 {
	status = "okay";
};

&vin23 {
	status = "okay";
};

&vin24 {
	status = "okay";
};

&vin25 {
	status = "okay";
};

&vin26 {
	status = "okay";
};

&vin27 {
	status = "okay";
};

&vin28 {
	status = "okay";
};

&vin29 {
	status = "okay";
};

&vin30 {
	status = "okay";
};

&vin31 {
	status = "okay";
};