blob: b2e661613dda879b0c42ad4168e3b484f996213c [file] [log] [blame]
Hisashi Nakamura1f52c652013-09-04 12:46:49 +09001/*
2 * Device Tree Source for the Koelsch board
3 *
4 * Copyright (C) 2013 Renesas Electronics Corporation
Sergei Shtylyov08e8f0f2014-02-20 02:28:59 +03005 * Copyright (C) 2013-2014 Renesas Solutions Corp.
6 * Copyright (C) 2014 Cogent Embedded, Inc.
Hisashi Nakamura1f52c652013-09-04 12:46:49 +09007 *
8 * This file is licensed under the terms of the GNU General Public License
9 * version 2. This program is licensed "as is" without any warranty of any
10 * kind, whether express or implied.
11 */
12
13/dts-v1/;
Laurent Pinchart31c46cb2013-11-09 13:23:53 +010014#include "r8a7791.dtsi"
Laurent Pinchartf8e25352013-12-11 15:13:48 +010015#include <dt-bindings/gpio/gpio.h>
Magnus Damm7f168b12014-03-18 22:01:17 +090016#include <dt-bindings/input/input.h>
Hisashi Nakamura1f52c652013-09-04 12:46:49 +090017
18/ {
19 model = "Koelsch";
20 compatible = "renesas,koelsch", "renesas,r8a7791";
21
Laurent Pinchart5ba55fa2014-04-30 02:31:46 +020022 aliases {
23 serial6 = &scif0;
24 serial7 = &scif1;
25 };
26
Hisashi Nakamura1f52c652013-09-04 12:46:49 +090027 chosen {
28 bootargs = "console=ttySC6,115200 ignore_loglevel rw root=/dev/nfs ip=dhcp";
29 };
30
31 memory@40000000 {
32 device_type = "memory";
Takashi Yoshii4cd1bad2013-12-22 18:27:23 +090033 reg = <0 0x40000000 0 0x40000000>;
34 };
35
36 memory@200000000 {
37 device_type = "memory";
38 reg = <2 0x00000000 0 0x40000000>;
Hisashi Nakamura1f52c652013-09-04 12:46:49 +090039 };
40
41 lbsc {
42 #address-cells = <1>;
43 #size-cells = <1>;
44 };
Laurent Pinchartf8e25352013-12-11 15:13:48 +010045
Laurent Pinchartaff52742013-12-19 16:28:42 +010046 gpio-keys {
47 compatible = "gpio-keys";
48
Magnus Damm7f168b12014-03-18 22:01:17 +090049 key-1 {
50 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
51 linux,code = <KEY_1>;
52 label = "SW2-1";
53 gpio-key,wakeup;
54 debounce-interval = <20>;
55 };
56 key-2 {
57 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
58 linux,code = <KEY_2>;
59 label = "SW2-2";
60 gpio-key,wakeup;
61 debounce-interval = <20>;
62 };
63 key-3 {
64 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
65 linux,code = <KEY_3>;
66 label = "SW2-3";
67 gpio-key,wakeup;
68 debounce-interval = <20>;
69 };
70 key-4 {
71 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
72 linux,code = <KEY_4>;
73 label = "SW2-4";
74 gpio-key,wakeup;
75 debounce-interval = <20>;
76 };
Laurent Pinchartaff52742013-12-19 16:28:42 +010077 key-a {
78 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +090079 linux,code = <KEY_A>;
Laurent Pinchartaff52742013-12-19 16:28:42 +010080 label = "SW30";
81 gpio-key,wakeup;
82 debounce-interval = <20>;
83 };
84 key-b {
85 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +090086 linux,code = <KEY_B>;
Laurent Pinchartaff52742013-12-19 16:28:42 +010087 label = "SW31";
88 gpio-key,wakeup;
89 debounce-interval = <20>;
90 };
91 key-c {
92 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +090093 linux,code = <KEY_C>;
Laurent Pinchartaff52742013-12-19 16:28:42 +010094 label = "SW32";
95 gpio-key,wakeup;
96 debounce-interval = <20>;
97 };
98 key-d {
99 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +0900100 linux,code = <KEY_D>;
Laurent Pinchartaff52742013-12-19 16:28:42 +0100101 label = "SW33";
102 gpio-key,wakeup;
103 debounce-interval = <20>;
104 };
105 key-e {
106 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +0900107 linux,code = <KEY_E>;
Laurent Pinchartaff52742013-12-19 16:28:42 +0100108 label = "SW34";
109 gpio-key,wakeup;
110 debounce-interval = <20>;
111 };
112 key-f {
113 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +0900114 linux,code = <KEY_F>;
Laurent Pinchartaff52742013-12-19 16:28:42 +0100115 label = "SW35";
116 gpio-key,wakeup;
117 debounce-interval = <20>;
118 };
119 key-g {
120 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
Magnus Damm7f168b12014-03-18 22:01:17 +0900121 linux,code = <KEY_G>;
Laurent Pinchartaff52742013-12-19 16:28:42 +0100122 label = "SW36";
123 gpio-key,wakeup;
124 debounce-interval = <20>;
125 };
126 };
127
Laurent Pinchartf8e25352013-12-11 15:13:48 +0100128 leds {
129 compatible = "gpio-leds";
130 led6 {
131 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
132 };
133 led7 {
134 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
135 };
136 led8 {
137 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
138 };
139 };
Magnus Damm2c60a7d2014-02-12 18:54:04 +0900140
141 vcc_sdhi0: regulator@0 {
142 compatible = "regulator-fixed";
143
144 regulator-name = "SDHI0 Vcc";
145 regulator-min-microvolt = <3300000>;
146 regulator-max-microvolt = <3300000>;
147
148 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
149 enable-active-high;
150 };
151
152 vccq_sdhi0: regulator@1 {
153 compatible = "regulator-gpio";
154
155 regulator-name = "SDHI0 VccQ";
156 regulator-min-microvolt = <1800000>;
157 regulator-max-microvolt = <3300000>;
158
159 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
160 gpios-states = <1>;
161 states = <3300000 1
162 1800000 0>;
163 };
164
165 vcc_sdhi1: regulator@2 {
166 compatible = "regulator-fixed";
167
168 regulator-name = "SDHI1 Vcc";
169 regulator-min-microvolt = <3300000>;
170 regulator-max-microvolt = <3300000>;
171
172 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
173 enable-active-high;
174 };
175
176 vccq_sdhi1: regulator@3 {
177 compatible = "regulator-gpio";
178
179 regulator-name = "SDHI1 VccQ";
180 regulator-min-microvolt = <1800000>;
181 regulator-max-microvolt = <3300000>;
182
183 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
184 gpios-states = <1>;
185 states = <3300000 1
186 1800000 0>;
187 };
188
189 vcc_sdhi2: regulator@4 {
190 compatible = "regulator-fixed";
191
192 regulator-name = "SDHI2 Vcc";
193 regulator-min-microvolt = <3300000>;
194 regulator-max-microvolt = <3300000>;
195
196 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
197 enable-active-high;
198 };
199
200 vccq_sdhi2: regulator@5 {
201 compatible = "regulator-gpio";
202
203 regulator-name = "SDHI2 VccQ";
204 regulator-min-microvolt = <1800000>;
205 regulator-max-microvolt = <3300000>;
206
207 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
208 gpios-states = <1>;
209 states = <3300000 1
210 1800000 0>;
211 };
Laurent Pinchartf8e25352013-12-11 15:13:48 +0100212};
213
Laurent Pinchartfcf0c722013-12-11 15:13:50 +0100214&extal_clk {
215 clock-frequency = <20000000>;
216};
217
Wolfram Sang38c53512014-02-17 11:44:42 +0100218&i2c2 {
219 pinctrl-0 = <&i2c2_pins>;
220 pinctrl-names = "default";
221
222 status = "okay";
223 clock-frequency = <400000>;
224
225 eeprom@50 {
226 compatible = "renesas,24c02";
227 reg = <0x50>;
228 pagesize = <16>;
229 };
230};
231
Wolfram Sangaa28e552014-03-10 12:27:00 +0100232&i2c6 {
233 status = "okay";
234 clock-frequency = <100000>;
235};
236
Laurent Pinchartf8e25352013-12-11 15:13:48 +0100237&pfc {
Laurent Pinchart5ba55fa2014-04-30 02:31:46 +0200238 pinctrl-0 = <&du_pins>;
Laurent Pinchartf8e25352013-12-11 15:13:48 +0100239 pinctrl-names = "default";
240
Wolfram Sange6a4c002014-03-10 12:26:59 +0100241 i2c2_pins: i2c2 {
Wolfram Sang38c53512014-02-17 11:44:42 +0100242 renesas,groups = "i2c2";
243 renesas,function = "i2c2";
244 };
245
Laurent Pinchartafba9412014-02-16 22:32:01 +0100246 du_pins: du {
247 renesas,groups = "du_rgb666", "du_sync", "du_clk_out_0";
248 renesas,function = "du";
249 };
250
Laurent Pinchartf8e25352013-12-11 15:13:48 +0100251 scif0_pins: serial0 {
252 renesas,groups = "scif0_data_d";
253 renesas,function = "scif0";
254 };
255
256 scif1_pins: serial1 {
257 renesas,groups = "scif1_data_d";
258 renesas,function = "scif1";
259 };
Geert Uytterhoevene02ee512014-02-04 16:24:04 +0100260
Sergei Shtylyov08e8f0f2014-02-20 02:28:59 +0300261 ether_pins: ether {
262 renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
263 renesas,function = "eth";
264 };
265
266 phy1_pins: phy1 {
267 renesas,groups = "intc_irq0";
268 renesas,function = "intc";
269 };
270
Magnus Damm2c60a7d2014-02-12 18:54:04 +0900271 sdhi0_pins: sd0 {
Magnus Dammd5dda032014-04-14 19:13:21 +0900272 renesas,groups = "sdhi0_data4", "sdhi0_ctrl";
Magnus Damm2c60a7d2014-02-12 18:54:04 +0900273 renesas,function = "sdhi0";
274 };
275
276 sdhi1_pins: sd1 {
Magnus Dammd5dda032014-04-14 19:13:21 +0900277 renesas,groups = "sdhi1_data4", "sdhi1_ctrl";
Magnus Damm2c60a7d2014-02-12 18:54:04 +0900278 renesas,function = "sdhi1";
279 };
280
281 sdhi2_pins: sd2 {
Magnus Dammd5dda032014-04-14 19:13:21 +0900282 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
Magnus Damm2c60a7d2014-02-12 18:54:04 +0900283 renesas,function = "sdhi2";
284 };
285
Geert Uytterhoeven6f3e4ee2014-02-25 11:30:14 +0100286 qspi_pins: spi0 {
Geert Uytterhoevene02ee512014-02-04 16:24:04 +0100287 renesas,groups = "qspi_ctrl", "qspi_data4";
288 renesas,function = "qspi";
289 };
Geert Uytterhoevenb16f05a2014-02-25 11:30:18 +0100290
291 msiof0_pins: spi1 {
292 renesas,groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
293 "msiof0_tx";
294 renesas,function = "msiof0";
295 };
Gaku Inami1d41f362014-06-03 21:02:59 +0900296
297 i2c6_pins: i2c6 {
298 renesas,groups = "i2c6";
299 renesas,function = "i2c6";
300 };
Hisashi Nakamura1f52c652013-09-04 12:46:49 +0900301};
Valentine Barshak760c2772014-01-14 21:05:41 +0400302
Sergei Shtylyov08e8f0f2014-02-20 02:28:59 +0300303&ether {
304 pinctrl-0 = <&ether_pins &phy1_pins>;
305 pinctrl-names = "default";
306
307 phy-handle = <&phy1>;
308 renesas,ether-link-active-low;
309 status = "ok";
310
311 phy1: ethernet-phy@1 {
312 reg = <1>;
313 interrupt-parent = <&irqc0>;
314 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
Laurent Pinchart19f647c2014-03-18 19:04:48 +0100315 micrel,led-mode = <1>;
Sergei Shtylyov08e8f0f2014-02-20 02:28:59 +0300316 };
317};
318
Valentine Barshak760c2772014-01-14 21:05:41 +0400319&sata0 {
320 status = "okay";
321};
Geert Uytterhoevene02ee512014-02-04 16:24:04 +0100322
Laurent Pinchart5ba55fa2014-04-30 02:31:46 +0200323&scif0 {
324 pinctrl-0 = <&scif0_pins>;
325 pinctrl-names = "default";
326
327 status = "okay";
328};
329
330&scif1 {
331 pinctrl-0 = <&scif1_pins>;
332 pinctrl-names = "default";
333
334 status = "okay";
335};
336
Magnus Damm2c60a7d2014-02-12 18:54:04 +0900337&sdhi0 {
338 pinctrl-0 = <&sdhi0_pins>;
339 pinctrl-names = "default";
340
341 vmmc-supply = <&vcc_sdhi0>;
342 vqmmc-supply = <&vccq_sdhi0>;
343 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
344 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
345 status = "okay";
346};
347
348&sdhi1 {
349 pinctrl-0 = <&sdhi1_pins>;
350 pinctrl-names = "default";
351
352 vmmc-supply = <&vcc_sdhi1>;
353 vqmmc-supply = <&vccq_sdhi1>;
354 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
355 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
356 status = "okay";
357};
358
359&sdhi2 {
360 pinctrl-0 = <&sdhi2_pins>;
361 pinctrl-names = "default";
362
363 vmmc-supply = <&vcc_sdhi2>;
364 vqmmc-supply = <&vccq_sdhi2>;
365 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
366 status = "okay";
367};
368
Geert Uytterhoeven6f3e4ee2014-02-25 11:30:14 +0100369&qspi {
Geert Uytterhoevene02ee512014-02-04 16:24:04 +0100370 pinctrl-0 = <&qspi_pins>;
371 pinctrl-names = "default";
372
373 status = "okay";
374
375 flash: flash@0 {
376 #address-cells = <1>;
377 #size-cells = <1>;
378 compatible = "spansion,s25fl512s";
379 reg = <0>;
380 spi-max-frequency = <30000000>;
Geert Uytterhoevened560832014-04-14 19:35:58 +0200381 spi-tx-bus-width = <4>;
382 spi-rx-bus-width = <4>;
Geert Uytterhoevene02ee512014-02-04 16:24:04 +0100383 m25p,fast-read;
384
385 partition@0 {
386 label = "loader";
387 reg = <0x00000000 0x00080000>;
388 read-only;
389 };
390 partition@80000 {
391 label = "bootenv";
392 reg = <0x00080000 0x00080000>;
393 read-only;
394 };
395 partition@100000 {
396 label = "data";
397 reg = <0x00100000 0x03f00000>;
398 };
399 };
400};
Geert Uytterhoevenb16f05a2014-02-25 11:30:18 +0100401
402&msiof0 {
403 pinctrl-0 = <&msiof0_pins>;
404 pinctrl-names = "default";
405
406 status = "okay";
407
408 pmic: pmic@0 {
409 compatible = "renesas,r2a11302ft";
410 reg = <0>;
411 spi-max-frequency = <6000000>;
412 spi-cpol;
413 spi-cpha;
414 };
415};
Gaku Inami1d41f362014-06-03 21:02:59 +0900416
417&i2c6 {
418 pinctrl-names = "default";
419 pinctrl-0 = <&i2c6_pins>;
420 status = "okay";
421
422 vdd_dvfs: regulator@68 {
423 compatible = "diasemi,da9210";
424 reg = <0x68>;
425
426 regulator-min-microvolt = <1000000>;
427 regulator-max-microvolt = <1000000>;
428 regulator-boot-on;
429 regulator-always-on;
430 };
431};
Gaku Inamia57004ec2014-06-03 21:03:10 +0900432
433&cpu0 {
434 cpu0-supply = <&vdd_dvfs>;
435};