blob: a4c425923c05e8cdeff90843a2407eb8884a2bfb [file] [log] [blame]
Magnus Damm78ded162013-03-29 17:00:02 +09001/*
2 * Device Tree Source for the APE6EVM board
3 *
4 * Copyright (C) 2013 Renesas Solutions Corp.
5 *
6 * This file is licensed under the terms of the GNU General Public License
7 * version 2. This program is licensed "as is" without any warranty of any
8 * kind, whether express or implied.
9 */
10
11/dts-v1/;
Laurent Pinchart31c46cb2013-11-09 13:23:53 +010012#include "r8a73a4.dtsi"
Ulrich Hecht326baa82014-12-17 17:18:14 +010013#include <dt-bindings/gpio/gpio.h>
Ulrich Hecht2670ee82014-12-17 17:18:16 +010014#include <dt-bindings/input/input.h>
Magnus Damm78ded162013-03-29 17:00:02 +090015
16/ {
17 model = "APE6EVM";
18 compatible = "renesas,ape6evm", "renesas,r8a73a4";
19
Ulrich Hecht326baa82014-12-17 17:18:14 +010020 aliases {
21 serial0 = &scifa0;
22 };
23
Magnus Damm78ded162013-03-29 17:00:02 +090024 chosen {
Geert Uytterhoevend1e21e32015-02-17 16:04:46 +010025 bootargs = "ignore_loglevel root=/dev/nfs ip=dhcp rw";
Ulrich Hecht326baa82014-12-17 17:18:14 +010026 stdout-path = &scifa0;
Magnus Damm78ded162013-03-29 17:00:02 +090027 };
28
29 memory@40000000 {
30 device_type = "memory";
31 reg = <0 0x40000000 0 0x40000000>;
32 };
33
Takashi Yoshii8353f092013-10-31 12:15:49 +090034 memory@200000000 {
35 device_type = "memory";
36 reg = <2 0x00000000 0 0x40000000>;
37 };
38
Ulrich Hecht326baa82014-12-17 17:18:14 +010039 vcc_mmc0: regulator@0 {
40 compatible = "regulator-fixed";
41 regulator-name = "MMC0 Vcc";
42 regulator-min-microvolt = <2800000>;
43 regulator-max-microvolt = <2800000>;
44 regulator-always-on;
45 };
46
47 vcc_sdhi0: regulator@1 {
48 compatible = "regulator-fixed";
49
50 regulator-name = "SDHI0 Vcc";
51 regulator-min-microvolt = <3300000>;
52 regulator-max-microvolt = <3300000>;
53
54 gpio = <&pfc 76 GPIO_ACTIVE_HIGH>;
55 enable-active-high;
56 };
57
Laurent Pinchart09ee81d2014-12-17 01:17:25 +020058 /* Common 1.8V and 3.3V rails, used by several devices on APE6EVM */
59 ape6evm_fixed_1v8: regulator@2 {
60 compatible = "regulator-fixed";
61 regulator-name = "1V8";
62 regulator-min-microvolt = <1800000>;
63 regulator-max-microvolt = <1800000>;
64 regulator-always-on;
65 };
66
67 ape6evm_fixed_3v3: regulator@3 {
Magnus Damm15351a7a2013-03-29 17:00:21 +090068 compatible = "regulator-fixed";
69 regulator-name = "3V3";
70 regulator-min-microvolt = <3300000>;
71 regulator-max-microvolt = <3300000>;
72 regulator-always-on;
73 };
74
Ulrich Hechtb7422572014-12-17 17:18:15 +010075 leds {
76 compatible = "gpio-leds";
77 led1 {
Geert Uytterhoevenca50ee82015-02-26 11:46:29 +010078 gpios = <&pfc 28 GPIO_ACTIVE_HIGH>;
Ulrich Hechtb7422572014-12-17 17:18:15 +010079 label = "GNSS_EN";
80 };
81 led2 {
Geert Uytterhoevenca50ee82015-02-26 11:46:29 +010082 gpios = <&pfc 126 GPIO_ACTIVE_HIGH>;
Ulrich Hechtb7422572014-12-17 17:18:15 +010083 label = "NFC_NRST";
84 };
85 led3 {
Geert Uytterhoevenca50ee82015-02-26 11:46:29 +010086 gpios = <&pfc 132 GPIO_ACTIVE_HIGH>;
Ulrich Hechtb7422572014-12-17 17:18:15 +010087 label = "GNSS_NRST";
88 };
89 led4 {
Geert Uytterhoevenca50ee82015-02-26 11:46:29 +010090 gpios = <&pfc 232 GPIO_ACTIVE_HIGH>;
Ulrich Hechtb7422572014-12-17 17:18:15 +010091 label = "BT_WAKEUP";
92 };
93 led5 {
Geert Uytterhoevenca50ee82015-02-26 11:46:29 +010094 gpios = <&pfc 250 GPIO_ACTIVE_HIGH>;
Ulrich Hechtb7422572014-12-17 17:18:15 +010095 label = "STROBE";
96 };
97 led6 {
Geert Uytterhoevenca50ee82015-02-26 11:46:29 +010098 gpios = <&pfc 288 GPIO_ACTIVE_HIGH>;
Ulrich Hechtb7422572014-12-17 17:18:15 +010099 label = "BBRESETOUT";
100 };
101 };
Ulrich Hecht2670ee82014-12-17 17:18:16 +0100102
103 keyboard {
104 compatible = "gpio-keys";
105
Geert Uytterhoevena1046622015-02-27 18:48:38 +0100106 pinctrl-names = "default";
107 pinctrl-0 = <&keyboard_pins>;
108
Ulrich Hecht2670ee82014-12-17 17:18:16 +0100109 zero-key {
110 gpios = <&pfc 324 GPIO_ACTIVE_LOW>;
111 linux,code = <KEY_0>;
112 label = "S16";
Geert Uytterhoeven90ca4092015-02-27 18:48:39 +0100113 gpio-key,wakeup;
Ulrich Hecht2670ee82014-12-17 17:18:16 +0100114 };
115
116 menu-key {
117 gpios = <&pfc 325 GPIO_ACTIVE_LOW>;
118 linux,code = <KEY_MENU>;
119 label = "S17";
120 };
121
122 home-key {
123 gpios = <&pfc 326 GPIO_ACTIVE_LOW>;
124 linux,code = <KEY_HOME>;
125 label = "S18";
126 };
127
128 back-key {
129 gpios = <&pfc 327 GPIO_ACTIVE_LOW>;
130 linux,code = <KEY_BACK>;
131 label = "S19";
132 };
133
134 volup-key {
135 gpios = <&pfc 328 GPIO_ACTIVE_LOW>;
136 linux,code = <KEY_VOLUMEUP>;
137 label = "S20";
138 };
139
140 voldown-key {
141 gpios = <&pfc 329 GPIO_ACTIVE_LOW>;
142 linux,code = <KEY_VOLUMEDOWN>;
143 label = "S21";
144 };
145 };
Magnus Damm78ded162013-03-29 17:00:02 +0900146};
Guennadi Liakhovetski463a2432013-06-27 11:47:58 +0200147
148&i2c5 {
Guennadi Liakhovetskieda3a4f2013-09-26 13:06:01 +0200149 status = "okay";
Geert Uytterhoevene8545be92015-04-27 14:55:31 +0200150 vdd_dvfs: regulator@1b {
Guennadi Liakhovetski463a2432013-06-27 11:47:58 +0200151 compatible = "maxim,max8973";
152 reg = <0x1b>;
153
154 regulator-min-microvolt = <935000>;
155 regulator-max-microvolt = <1200000>;
156 regulator-boot-on;
157 regulator-always-on;
158 };
159};
160
161&cpu0 {
162 cpu0-supply = <&vdd_dvfs>;
163 operating-points = <
164 /* kHz uV */
165 1950000 1115000
166 1462500 995000
167 >;
168 voltage-tolerance = <1>; /* 1% */
169};
Ulrich Hecht326baa82014-12-17 17:18:14 +0100170
Geert Uytterhoevena656c602015-02-17 16:04:42 +0100171&bsc {
172 ethernet@8000000 {
173 compatible = "smsc,lan9220", "smsc,lan9115";
174 reg = <0x08000000 0x1000>;
175 interrupt-parent = <&irqc1>;
176 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
177 phy-mode = "mii";
178 reg-io-width = <4>;
179 smsc,irq-active-high;
180 smsc,irq-push-pull;
181 vdd33a-supply = <&ape6evm_fixed_3v3>;
182 vddvario-supply = <&ape6evm_fixed_1v8>;
183 };
184};
185
Ulrich Hecht326baa82014-12-17 17:18:14 +0100186&cmt1 {
187 status = "okay";
188};
189
190&pfc {
191 scifa0_pins: serial0 {
192 renesas,groups = "scifa0_data";
193 renesas,function = "scifa0";
194 };
195
196 mmc0_pins: mmc {
197 renesas,groups = "mmc0_data8", "mmc0_ctrl";
198 renesas,function = "mmc0";
199 };
200
201 sdhi0_pins: sd0 {
202 renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd";
203 renesas,function = "sdhi0";
204 };
205
206 sdhi1_pins: sd1 {
207 renesas,groups = "sdhi1_data4", "sdhi1_ctrl";
208 renesas,function = "sdhi1";
209 };
Geert Uytterhoevena1046622015-02-27 18:48:38 +0100210
211 keyboard_pins: keyboard {
212 renesas,pins = "PORT324", "PORT325", "PORT326", "PORT327",
213 "PORT328", "PORT329";
214 bias-pull-up;
215 };
Ulrich Hecht326baa82014-12-17 17:18:14 +0100216};
217
218&mmcif0 {
219 vmmc-supply = <&vcc_mmc0>;
220 bus-width = <8>;
221 non-removable;
222 pinctrl-names = "default";
223 pinctrl-0 = <&mmc0_pins>;
224 status = "okay";
225};
226
227&scifa0 {
228 pinctrl-0 = <&scifa0_pins>;
229 pinctrl-names = "default";
230
231 status = "okay";
232};
233
234&sdhi0 {
235 vmmc-supply = <&vcc_sdhi0>;
236 bus-width = <4>;
237 toshiba,mmc-wrprotect-disable;
238 pinctrl-names = "default";
239 pinctrl-0 = <&sdhi0_pins>;
240 status = "okay";
241};
242
243&sdhi1 {
244 vmmc-supply = <&ape6evm_fixed_3v3>;
245 bus-width = <4>;
246 broken-cd;
247 toshiba,mmc-wrprotect-disable;
248 pinctrl-names = "default";
249 pinctrl-0 = <&sdhi1_pins>;
250 status = "okay";
251};