xref: /linux/scripts/dtc/include-prefixes/arm/renesas/r8a7792-wheat.dts (revision 60675d4ca1ef0857e44eba5849b74a3a998d0c0f)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/*
3724ba675SRob Herring * Device Tree Source for the Wheat board
4724ba675SRob Herring *
5724ba675SRob Herring * Copyright (C) 2016 Renesas Electronics Corporation
6724ba675SRob Herring * Copyright (C) 2016 Cogent  Embedded, Inc.
7724ba675SRob Herring */
8724ba675SRob Herring
9724ba675SRob Herring/dts-v1/;
10724ba675SRob Herring#include "r8a7792.dtsi"
11724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
12724ba675SRob Herring#include <dt-bindings/input/input.h>
13724ba675SRob Herring
14724ba675SRob Herring/ {
15724ba675SRob Herring	model = "Wheat";
16724ba675SRob Herring	compatible = "renesas,wheat", "renesas,r8a7792";
17724ba675SRob Herring
18724ba675SRob Herring	aliases {
19724ba675SRob Herring		serial0 = &scif0;
20724ba675SRob Herring	};
21724ba675SRob Herring
22724ba675SRob Herring	chosen {
23724ba675SRob Herring		bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
24724ba675SRob Herring		stdout-path = "serial0:115200n8";
25724ba675SRob Herring	};
26724ba675SRob Herring
27724ba675SRob Herring	memory@40000000 {
28724ba675SRob Herring		device_type = "memory";
29724ba675SRob Herring		reg = <0 0x40000000 0 0x40000000>;
30724ba675SRob Herring	};
31724ba675SRob Herring
32cc75154cSGeert Uytterhoeven	d1_8v: regulator-1v8 {
33cc75154cSGeert Uytterhoeven		compatible = "regulator-fixed";
34cc75154cSGeert Uytterhoeven		regulator-name = "D1.8V";
35cc75154cSGeert Uytterhoeven		regulator-min-microvolt = <1800000>;
36cc75154cSGeert Uytterhoeven		regulator-max-microvolt = <1800000>;
37cc75154cSGeert Uytterhoeven		regulator-boot-on;
38cc75154cSGeert Uytterhoeven		regulator-always-on;
39cc75154cSGeert Uytterhoeven	};
40cc75154cSGeert Uytterhoeven
41724ba675SRob Herring	d3_3v: regulator-3v3 {
42724ba675SRob Herring		compatible = "regulator-fixed";
43724ba675SRob Herring		regulator-name = "D3.3V";
44724ba675SRob Herring		regulator-min-microvolt = <3300000>;
45724ba675SRob Herring		regulator-max-microvolt = <3300000>;
46724ba675SRob Herring		regulator-boot-on;
47724ba675SRob Herring		regulator-always-on;
48724ba675SRob Herring	};
49724ba675SRob Herring
50724ba675SRob Herring	keyboard {
51724ba675SRob Herring		compatible = "gpio-keys";
52724ba675SRob Herring
53724ba675SRob Herring		key-a {
54724ba675SRob Herring			linux,code = <KEY_A>;
55724ba675SRob Herring			label = "SW2";
56724ba675SRob Herring			wakeup-source;
57724ba675SRob Herring			debounce-interval = <20>;
58724ba675SRob Herring			gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
59724ba675SRob Herring		};
60724ba675SRob Herring		key-b {
61724ba675SRob Herring			linux,code = <KEY_B>;
62724ba675SRob Herring			label = "SW3";
63724ba675SRob Herring			wakeup-source;
64724ba675SRob Herring			debounce-interval = <20>;
65724ba675SRob Herring			gpios = <&gpio11 2 GPIO_ACTIVE_LOW>;
66724ba675SRob Herring		};
67724ba675SRob Herring	};
68724ba675SRob Herring
69724ba675SRob Herring	vcc_sdhi0: regulator-vcc-sdhi0 {
70724ba675SRob Herring		compatible = "regulator-fixed";
71724ba675SRob Herring
72724ba675SRob Herring		regulator-name = "SDHI0 Vcc";
73724ba675SRob Herring		regulator-min-microvolt = <3300000>;
74724ba675SRob Herring		regulator-max-microvolt = <3300000>;
75724ba675SRob Herring
76724ba675SRob Herring		gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>;
77724ba675SRob Herring		enable-active-high;
78724ba675SRob Herring	};
79724ba675SRob Herring
80724ba675SRob Herring	hdmi-out0 {
81724ba675SRob Herring		compatible = "hdmi-connector";
82724ba675SRob Herring		type = "a";
83724ba675SRob Herring
84724ba675SRob Herring		port {
85724ba675SRob Herring			hdmi_con0: endpoint {
86724ba675SRob Herring				remote-endpoint = <&adv7513_0_out>;
87724ba675SRob Herring			};
88724ba675SRob Herring		};
89724ba675SRob Herring	};
90724ba675SRob Herring
91724ba675SRob Herring	hdmi-out1 {
92724ba675SRob Herring		compatible = "hdmi-connector";
93724ba675SRob Herring		type = "a";
94724ba675SRob Herring
95724ba675SRob Herring		port {
96724ba675SRob Herring			hdmi_con1: endpoint {
97724ba675SRob Herring				remote-endpoint = <&adv7513_1_out>;
98724ba675SRob Herring			};
99724ba675SRob Herring		};
100724ba675SRob Herring	};
101724ba675SRob Herring
102724ba675SRob Herring	osc2_clk: osc2 {
103724ba675SRob Herring		compatible = "fixed-clock";
104724ba675SRob Herring		#clock-cells = <0>;
105724ba675SRob Herring		clock-frequency = <74250000>;
106724ba675SRob Herring	};
107724ba675SRob Herring};
108724ba675SRob Herring
109724ba675SRob Herring&extal_clk {
110724ba675SRob Herring	clock-frequency = <20000000>;
111724ba675SRob Herring};
112724ba675SRob Herring
11386b37eb0SGeert Uytterhoeven&lbsc {
11486b37eb0SGeert Uytterhoeven	ethernet@18000000 {
11586b37eb0SGeert Uytterhoeven		compatible = "smsc,lan89218", "smsc,lan9115";
11686b37eb0SGeert Uytterhoeven		reg = <0x18000000 0x100>;
11786b37eb0SGeert Uytterhoeven		phy-mode = "mii";
118*1d7d6633SGeert Uytterhoeven		interrupts-extended = <&irqc 0 IRQ_TYPE_EDGE_FALLING>;
11986b37eb0SGeert Uytterhoeven		smsc,irq-push-pull;
12086b37eb0SGeert Uytterhoeven		smsc,save-mac-address;
12186b37eb0SGeert Uytterhoeven		reg-io-width = <4>;
12286b37eb0SGeert Uytterhoeven		vddvario-supply = <&d3_3v>;
12386b37eb0SGeert Uytterhoeven		vdd33a-supply = <&d3_3v>;
12486b37eb0SGeert Uytterhoeven
12586b37eb0SGeert Uytterhoeven		pinctrl-0 = <&lan89218_pins>;
12686b37eb0SGeert Uytterhoeven		pinctrl-names = "default";
12786b37eb0SGeert Uytterhoeven	};
12886b37eb0SGeert Uytterhoeven};
12986b37eb0SGeert Uytterhoeven
130724ba675SRob Herring&pfc {
131724ba675SRob Herring	scif0_pins: scif0 {
132724ba675SRob Herring		groups = "scif0_data";
133724ba675SRob Herring		function = "scif0";
134724ba675SRob Herring	};
135724ba675SRob Herring
136724ba675SRob Herring	lan89218_pins: lan89218 {
137724ba675SRob Herring		intc {
138724ba675SRob Herring			groups = "intc_irq0";
139724ba675SRob Herring			function = "intc";
140724ba675SRob Herring		};
141724ba675SRob Herring		lbsc {
142724ba675SRob Herring			groups = "lbsc_ex_cs0";
143724ba675SRob Herring			function = "lbsc";
144724ba675SRob Herring		};
145724ba675SRob Herring	};
146724ba675SRob Herring
147724ba675SRob Herring	can0_pins: can0 {
148724ba675SRob Herring		groups = "can0_data";
149724ba675SRob Herring		function = "can0";
150724ba675SRob Herring	};
151724ba675SRob Herring
152724ba675SRob Herring	can1_pins: can1 {
153724ba675SRob Herring		groups = "can1_data";
154724ba675SRob Herring		function = "can1";
155724ba675SRob Herring	};
156724ba675SRob Herring
157724ba675SRob Herring	sdhi0_pins: sdhi0 {
158724ba675SRob Herring		groups = "sdhi0_data4", "sdhi0_ctrl";
159724ba675SRob Herring		function = "sdhi0";
160724ba675SRob Herring	};
161724ba675SRob Herring
162724ba675SRob Herring	qspi_pins: qspi {
163724ba675SRob Herring		groups = "qspi_ctrl", "qspi_data4";
164724ba675SRob Herring		function = "qspi";
165724ba675SRob Herring	};
166724ba675SRob Herring
167724ba675SRob Herring	du0_pins: du0 {
168724ba675SRob Herring		groups = "du0_rgb888", "du0_sync", "du0_disp";
169724ba675SRob Herring		function = "du0";
170724ba675SRob Herring	};
171724ba675SRob Herring
172724ba675SRob Herring	du1_pins: du1 {
173724ba675SRob Herring		groups = "du1_rgb666", "du1_sync", "du1_disp";
174724ba675SRob Herring		function = "du1";
175724ba675SRob Herring	};
176724ba675SRob Herring};
177724ba675SRob Herring
178724ba675SRob Herring&rwdt {
179724ba675SRob Herring	timeout-sec = <60>;
180724ba675SRob Herring	status = "okay";
181724ba675SRob Herring};
182724ba675SRob Herring
183724ba675SRob Herring&scif0 {
184724ba675SRob Herring	pinctrl-0 = <&scif0_pins>;
185724ba675SRob Herring	pinctrl-names = "default";
186724ba675SRob Herring
187724ba675SRob Herring	status = "okay";
188724ba675SRob Herring};
189724ba675SRob Herring
190724ba675SRob Herring&can0 {
191724ba675SRob Herring	pinctrl-0 = <&can0_pins>;
192724ba675SRob Herring	pinctrl-names = "default";
193724ba675SRob Herring
194724ba675SRob Herring	status = "okay";
195724ba675SRob Herring};
196724ba675SRob Herring
197724ba675SRob Herring&can1 {
198724ba675SRob Herring	pinctrl-0 = <&can1_pins>;
199724ba675SRob Herring	pinctrl-names = "default";
200724ba675SRob Herring
201724ba675SRob Herring	status = "okay";
202724ba675SRob Herring};
203724ba675SRob Herring
204724ba675SRob Herring&sdhi0 {
205724ba675SRob Herring	pinctrl-0 = <&sdhi0_pins>;
206724ba675SRob Herring	pinctrl-names = "default";
207724ba675SRob Herring
208724ba675SRob Herring	vmmc-supply = <&vcc_sdhi0>;
209724ba675SRob Herring	cd-gpios = <&gpio11 11 GPIO_ACTIVE_LOW>;
210724ba675SRob Herring	status = "okay";
211724ba675SRob Herring};
212724ba675SRob Herring
213724ba675SRob Herring&qspi {
214724ba675SRob Herring	pinctrl-0 = <&qspi_pins>;
215724ba675SRob Herring	pinctrl-names = "default";
216724ba675SRob Herring	status = "okay";
217724ba675SRob Herring
218724ba675SRob Herring	flash@0 {
219724ba675SRob Herring		compatible = "spansion,s25fl512s", "jedec,spi-nor";
220724ba675SRob Herring		reg = <0>;
221724ba675SRob Herring		spi-max-frequency = <30000000>;
222724ba675SRob Herring		spi-tx-bus-width = <4>;
223724ba675SRob Herring		spi-rx-bus-width = <4>;
224724ba675SRob Herring		spi-cpol;
225724ba675SRob Herring		spi-cpha;
226724ba675SRob Herring		m25p,fast-read;
227724ba675SRob Herring
228724ba675SRob Herring		partitions {
229724ba675SRob Herring			compatible = "fixed-partitions";
230724ba675SRob Herring			#address-cells = <1>;
231724ba675SRob Herring			#size-cells = <1>;
232724ba675SRob Herring
233724ba675SRob Herring			partition@0 {
234724ba675SRob Herring				label = "loader";
235724ba675SRob Herring				reg = <0x00000000 0x00040000>;
236724ba675SRob Herring				read-only;
237724ba675SRob Herring			};
238724ba675SRob Herring			partition@40000 {
239724ba675SRob Herring				label = "user";
240724ba675SRob Herring				reg = <0x00040000 0x00400000>;
241724ba675SRob Herring				read-only;
242724ba675SRob Herring			};
243724ba675SRob Herring			partition@440000 {
244724ba675SRob Herring				label = "flash";
245724ba675SRob Herring				reg = <0x00440000 0x03bc0000>;
246724ba675SRob Herring			};
247724ba675SRob Herring		};
248724ba675SRob Herring	};
249724ba675SRob Herring};
250724ba675SRob Herring
251724ba675SRob Herring&i2c4 {
252724ba675SRob Herring	status = "okay";
253724ba675SRob Herring	clock-frequency = <400000>;
254724ba675SRob Herring
255724ba675SRob Herring	/*
256724ba675SRob Herring	 * The adv75xx resets its addresses to defaults during low power mode.
257724ba675SRob Herring	 * Because we have two ADV7513 devices on the same bus, we must change
258724ba675SRob Herring	 * both of them away from the defaults so that they do not conflict.
259724ba675SRob Herring	 */
260724ba675SRob Herring	hdmi@3d {
261724ba675SRob Herring		compatible = "adi,adv7513";
262724ba675SRob Herring		reg = <0x3d>, <0x4d>, <0x2d>, <0x5d>;
263724ba675SRob Herring		reg-names = "main", "edid", "cec", "packet";
264724ba675SRob Herring
265cc75154cSGeert Uytterhoeven		avdd-supply = <&d1_8v>;
266cc75154cSGeert Uytterhoeven		dvdd-supply = <&d1_8v>;
267cc75154cSGeert Uytterhoeven		pvdd-supply = <&d1_8v>;
268cc75154cSGeert Uytterhoeven		dvdd-3v-supply = <&d3_3v>;
269cc75154cSGeert Uytterhoeven		bgvdd-supply = <&d1_8v>;
270cc75154cSGeert Uytterhoeven
271724ba675SRob Herring		adi,input-depth = <8>;
272724ba675SRob Herring		adi,input-colorspace = "rgb";
273724ba675SRob Herring		adi,input-clock = "1x";
274724ba675SRob Herring
275724ba675SRob Herring		ports {
276724ba675SRob Herring			#address-cells = <1>;
277724ba675SRob Herring			#size-cells = <0>;
278724ba675SRob Herring
279724ba675SRob Herring			port@0 {
280724ba675SRob Herring				reg = <0>;
281724ba675SRob Herring				adv7513_0_in: endpoint {
282724ba675SRob Herring					remote-endpoint = <&du_out_rgb0>;
283724ba675SRob Herring				};
284724ba675SRob Herring			};
285724ba675SRob Herring
286724ba675SRob Herring			port@1 {
287724ba675SRob Herring				reg = <1>;
288724ba675SRob Herring				adv7513_0_out: endpoint {
289724ba675SRob Herring					remote-endpoint = <&hdmi_con0>;
290724ba675SRob Herring				};
291724ba675SRob Herring			};
292724ba675SRob Herring		};
293724ba675SRob Herring	};
294724ba675SRob Herring
295724ba675SRob Herring	hdmi@39 {
296724ba675SRob Herring		compatible = "adi,adv7513";
297724ba675SRob Herring		reg = <0x39>, <0x49>, <0x29>, <0x59>;
298724ba675SRob Herring		reg-names = "main", "edid", "cec", "packet";
299724ba675SRob Herring
300cc75154cSGeert Uytterhoeven		avdd-supply = <&d1_8v>;
301cc75154cSGeert Uytterhoeven		dvdd-supply = <&d1_8v>;
302cc75154cSGeert Uytterhoeven		pvdd-supply = <&d1_8v>;
303cc75154cSGeert Uytterhoeven		dvdd-3v-supply = <&d3_3v>;
304cc75154cSGeert Uytterhoeven		bgvdd-supply = <&d1_8v>;
305cc75154cSGeert Uytterhoeven
306724ba675SRob Herring		adi,input-depth = <8>;
307724ba675SRob Herring		adi,input-colorspace = "rgb";
308724ba675SRob Herring		adi,input-clock = "1x";
309724ba675SRob Herring
310724ba675SRob Herring		ports {
311724ba675SRob Herring			#address-cells = <1>;
312724ba675SRob Herring			#size-cells = <0>;
313724ba675SRob Herring
314724ba675SRob Herring			port@0 {
315724ba675SRob Herring				reg = <0>;
316724ba675SRob Herring				adv7513_1_in: endpoint {
317724ba675SRob Herring					remote-endpoint = <&du_out_rgb1>;
318724ba675SRob Herring				};
319724ba675SRob Herring			};
320724ba675SRob Herring
321724ba675SRob Herring			port@1 {
322724ba675SRob Herring				reg = <1>;
323724ba675SRob Herring				adv7513_1_out: endpoint {
324724ba675SRob Herring					remote-endpoint = <&hdmi_con1>;
325724ba675SRob Herring				};
326724ba675SRob Herring			};
327724ba675SRob Herring		};
328724ba675SRob Herring	};
329724ba675SRob Herring};
330724ba675SRob Herring
331724ba675SRob Herring&du {
332724ba675SRob Herring	pinctrl-0 = <&du0_pins>, <&du1_pins>;
333724ba675SRob Herring	pinctrl-names = "default";
334724ba675SRob Herring
335724ba675SRob Herring	clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&osc2_clk>;
336724ba675SRob Herring	clock-names = "du.0", "du.1", "dclkin.0";
337724ba675SRob Herring	status = "okay";
338724ba675SRob Herring
339724ba675SRob Herring	ports {
340724ba675SRob Herring		port@0 {
341724ba675SRob Herring			endpoint {
342724ba675SRob Herring				remote-endpoint = <&adv7513_0_in>;
343724ba675SRob Herring			};
344724ba675SRob Herring		};
345724ba675SRob Herring		port@1 {
346724ba675SRob Herring			endpoint {
347724ba675SRob Herring				remote-endpoint = <&adv7513_1_in>;
348724ba675SRob Herring			};
349724ba675SRob Herring		};
350724ba675SRob Herring	};
351724ba675SRob Herring};
352