Commit 12d82b15 authored by Vaishnav Achath's avatar Vaishnav Achath Committed by Vignesh Raghavendra
Browse files

arm64: dts: ti: k3-am69-sk: Enable camera peripherals

CSI cameras are controlled using I2C. On AM69 Starter Kit, this is routed
to I2C-1, so enable the instance, TCA9543 I2C switch and the TCA6408
GPIO expander on the bus. AM69 SK has the CSI2RX routed to a MIPI CSI
connector and to 22-pin RPi camera connector through an analog mux with
GPIO control, model that so that an overlay can control the mux state
according to connected cameras.

AM69 SK schematics: https://www.ti.com/lit/zip/sprr466



Signed-off-by: default avatarVaishnav Achath <vaishnav.a@ti.com>
Reviewed-by: default avatarJai Luthra <j-luthra@ti.com>
Link: https://lore.kernel.org/r/20240215085518.552692-5-vaishnav.a@ti.com


Signed-off-by: default avatarVignesh Raghavendra <vigneshr@ti.com>
parent 5dcc1aaf
Loading
Loading
Loading
Loading
+51 −0
Original line number Diff line number Diff line
@@ -322,6 +322,14 @@ tfp410_out: endpoint {
			};
		};
	};

	csi_mux: mux-controller {
		compatible = "gpio-mux";
		#mux-state-cells = <1>;
		mux-gpios = <&exp2 1 GPIO_ACTIVE_HIGH>;
		idle-state = <0>;
	};

};

&main_pmx0 {
@@ -341,6 +349,13 @@ J784S4_IOPAD(0x0e4, PIN_INPUT_PULLUP, 0) /* (AP37) I2C0_SDA */
		>;
	};

	main_i2c1_pins_default: main-i2c1-default-pins {
		pinctrl-single,pins = <
			J784S4_IOPAD(0x0ac, PIN_INPUT_PULLUP, 13) /* (AE34) MCASP0_AXR15.I2C1_SCL */
			J784S4_IOPAD(0x0b0, PIN_INPUT_PULLUP, 13) /* (AL33) MCASP1_AXR3.I2C1_SDA */
		>;
	};

	main_mmc1_pins_default: main-mmc1-default-pins {
		bootph-all;
		pinctrl-single,pins = <
@@ -775,6 +790,42 @@ exp1: gpio@21 {
	};
};

&main_i2c1 {
	pinctrl-names = "default";
	pinctrl-0 = <&main_i2c1_pins_default>;
	clock-frequency = <400000>;
	status = "okay";

	exp2: gpio@21 {
		compatible = "ti,tca6408";
		reg = <0x21>;
		gpio-controller;
		#gpio-cells = <2>;
		gpio-line-names = "CSI_VIO_SEL", "CSI_MUX_SEL_2", "CSI2_RSTz",
				  "IO_EXP_CAM0_GPIO1", "IO_EXP_CAM1_GPIO1";
	};

	i2c-mux@70 {
		compatible = "nxp,pca9543";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x70>;

		cam0_i2c: i2c@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;
		};

		cam1_i2c: i2c@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <1>;
		};

	};
};

&main_sdhci0 {
	bootph-all;
	/* eMMC */