xref: /linux/arch/arm/boot/dts/renesas/r8a73a4-ape6evm.dts (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for the APE6EVM board
4 *
5 * Copyright (C) 2013 Renesas Solutions Corp.
6 */
7
8/dts-v1/;
9#include "r8a73a4.dtsi"
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/input/input.h>
12
13/ {
14	model = "APE6EVM";
15	compatible = "renesas,ape6evm", "renesas,r8a73a4";
16
17	aliases {
18		serial0 = &scifa0;
19	};
20
21	chosen {
22		bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
23		stdout-path = "serial0:115200n8";
24	};
25
26	memory@40000000 {
27		device_type = "memory";
28		reg = <0 0x40000000 0 0x40000000>;
29	};
30
31	memory@200000000 {
32		device_type = "memory";
33		reg = <2 0x00000000 0 0x40000000>;
34	};
35
36	vcc_mmc0: regulator-mmc0 {
37		compatible = "regulator-fixed";
38		regulator-name = "MMC0 Vcc";
39		regulator-min-microvolt = <2800000>;
40		regulator-max-microvolt = <2800000>;
41		regulator-always-on;
42	};
43
44	vcc_sdhi0: regulator-sdhi0 {
45		compatible = "regulator-fixed";
46
47		regulator-name = "SDHI0 Vcc";
48		regulator-min-microvolt = <3300000>;
49		regulator-max-microvolt = <3300000>;
50
51		gpio = <&pfc 76 GPIO_ACTIVE_HIGH>;
52		enable-active-high;
53	};
54
55	/* Common 1.8V and 3.3V rails, used by several devices on APE6EVM */
56	ape6evm_fixed_1v8: regulator-1v8 {
57		compatible = "regulator-fixed";
58		regulator-name = "1V8";
59		regulator-min-microvolt = <1800000>;
60		regulator-max-microvolt = <1800000>;
61		regulator-always-on;
62	};
63
64	ape6evm_fixed_3v3: regulator-3v3 {
65		compatible = "regulator-fixed";
66		regulator-name = "3V3";
67		regulator-min-microvolt = <3300000>;
68		regulator-max-microvolt = <3300000>;
69		regulator-always-on;
70	};
71
72	leds {
73		compatible = "gpio-leds";
74		led1 {
75			gpios = <&pfc 28 GPIO_ACTIVE_HIGH>;
76			label = "GNSS_EN";
77		};
78		led2 {
79			gpios = <&pfc 126 GPIO_ACTIVE_HIGH>;
80			label = "NFC_NRST";
81		};
82		led3 {
83			gpios = <&pfc 132 GPIO_ACTIVE_HIGH>;
84			label = "GNSS_NRST";
85		};
86		led4 {
87			gpios = <&pfc 232 GPIO_ACTIVE_HIGH>;
88			label = "BT_WAKEUP";
89		};
90		led5 {
91			gpios = <&pfc 250 GPIO_ACTIVE_HIGH>;
92			label = "STROBE";
93		};
94		led6 {
95			gpios = <&pfc 288 GPIO_ACTIVE_HIGH>;
96			label = "BBRESETOUT";
97		};
98	};
99
100	keyboard {
101		compatible = "gpio-keys";
102
103		pinctrl-names = "default";
104		pinctrl-0 = <&keyboard_pins>;
105
106		zero-key {
107			gpios = <&pfc 324 GPIO_ACTIVE_LOW>;
108			linux,code = <KEY_0>;
109			label = "S16";
110			wakeup-source;
111		};
112
113		menu-key {
114			gpios = <&pfc 325 GPIO_ACTIVE_LOW>;
115			linux,code = <KEY_MENU>;
116			label = "S17";
117		};
118
119		home-key {
120			gpios = <&pfc 326 GPIO_ACTIVE_LOW>;
121			linux,code = <KEY_HOME>;
122			label = "S18";
123		};
124
125		back-key {
126			gpios = <&pfc 327 GPIO_ACTIVE_LOW>;
127			linux,code = <KEY_BACK>;
128			label = "S19";
129		};
130
131		volup-key {
132			gpios = <&pfc 328 GPIO_ACTIVE_LOW>;
133			linux,code = <KEY_VOLUMEUP>;
134			label = "S20";
135		};
136
137		voldown-key {
138			gpios = <&pfc 329 GPIO_ACTIVE_LOW>;
139			linux,code = <KEY_VOLUMEDOWN>;
140			label = "S21";
141		};
142	};
143};
144
145&i2c5 {
146	status = "okay";
147	vdd_dvfs: regulator@1b {
148		compatible = "maxim,max8973";
149		reg = <0x1b>;
150
151		regulator-min-microvolt = <935000>;
152		regulator-max-microvolt = <1200000>;
153		regulator-boot-on;
154		regulator-always-on;
155	};
156};
157
158&cpu0 {
159	cpu0-supply = <&vdd_dvfs>;
160	operating-points = <1950000 1115000>,	/* kHz  uV */
161			   <1462500  995000>;
162	voltage-tolerance = <1>; /* 1% */
163};
164
165&bsc {
166	flash@0 {
167		compatible = "cfi-flash";
168		reg = <0x0 0x08000000>;
169		bank-width = <2>;
170
171		partitions {
172			compatible = "fixed-partitions";
173			#address-cells = <1>;
174			#size-cells = <1>;
175
176			partition@0 {
177				label = "uboot";
178				reg = <0x00000000 0x00040000>;
179				read-only;
180			};
181			partition@40000 {
182				label = "uboot-env";
183				reg = <0x00040000 0x00040000>;
184				read-only;
185			};
186			partition@80000 {
187				label = "flash";
188				reg = <0x00080000 0x07f80000>;
189			};
190		};
191	};
192
193	ethernet@8000000 {
194		compatible = "smsc,lan9220", "smsc,lan9115";
195		reg = <0x08000000 0x1000>;
196		interrupts-extended = <&irqc1 8 IRQ_TYPE_LEVEL_HIGH>;
197		phy-mode = "mii";
198		reg-io-width = <4>;
199		smsc,irq-active-high;
200		smsc,irq-push-pull;
201		reset-gpios = <&pfc 270 GPIO_ACTIVE_LOW>;
202		vdd33a-supply = <&ape6evm_fixed_3v3>;
203		vddvario-supply = <&ape6evm_fixed_1v8>;
204	};
205};
206
207&cmt1 {
208	status = "okay";
209};
210
211&extal1_clk {
212	clock-frequency = <26000000>;
213};
214
215&extal2_clk {
216	clock-frequency = <48000000>;
217};
218
219&extalr_clk {
220	clock-frequency = <32768>;
221};
222
223&pfc {
224	scifa0_pins: scifa0 {
225		groups = "scifa0_data";
226		function = "scifa0";
227	};
228
229	mmc0_pins: mmc0 {
230		groups = "mmc0_data8", "mmc0_ctrl";
231		function = "mmc0";
232	};
233
234	sdhi0_pins: sd0 {
235		groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd";
236		function = "sdhi0";
237	};
238
239	sdhi1_pins: sd1 {
240		groups = "sdhi1_data4", "sdhi1_ctrl";
241		function = "sdhi1";
242	};
243
244	keyboard_pins: keyboard {
245		pins = "PORT324", "PORT325", "PORT326", "PORT327", "PORT328",
246		       "PORT329";
247		bias-pull-up;
248	};
249};
250
251&mmcif0 {
252	vmmc-supply = <&vcc_mmc0>;
253	bus-width = <8>;
254	non-removable;
255	pinctrl-names = "default";
256	pinctrl-0 = <&mmc0_pins>;
257	status = "okay";
258};
259
260&scifa0 {
261	pinctrl-0 = <&scifa0_pins>;
262	pinctrl-names = "default";
263
264	status = "okay";
265};
266
267&sdhi0 {
268	vmmc-supply = <&vcc_sdhi0>;
269	bus-width = <4>;
270	disable-wp;
271	pinctrl-names = "default";
272	pinctrl-0 = <&sdhi0_pins>;
273	status = "okay";
274};
275
276&sdhi1 {
277	vmmc-supply = <&ape6evm_fixed_3v3>;
278	bus-width = <4>;
279	broken-cd;
280	disable-wp;
281	pinctrl-names = "default";
282	pinctrl-0 = <&sdhi1_pins>;
283	status = "okay";
284};
285