xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/rv1106-evb-cam.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
4 *
5 */
6
7&csi2_dphy_hw {
8	status = "okay";
9};
10
11&csi2_dphy0 {
12	status = "okay";
13
14	ports {
15		#address-cells = <1>;
16		#size-cells = <0>;
17
18		port@0 {
19			reg = <0>;
20			#address-cells = <1>;
21			#size-cells = <0>;
22
23			csi_dphy_input0: endpoint@0 {
24				reg = <0>;
25				remote-endpoint = <&sc530ai_out>;
26				data-lanes = <1 2>;
27			};
28			csi_dphy_input1: endpoint@1 {
29				reg = <1>;
30				remote-endpoint = <&sc3336_out>;
31				data-lanes = <1 2>;
32			};
33			csi_dphy_input2: endpoint@2 {
34				reg = <2>;
35				remote-endpoint = <&sc4336_out>;
36				data-lanes = <1 2>;
37			};
38			csi_dphy_input3: endpoint@3 {
39				reg = <3>;
40				remote-endpoint = <&os04a10_out>;
41				data-lanes = <1 2>;
42			};
43			csi_dphy_input4: endpoint@4 {
44				reg = <4>;
45				remote-endpoint = <&jx_k17_out>;
46				data-lanes = <1 2>;
47			};
48		};
49
50		port@1 {
51			reg = <1>;
52			#address-cells = <1>;
53			#size-cells = <0>;
54
55			csi_dphy_output: endpoint@0 {
56				reg = <0>;
57				remote-endpoint = <&mipi_csi2_input>;
58			};
59		};
60	};
61};
62
63&i2c4 {
64	status = "okay";
65	clock-frequency = <400000>;
66	pinctrl-names = "default";
67	pinctrl-0 = <&i2c4m2_xfer>;
68
69	sc530ai: sc530ai@30 {
70		compatible = "smartsens,sc530ai";
71		status = "okay";
72		reg = <0x30>;
73		clocks = <&cru MCLK_REF_MIPI0>;
74		clock-names = "xvclk";
75		reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
76		pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>;
77		pinctrl-names = "default";
78		pinctrl-0 = <&mipi_refclk_out0>;
79		rockchip,camera-module-index = <0>;
80		rockchip,camera-module-facing = "back";
81		rockchip,camera-module-name = "CMK-OT2115-PC1";
82		rockchip,camera-module-lens-name = "30IRC-F16";
83		port {
84			sc530ai_out: endpoint {
85				remote-endpoint = <&csi_dphy_input0>;
86				data-lanes = <1 2>;
87			};
88		};
89	};
90
91	sc3336: sc3336@30 {
92		compatible = "smartsens,sc3336";
93		status = "okay";
94		reg = <0x30>;
95		clocks = <&cru MCLK_REF_MIPI0>;
96		clock-names = "xvclk";
97		reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
98		pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>;
99		pinctrl-names = "default";
100		pinctrl-0 = <&mipi_refclk_out0>;
101		rockchip,camera-module-index = <0>;
102		rockchip,camera-module-facing = "back";
103		rockchip,camera-module-name = "CMK-OT2119-PC1";
104		rockchip,camera-module-lens-name = "30IRC-F16";
105		port {
106			sc3336_out: endpoint {
107				remote-endpoint = <&csi_dphy_input1>;
108				data-lanes = <1 2>;
109			};
110		};
111	};
112
113	sc4336: sc4336@30 {
114		compatible = "smartsens,sc4336";
115		status = "okay";
116		reg = <0x30>;
117		clocks = <&cru MCLK_REF_MIPI0>;
118		clock-names = "xvclk";
119		reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
120		pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>;
121		pinctrl-names = "default";
122		pinctrl-0 = <&mipi_refclk_out0>;
123		rockchip,camera-module-index = <0>;
124		rockchip,camera-module-facing = "back";
125		rockchip,camera-module-name = "OT01";
126		rockchip,camera-module-lens-name = "40IRC_F16";
127		port {
128			sc4336_out: endpoint {
129				remote-endpoint = <&csi_dphy_input2>;
130				data-lanes = <1 2>;
131			};
132		};
133	};
134
135	os04a10: os04a10@36 {
136		compatible = "ovti,os04a10";
137		status = "okay";
138		reg = <0x36>;
139		clocks = <&cru MCLK_REF_MIPI0>;
140		clock-names = "xvclk";
141		reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_LOW>;
142		pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>;
143		pinctrl-names = "default";
144		pinctrl-0 = <&mipi_refclk_out0>;
145		rockchip,camera-module-index = <0>;
146		rockchip,camera-module-facing = "back";
147		rockchip,camera-module-name = "CMK-OT1607-PV1";
148		rockchip,camera-module-lens-name = "50IRC-F16";
149		port {
150			os04a10_out: endpoint {
151				remote-endpoint = <&csi_dphy_input3>;
152				data-lanes = <1 2>;
153			};
154		};
155	};
156
157	jx_k17: jx_k17@40 {
158		compatible = "soi,jx_k17";
159		status = "okay";
160		reg = <0x40>;
161		clocks = <&cru MCLK_REF_MIPI0>;
162		clock-names = "xvclk";
163		reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
164		pwdn-gpios = <&gpio3 RK_PC6 GPIO_ACTIVE_HIGH>;
165		pinctrl-names = "default";
166		pinctrl-0 = <&mipi_refclk_out0>;
167		rockchip,camera-module-index = <0>;
168		rockchip,camera-module-facing = "back";
169		rockchip,camera-module-name = "T3801-A";
170		rockchip,camera-module-lens-name = "22IRC-5M-F18";
171		port {
172			jx_k17_out: endpoint {
173				remote-endpoint = <&csi_dphy_input4>;
174				data-lanes = <1 2>;
175			};
176		};
177	};
178};
179
180&mipi0_csi2 {
181	status = "okay";
182
183	ports {
184		#address-cells = <1>;
185		#size-cells = <0>;
186
187		port@0 {
188			reg = <0>;
189			#address-cells = <1>;
190			#size-cells = <0>;
191
192			mipi_csi2_input: endpoint@1 {
193				reg = <1>;
194				remote-endpoint = <&csi_dphy_output>;
195			};
196		};
197
198		port@1 {
199			reg = <1>;
200			#address-cells = <1>;
201			#size-cells = <0>;
202
203			mipi_csi2_output: endpoint@0 {
204				reg = <0>;
205				remote-endpoint = <&cif_mipi_in>;
206			};
207		};
208	};
209};
210
211&rkcif {
212	status = "okay";
213};
214
215&rkcif_mipi_lvds {
216	status = "okay";
217
218	pinctrl-names = "default";
219	pinctrl-0 = <&mipi_pins>;
220	port {
221		/* MIPI CSI-2 endpoint */
222		cif_mipi_in: endpoint {
223			remote-endpoint = <&mipi_csi2_output>;
224		};
225	};
226};
227
228&rkcif_mipi_lvds_sditf {
229	status = "okay";
230
231	port {
232		/* MIPI CSI-2 endpoint */
233		mipi_lvds_sditf: endpoint {
234			remote-endpoint = <&isp_in>;
235		};
236	};
237};
238
239&rkisp {
240	status = "okay";
241};
242
243&rkisp_vir0 {
244	status = "okay";
245
246	port@0 {
247		isp_in: endpoint {
248			remote-endpoint = <&mipi_lvds_sditf>;
249		};
250	};
251};
252
253