xref: /openbmc/linux/scripts/dtc/include-prefixes/arm64/renesas/r8a779a0-falcon-csi-dsi.dtsi (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
17ed6bc96SGeert Uytterhoeven// SPDX-License-Identifier: GPL-2.0
27ed6bc96SGeert Uytterhoeven/*
37ed6bc96SGeert Uytterhoeven * Device Tree Source for the Falcon CSI/DSI sub-board
47ed6bc96SGeert Uytterhoeven *
57ed6bc96SGeert Uytterhoeven * Copyright (C) 2021 Glider bv
67ed6bc96SGeert Uytterhoeven */
77ed6bc96SGeert Uytterhoeven
8*741f99c7SNiklas Söderlund#include <dt-bindings/media/video-interfaces.h>
9*741f99c7SNiklas Söderlund
1028325213SNiklas Söderlund&csi40 {
1128325213SNiklas Söderlund	status = "okay";
1228325213SNiklas Söderlund
1328325213SNiklas Söderlund	ports {
1428325213SNiklas Söderlund		#address-cells = <1>;
1528325213SNiklas Söderlund		#size-cells = <0>;
1628325213SNiklas Söderlund
1728325213SNiklas Söderlund		port@0 {
1828325213SNiklas Söderlund			reg = <0>;
1928325213SNiklas Söderlund
2028325213SNiklas Söderlund			csi40_in: endpoint {
2128325213SNiklas Söderlund				clock-lanes = <0>;
2228325213SNiklas Söderlund				data-lanes = <1 2 3 4>;
2328325213SNiklas Söderlund				remote-endpoint = <&max96712_out0>;
2428325213SNiklas Söderlund			};
2528325213SNiklas Söderlund		};
2628325213SNiklas Söderlund	};
2728325213SNiklas Söderlund};
2828325213SNiklas Söderlund
2928325213SNiklas Söderlund&csi42 {
3028325213SNiklas Söderlund	status = "okay";
3128325213SNiklas Söderlund
3228325213SNiklas Söderlund	ports {
3328325213SNiklas Söderlund		#address-cells = <1>;
3428325213SNiklas Söderlund		#size-cells = <0>;
3528325213SNiklas Söderlund
3628325213SNiklas Söderlund		port@0 {
3728325213SNiklas Söderlund			reg = <0>;
3828325213SNiklas Söderlund
3928325213SNiklas Söderlund			csi42_in: endpoint {
4028325213SNiklas Söderlund				clock-lanes = <0>;
4128325213SNiklas Söderlund				data-lanes = <1 2 3 4>;
4228325213SNiklas Söderlund				remote-endpoint = <&max96712_out1>;
4328325213SNiklas Söderlund			};
4428325213SNiklas Söderlund		};
4528325213SNiklas Söderlund	};
4628325213SNiklas Söderlund};
4728325213SNiklas Söderlund
4828325213SNiklas Söderlund&csi43 {
4928325213SNiklas Söderlund	status = "okay";
5028325213SNiklas Söderlund
5128325213SNiklas Söderlund	ports {
5228325213SNiklas Söderlund		#address-cells = <1>;
5328325213SNiklas Söderlund		#size-cells = <0>;
5428325213SNiklas Söderlund
5528325213SNiklas Söderlund		port@0 {
5628325213SNiklas Söderlund			reg = <0>;
5728325213SNiklas Söderlund
5828325213SNiklas Söderlund			csi43_in: endpoint {
5928325213SNiklas Söderlund				clock-lanes = <0>;
6028325213SNiklas Söderlund				data-lanes = <1 2 3 4>;
6128325213SNiklas Söderlund				remote-endpoint = <&max96712_out2>;
6228325213SNiklas Söderlund			};
6328325213SNiklas Söderlund		};
6428325213SNiklas Söderlund	};
6528325213SNiklas Söderlund};
6628325213SNiklas Söderlund
677ed6bc96SGeert Uytterhoeven&i2c0 {
68706f5cb3SNiklas Söderlund	pca9654_a: gpio@21 {
69706f5cb3SNiklas Söderlund		compatible = "onnn,pca9654";
70706f5cb3SNiklas Söderlund		reg = <0x21>;
71706f5cb3SNiklas Söderlund		gpio-controller;
72706f5cb3SNiklas Söderlund		#gpio-cells = <2>;
73706f5cb3SNiklas Söderlund	};
74706f5cb3SNiklas Söderlund
75706f5cb3SNiklas Söderlund	pca9654_b: gpio@22 {
76706f5cb3SNiklas Söderlund		compatible = "onnn,pca9654";
77706f5cb3SNiklas Söderlund		reg = <0x22>;
78706f5cb3SNiklas Söderlund		gpio-controller;
79706f5cb3SNiklas Söderlund		#gpio-cells = <2>;
80706f5cb3SNiklas Söderlund	};
81706f5cb3SNiklas Söderlund
82706f5cb3SNiklas Söderlund	pca9654_c: gpio@23 {
83706f5cb3SNiklas Söderlund		compatible = "onnn,pca9654";
84706f5cb3SNiklas Söderlund		reg = <0x23>;
85706f5cb3SNiklas Söderlund		gpio-controller;
86706f5cb3SNiklas Söderlund		#gpio-cells = <2>;
87706f5cb3SNiklas Söderlund	};
88706f5cb3SNiklas Söderlund
897ed6bc96SGeert Uytterhoeven	eeprom@52 {
907ed6bc96SGeert Uytterhoeven		compatible = "rohm,br24g01", "atmel,24c01";
917ed6bc96SGeert Uytterhoeven		label = "csi-dsi-sub-board-id";
927ed6bc96SGeert Uytterhoeven		reg = <0x52>;
937ed6bc96SGeert Uytterhoeven		pagesize = <8>;
947ed6bc96SGeert Uytterhoeven	};
957ed6bc96SGeert Uytterhoeven};
9628325213SNiklas Söderlund
9728325213SNiklas Söderlund&i2c1 {
9828325213SNiklas Söderlund	gmsl0: gmsl-deserializer@49 {
9928325213SNiklas Söderlund		compatible = "maxim,max96712";
10028325213SNiklas Söderlund		reg = <0x49>;
10128325213SNiklas Söderlund		enable-gpios = <&pca9654_a 0 GPIO_ACTIVE_HIGH>;
10228325213SNiklas Söderlund
10328325213SNiklas Söderlund		ports {
10428325213SNiklas Söderlund			#address-cells = <1>;
10528325213SNiklas Söderlund			#size-cells = <0>;
10628325213SNiklas Söderlund
10728325213SNiklas Söderlund			port@4 {
10828325213SNiklas Söderlund				reg = <4>;
10928325213SNiklas Söderlund				max96712_out0: endpoint {
110*741f99c7SNiklas Söderlund					bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
11128325213SNiklas Söderlund					clock-lanes = <0>;
11228325213SNiklas Söderlund					data-lanes = <1 2 3 4>;
11328325213SNiklas Söderlund					remote-endpoint = <&csi40_in>;
11428325213SNiklas Söderlund				};
11528325213SNiklas Söderlund			};
11628325213SNiklas Söderlund		};
11728325213SNiklas Söderlund	};
11828325213SNiklas Söderlund
11928325213SNiklas Söderlund	gmsl1: gmsl-deserializer@4b {
12028325213SNiklas Söderlund		compatible = "maxim,max96712";
12128325213SNiklas Söderlund		reg = <0x4b>;
12228325213SNiklas Söderlund		enable-gpios = <&pca9654_b 0 GPIO_ACTIVE_HIGH>;
12328325213SNiklas Söderlund
12428325213SNiklas Söderlund		ports {
12528325213SNiklas Söderlund			#address-cells = <1>;
12628325213SNiklas Söderlund			#size-cells = <0>;
12728325213SNiklas Söderlund
12828325213SNiklas Söderlund			port@4 {
12928325213SNiklas Söderlund				reg = <4>;
13028325213SNiklas Söderlund				max96712_out1: endpoint {
131*741f99c7SNiklas Söderlund					bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
13228325213SNiklas Söderlund					clock-lanes = <0>;
13328325213SNiklas Söderlund					data-lanes = <1 2 3 4>;
13428325213SNiklas Söderlund					lane-polarities = <0 0 0 0 1>;
13528325213SNiklas Söderlund					remote-endpoint = <&csi42_in>;
13628325213SNiklas Söderlund				};
13728325213SNiklas Söderlund			};
13828325213SNiklas Söderlund		};
13928325213SNiklas Söderlund	};
14028325213SNiklas Söderlund
14128325213SNiklas Söderlund	gmsl2: gmsl-deserializer@6b {
14228325213SNiklas Söderlund		compatible = "maxim,max96712";
14328325213SNiklas Söderlund		reg = <0x6b>;
14428325213SNiklas Söderlund		enable-gpios = <&pca9654_c 0 GPIO_ACTIVE_HIGH>;
14528325213SNiklas Söderlund
14628325213SNiklas Söderlund		ports {
14728325213SNiklas Söderlund			#address-cells = <1>;
14828325213SNiklas Söderlund			#size-cells = <0>;
14928325213SNiklas Söderlund
15028325213SNiklas Söderlund			port@4 {
15128325213SNiklas Söderlund				reg = <4>;
15228325213SNiklas Söderlund				max96712_out2: endpoint {
153*741f99c7SNiklas Söderlund					bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
15428325213SNiklas Söderlund					clock-lanes = <0>;
15528325213SNiklas Söderlund					data-lanes = <1 2 3 4>;
15628325213SNiklas Söderlund					lane-polarities = <0 0 0 0 1>;
15728325213SNiklas Söderlund					remote-endpoint = <&csi43_in>;
15828325213SNiklas Söderlund				};
15928325213SNiklas Söderlund			};
16028325213SNiklas Söderlund		};
16128325213SNiklas Söderlund	};
16228325213SNiklas Söderlund};
16328325213SNiklas Söderlund
16428325213SNiklas Söderlund&isp0 {
16528325213SNiklas Söderlund	status = "okay";
16628325213SNiklas Söderlund};
16728325213SNiklas Söderlund
16828325213SNiklas Söderlund&isp2 {
16928325213SNiklas Söderlund	status = "okay";
17028325213SNiklas Söderlund};
17128325213SNiklas Söderlund
17228325213SNiklas Söderlund&isp3 {
17328325213SNiklas Söderlund	status = "okay";
17428325213SNiklas Söderlund};
17528325213SNiklas Söderlund
17628325213SNiklas Söderlund&vin00 {
17728325213SNiklas Söderlund	status = "okay";
17828325213SNiklas Söderlund};
17928325213SNiklas Söderlund
18028325213SNiklas Söderlund&vin01 {
18128325213SNiklas Söderlund	status = "okay";
18228325213SNiklas Söderlund};
18328325213SNiklas Söderlund
18428325213SNiklas Söderlund&vin02 {
18528325213SNiklas Söderlund	status = "okay";
18628325213SNiklas Söderlund};
18728325213SNiklas Söderlund
18828325213SNiklas Söderlund&vin03 {
18928325213SNiklas Söderlund	status = "okay";
19028325213SNiklas Söderlund};
19128325213SNiklas Söderlund
19228325213SNiklas Söderlund&vin04 {
19328325213SNiklas Söderlund	status = "okay";
19428325213SNiklas Söderlund};
19528325213SNiklas Söderlund
19628325213SNiklas Söderlund&vin05 {
19728325213SNiklas Söderlund	status = "okay";
19828325213SNiklas Söderlund};
19928325213SNiklas Söderlund
20028325213SNiklas Söderlund&vin06 {
20128325213SNiklas Söderlund	status = "okay";
20228325213SNiklas Söderlund};
20328325213SNiklas Söderlund
20428325213SNiklas Söderlund&vin07 {
20528325213SNiklas Söderlund	status = "okay";
20628325213SNiklas Söderlund};
20728325213SNiklas Söderlund
20828325213SNiklas Söderlund&vin16 {
20928325213SNiklas Söderlund	status = "okay";
21028325213SNiklas Söderlund};
21128325213SNiklas Söderlund
21228325213SNiklas Söderlund&vin17 {
21328325213SNiklas Söderlund	status = "okay";
21428325213SNiklas Söderlund};
21528325213SNiklas Söderlund
21628325213SNiklas Söderlund&vin18 {
21728325213SNiklas Söderlund	status = "okay";
21828325213SNiklas Söderlund};
21928325213SNiklas Söderlund
22028325213SNiklas Söderlund&vin19 {
22128325213SNiklas Söderlund	status = "okay";
22228325213SNiklas Söderlund};
22328325213SNiklas Söderlund
22428325213SNiklas Söderlund&vin20 {
22528325213SNiklas Söderlund	status = "okay";
22628325213SNiklas Söderlund};
22728325213SNiklas Söderlund
22828325213SNiklas Söderlund&vin21 {
22928325213SNiklas Söderlund	status = "okay";
23028325213SNiklas Söderlund};
23128325213SNiklas Söderlund
23228325213SNiklas Söderlund&vin22 {
23328325213SNiklas Söderlund	status = "okay";
23428325213SNiklas Söderlund};
23528325213SNiklas Söderlund
23628325213SNiklas Söderlund&vin23 {
23728325213SNiklas Söderlund	status = "okay";
23828325213SNiklas Söderlund};
23928325213SNiklas Söderlund
24028325213SNiklas Söderlund&vin24 {
24128325213SNiklas Söderlund	status = "okay";
24228325213SNiklas Söderlund};
24328325213SNiklas Söderlund
24428325213SNiklas Söderlund&vin25 {
24528325213SNiklas Söderlund	status = "okay";
24628325213SNiklas Söderlund};
24728325213SNiklas Söderlund
24828325213SNiklas Söderlund&vin26 {
24928325213SNiklas Söderlund	status = "okay";
25028325213SNiklas Söderlund};
25128325213SNiklas Söderlund
25228325213SNiklas Söderlund&vin27 {
25328325213SNiklas Söderlund	status = "okay";
25428325213SNiklas Söderlund};
25528325213SNiklas Söderlund
25628325213SNiklas Söderlund&vin28 {
25728325213SNiklas Söderlund	status = "okay";
25828325213SNiklas Söderlund};
25928325213SNiklas Söderlund
26028325213SNiklas Söderlund&vin29 {
26128325213SNiklas Söderlund	status = "okay";
26228325213SNiklas Söderlund};
26328325213SNiklas Söderlund
26428325213SNiklas Söderlund&vin30 {
26528325213SNiklas Söderlund	status = "okay";
26628325213SNiklas Söderlund};
26728325213SNiklas Söderlund
26828325213SNiklas Söderlund&vin31 {
26928325213SNiklas Söderlund	status = "okay";
27028325213SNiklas Söderlund};
271