blob: 86fb2ee29782158d53d3c01c2dd184f84af74d80 [file] [log] [blame]
Magnus Damm3cc828f2013-03-29 17:49:37 +09001/*
2 * Device Tree Source for the Lager board
3 *
Sergei Shtylyovda4ea952014-02-20 02:22:31 +03004 * Copyright (C) 2013-2014 Renesas Solutions Corp.
5 * Copyright (C) 2014 Cogent Embedded, Inc.
Magnus Damm3cc828f2013-03-29 17:49:37 +09006 *
7 * This file is licensed under the terms of the GNU General Public License
8 * version 2. This program is licensed "as is" without any warranty of any
9 * kind, whether express or implied.
10 */
11
12/dts-v1/;
Laurent Pinchart31c46cb2013-11-09 13:23:53 +010013#include "r8a7790.dtsi"
Laurent Pinchart39fa5112013-12-11 15:13:47 +010014#include <dt-bindings/gpio/gpio.h>
Magnus Dammf7dcd382014-03-18 21:57:48 +090015#include <dt-bindings/input/input.h>
Magnus Damm3cc828f2013-03-29 17:49:37 +090016
17/ {
18 model = "Lager";
19 compatible = "renesas,lager", "renesas,r8a7790";
20
Laurent Pinchart4e9c4872014-04-30 02:31:45 +020021 aliases {
Wolfram Sang7c055892014-09-16 18:10:37 +020022 serial6 = &scifa0;
23 serial7 = &scifa1;
Laurent Pinchart4e9c4872014-04-30 02:31:45 +020024 };
25
Magnus Damm3cc828f2013-03-29 17:49:37 +090026 chosen {
Simon Hormandcbbbaf2013-08-06 16:50:11 +090027 bootargs = "console=ttySC6,115200 ignore_loglevel rw root=/dev/nfs ip=dhcp";
Geert Uytterhoevencf855812014-10-03 17:11:40 +020028 stdout-path = &scifa0;
Magnus Damm3cc828f2013-03-29 17:49:37 +090029 };
30
31 memory@40000000 {
32 device_type = "memory";
Magnus Damm7b16c612014-06-06 15:40:26 +090033 reg = <0 0x40000000 0 0x40000000>;
Magnus Damm3cc828f2013-03-29 17:49:37 +090034 };
35
Simon Horman126f9982014-09-03 09:49:01 +090036 memory@140000000 {
Magnus Damm62bc32a2013-10-31 12:21:41 +090037 device_type = "memory";
Magnus Damm7b16c612014-06-06 15:40:26 +090038 reg = <1 0x40000000 0 0xc0000000>;
Magnus Damm62bc32a2013-10-31 12:21:41 +090039 };
40
Magnus Damm3cc828f2013-03-29 17:49:37 +090041 lbsc {
42 #address-cells = <1>;
43 #size-cells = <1>;
44 };
Laurent Pinchart39fa5112013-12-11 15:13:47 +010045
Magnus Dammf7dcd382014-03-18 21:57:48 +090046 gpio_keys {
47 compatible = "gpio-keys";
48
49 button@1 {
50 linux,code = <KEY_1>;
51 label = "SW2-1";
52 gpio-key,wakeup;
53 debounce-interval = <20>;
54 gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
55 };
56 button@2 {
57 linux,code = <KEY_2>;
58 label = "SW2-2";
59 gpio-key,wakeup;
60 debounce-interval = <20>;
61 gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
62 };
63 button@3 {
64 linux,code = <KEY_3>;
65 label = "SW2-3";
66 gpio-key,wakeup;
67 debounce-interval = <20>;
68 gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
69 };
70 button@4 {
71 linux,code = <KEY_4>;
72 label = "SW2-4";
73 gpio-key,wakeup;
74 debounce-interval = <20>;
75 gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
76 };
77 };
78
Laurent Pinchart39fa5112013-12-11 15:13:47 +010079 leds {
80 compatible = "gpio-leds";
81 led6 {
82 gpios = <&gpio4 22 GPIO_ACTIVE_HIGH>;
83 };
84 led7 {
85 gpios = <&gpio4 23 GPIO_ACTIVE_HIGH>;
86 };
87 led8 {
88 gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>;
89 };
90 };
91
92 fixedregulator3v3: fixedregulator@0 {
93 compatible = "regulator-fixed";
94 regulator-name = "fixed-3.3V";
95 regulator-min-microvolt = <3300000>;
96 regulator-max-microvolt = <3300000>;
97 regulator-boot-on;
98 regulator-always-on;
99 };
Kuninori Morimotoc6119942014-02-12 21:43:19 -0800100
101 vcc_sdhi0: regulator@1 {
102 compatible = "regulator-fixed";
103
104 regulator-name = "SDHI0 Vcc";
105 regulator-min-microvolt = <3300000>;
106 regulator-max-microvolt = <3300000>;
107
108 gpio = <&gpio5 24 GPIO_ACTIVE_HIGH>;
109 enable-active-high;
110 };
111
112 vccq_sdhi0: regulator@2 {
113 compatible = "regulator-gpio";
114
115 regulator-name = "SDHI0 VccQ";
116 regulator-min-microvolt = <1800000>;
117 regulator-max-microvolt = <3300000>;
118
119 gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
120 gpios-states = <1>;
121 states = <3300000 1
122 1800000 0>;
123 };
124
125 vcc_sdhi2: regulator@3 {
126 compatible = "regulator-fixed";
127
128 regulator-name = "SDHI2 Vcc";
129 regulator-min-microvolt = <3300000>;
130 regulator-max-microvolt = <3300000>;
131
132 gpio = <&gpio5 25 GPIO_ACTIVE_HIGH>;
133 enable-active-high;
134 };
135
136 vccq_sdhi2: regulator@4 {
137 compatible = "regulator-gpio";
138
139 regulator-name = "SDHI2 VccQ";
140 regulator-min-microvolt = <1800000>;
141 regulator-max-microvolt = <3300000>;
142
143 gpios = <&gpio5 30 GPIO_ACTIVE_HIGH>;
144 gpios-states = <1>;
145 states = <3300000 1
146 1800000 0>;
147 };
Laurent Pinchart3edd18f2014-01-21 16:02:54 +0100148
149 vga-encoder {
150 compatible = "adi,adv7123";
151
152 ports {
153 #address-cells = <1>;
154 #size-cells = <0>;
155
156 port@0 {
157 reg = <0>;
158 adv7123_in: endpoint {
159 remote-endpoint = <&du_out_rgb>;
160 };
161 };
162 port@1 {
163 reg = <1>;
164 adv7123_out: endpoint {
165 remote-endpoint = <&vga_in>;
166 };
167 };
168 };
169 };
170
171 vga {
172 compatible = "vga-connector";
173
174 port {
175 vga_in: endpoint {
176 remote-endpoint = <&adv7123_out>;
177 };
178 };
179 };
180};
181
182&du {
183 pinctrl-0 = <&du_pins>;
184 pinctrl-names = "default";
185 status = "okay";
186
187 ports {
188 port@0 {
189 endpoint {
190 remote-endpoint = <&adv7123_in>;
191 };
192 };
193 port@2 {
194 lvds_connector: endpoint {
195 };
196 };
197 };
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100198};
199
Laurent Pinchart62e43052013-12-11 15:13:49 +0100200&extal_clk {
201 clock-frequency = <20000000>;
202};
203
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100204&pfc {
Laurent Pinchart3024f502014-02-16 22:31:59 +0100205 du_pins: du {
206 renesas,groups = "du_rgb666", "du_sync_1", "du_clk_out_0";
207 renesas,function = "du";
208 };
209
Wolfram Sang7c055892014-09-16 18:10:37 +0200210 scifa0_pins: serial0 {
211 renesas,groups = "scifa0_data";
212 renesas,function = "scifa0";
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100213 };
214
Sergei Shtylyovda4ea952014-02-20 02:22:31 +0300215 ether_pins: ether {
216 renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
217 renesas,function = "eth";
218 };
219
220 phy1_pins: phy1 {
221 renesas,groups = "intc_irq0";
222 renesas,function = "intc";
223 };
224
Wolfram Sang7c055892014-09-16 18:10:37 +0200225 scifa1_pins: serial1 {
226 renesas,groups = "scifa1_data";
227 renesas,function = "scifa1";
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100228 };
229
Kuninori Morimotoc6119942014-02-12 21:43:19 -0800230 sdhi0_pins: sd0 {
Rob Taylorb08eed02014-04-07 20:16:52 +0100231 renesas,groups = "sdhi0_data4", "sdhi0_ctrl";
Kuninori Morimotoc6119942014-02-12 21:43:19 -0800232 renesas,function = "sdhi0";
233 };
234
235 sdhi2_pins: sd2 {
Rob Taylorb08eed02014-04-07 20:16:52 +0100236 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
Kuninori Morimotoc6119942014-02-12 21:43:19 -0800237 renesas,function = "sdhi2";
238 };
239
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100240 mmc1_pins: mmc1 {
241 renesas,groups = "mmc1_data8", "mmc1_ctrl";
242 renesas,function = "mmc1";
243 };
Geert Uytterhoeven9fe7c4f2014-02-10 11:47:30 +0100244
Geert Uytterhoevenfad6d452014-02-25 11:30:13 +0100245 qspi_pins: spi0 {
Geert Uytterhoeven9fe7c4f2014-02-10 11:47:30 +0100246 renesas,groups = "qspi_ctrl", "qspi_data4";
247 renesas,function = "qspi";
248 };
Geert Uytterhoevenb0403b92014-02-25 11:30:17 +0100249
250 msiof1_pins: spi2 {
251 renesas,groups = "msiof1_clk", "msiof1_sync", "msiof1_rx",
252 "msiof1_tx";
253 renesas,function = "msiof1";
254 };
Benoit Cousson05f72e02014-06-03 21:02:12 +0900255
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200256 iic1_pins: iic1 {
257 renesas,groups = "iic1";
258 renesas,function = "iic1";
Simon Hormand90bf602014-06-06 16:11:00 +0900259 };
260
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200261 iic2_pins: iic2 {
262 renesas,groups = "iic2";
263 renesas,function = "iic2";
Simon Hormand90bf602014-06-06 16:11:00 +0900264 };
265
Khiem Nguyen5179ffd2014-07-04 09:19:51 +0900266 iic3_pins: iic3 {
267 renesas,groups = "iic3";
268 renesas,function = "iic3";
Benoit Cousson05f72e02014-06-03 21:02:12 +0900269 };
Ben Dooksd8584662014-06-24 22:02:21 +0400270
Yoshihiro Shimodae03074a2014-10-24 19:44:34 +0900271 hsusb_pins: hsusb {
272 renesas,groups = "usb0_ovc_vbus";
273 renesas,function = "usb0";
274 };
275
Ben Dooksd8584662014-06-24 22:02:21 +0400276 usb0_pins: usb0 {
277 renesas,groups = "usb0";
278 renesas,function = "usb0";
279 };
280
281 usb1_pins: usb1 {
282 renesas,groups = "usb1";
283 renesas,function = "usb1";
284 };
285
286 usb2_pins: usb2 {
287 renesas,groups = "usb2";
288 renesas,function = "usb2";
289 };
Ben Dooksd594c972014-08-13 00:18:26 +0400290
291 vin1_pins: vin {
292 renesas,groups = "vin1_data8", "vin1_clk";
293 renesas,function = "vin1";
294 };
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100295};
296
Sergei Shtylyovda4ea952014-02-20 02:22:31 +0300297&ether {
298 pinctrl-0 = <&ether_pins &phy1_pins>;
299 pinctrl-names = "default";
300
301 phy-handle = <&phy1>;
302 renesas,ether-link-active-low;
303 status = "ok";
304
305 phy1: ethernet-phy@1 {
306 reg = <1>;
307 interrupt-parent = <&irqc0>;
308 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
Simon Horman1c47a6a2014-04-08 09:21:35 +0900309 micrel,led-mode = <1>;
Sergei Shtylyovda4ea952014-02-20 02:22:31 +0300310 };
311};
312
Laurent Pinchart247fd5e2014-07-09 15:12:41 +0200313&cmt0 {
314 status = "ok";
315};
316
Laurent Pinchart39fa5112013-12-11 15:13:47 +0100317&mmcif1 {
318 pinctrl-0 = <&mmc1_pins>;
319 pinctrl-names = "default";
320
321 vmmc-supply = <&fixedregulator3v3>;
322 bus-width = <8>;
323 non-removable;
324 status = "okay";
Magnus Damm3cc828f2013-03-29 17:49:37 +0900325};
Valentine Barshakc6181b92014-01-14 21:05:31 +0400326
327&sata1 {
328 status = "okay";
329};
Geert Uytterhoeven9fe7c4f2014-02-10 11:47:30 +0100330
Geert Uytterhoevenfad6d452014-02-25 11:30:13 +0100331&qspi {
Geert Uytterhoeven9fe7c4f2014-02-10 11:47:30 +0100332 pinctrl-0 = <&qspi_pins>;
333 pinctrl-names = "default";
334
335 status = "okay";
336
337 flash: flash@0 {
338 #address-cells = <1>;
339 #size-cells = <1>;
340 compatible = "spansion,s25fl512s";
341 reg = <0>;
342 spi-max-frequency = <30000000>;
Geert Uytterhoeven9909d2c2014-04-14 19:36:00 +0200343 spi-tx-bus-width = <4>;
344 spi-rx-bus-width = <4>;
Geert Uytterhoeven9fe7c4f2014-02-10 11:47:30 +0100345 m25p,fast-read;
346
347 partition@0 {
348 label = "loader";
349 reg = <0x00000000 0x00040000>;
350 read-only;
351 };
352 partition@40000 {
353 label = "user";
354 reg = <0x00040000 0x00400000>;
355 read-only;
356 };
357 partition@440000 {
358 label = "flash";
359 reg = <0x00440000 0x03bc0000>;
360 };
361 };
362};
Kuninori Morimotoc6119942014-02-12 21:43:19 -0800363
Wolfram Sang7c055892014-09-16 18:10:37 +0200364&scifa0 {
365 pinctrl-0 = <&scifa0_pins>;
Laurent Pinchart4e9c4872014-04-30 02:31:45 +0200366 pinctrl-names = "default";
367
368 status = "okay";
369};
370
Wolfram Sang7c055892014-09-16 18:10:37 +0200371&scifa1 {
372 pinctrl-0 = <&scifa1_pins>;
Laurent Pinchart4e9c4872014-04-30 02:31:45 +0200373 pinctrl-names = "default";
374
375 status = "okay";
376};
377
Geert Uytterhoevenb0403b92014-02-25 11:30:17 +0100378&msiof1 {
379 pinctrl-0 = <&msiof1_pins>;
380 pinctrl-names = "default";
381
382 status = "okay";
383
384 pmic: pmic@0 {
385 compatible = "renesas,r2a11302ft";
386 reg = <0>;
387 spi-max-frequency = <6000000>;
388 spi-cpol;
389 spi-cpha;
390 };
Geert Uytterhoevenb0403b92014-02-25 11:30:17 +0100391};
392
Kuninori Morimotoc6119942014-02-12 21:43:19 -0800393&sdhi0 {
394 pinctrl-0 = <&sdhi0_pins>;
395 pinctrl-names = "default";
396
397 vmmc-supply = <&vcc_sdhi0>;
398 vqmmc-supply = <&vccq_sdhi0>;
399 cd-gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
400 status = "okay";
401};
402
403&sdhi2 {
404 pinctrl-0 = <&sdhi2_pins>;
405 pinctrl-names = "default";
406
407 vmmc-supply = <&vcc_sdhi2>;
408 vqmmc-supply = <&vccq_sdhi2>;
409 cd-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>;
410 status = "okay";
411};
Benoit Cousson05f72e02014-06-03 21:02:12 +0900412
Benoit Coussonb989e132014-06-03 21:02:24 +0900413&cpu0 {
414 cpu0-supply = <&vdd_dvfs>;
415};
Ben Dookse489c2a2014-02-12 17:04:33 +0000416
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200417&iic0 {
Ben Dookse489c2a2014-02-12 17:04:33 +0000418 status = "ok";
419};
420
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200421&iic1 {
Ben Dookse489c2a2014-02-12 17:04:33 +0000422 status = "ok";
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200423 pinctrl-0 = <&iic1_pins>;
Ben Dookse1a2c4e2014-02-12 17:04:34 +0000424 pinctrl-names = "default";
Ben Dookse489c2a2014-02-12 17:04:33 +0000425};
426
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200427&iic2 {
Ben Dookse489c2a2014-02-12 17:04:33 +0000428 status = "ok";
Wolfram Sangcb9a2b12014-07-10 12:50:56 +0200429 pinctrl-0 = <&iic2_pins>;
Ben Dookse1a2c4e2014-02-12 17:04:34 +0000430 pinctrl-names = "default";
Ben Dooksd594c972014-08-13 00:18:26 +0400431
Kuninori Morimoto177d8be2014-11-03 17:47:46 -0800432 clock-frequency = <100000>;
433
Ben Dooksd594c972014-08-13 00:18:26 +0400434 composite-in@20 {
435 compatible = "adi,adv7180";
436 reg = <0x20>;
437 remote = <&vin1>;
438
439 port {
440 adv7180: endpoint {
441 bus-width = <8>;
442 remote-endpoint = <&vin1ep0>;
443 };
444 };
445 };
Ben Dookse489c2a2014-02-12 17:04:33 +0000446};
447
Khiem Nguyen5179ffd2014-07-04 09:19:51 +0900448&iic3 {
Simon Hormanaca4ec42014-06-09 11:09:44 +0900449 pinctrl-names = "default";
Khiem Nguyen5179ffd2014-07-04 09:19:51 +0900450 pinctrl-0 = <&iic3_pins>;
Simon Hormanaca4ec42014-06-09 11:09:44 +0900451 status = "okay";
452
453 vdd_dvfs: regulator@68 {
Steve Twissbd597f42014-08-22 15:26:55 +0100454 compatible = "dlg,da9210";
Simon Hormanaca4ec42014-06-09 11:09:44 +0900455 reg = <0x68>;
456
457 regulator-min-microvolt = <1000000>;
458 regulator-max-microvolt = <1000000>;
459 regulator-boot-on;
460 regulator-always-on;
461 };
Ben Dookse489c2a2014-02-12 17:04:33 +0000462};
Ben Dooksd8584662014-06-24 22:02:21 +0400463
464&pci0 {
465 status = "okay";
466 pinctrl-0 = <&usb0_pins>;
467 pinctrl-names = "default";
468};
469
470&pci1 {
471 status = "okay";
472 pinctrl-0 = <&usb1_pins>;
473 pinctrl-names = "default";
474};
475
Yoshihiro Shimoda37f7c1b2014-10-24 19:41:47 +0900476&xhci {
477 status = "okay";
478 pinctrl-0 = <&usb2_pins>;
479 pinctrl-names = "default";
480};
481
Ben Dooksd8584662014-06-24 22:02:21 +0400482&pci2 {
483 status = "okay";
484 pinctrl-0 = <&usb2_pins>;
485 pinctrl-names = "default";
486};
Ben Dooksd594c972014-08-13 00:18:26 +0400487
Yoshihiro Shimodae03074a2014-10-24 19:44:34 +0900488&hsusb {
489 status = "okay";
490 pinctrl-0 = <&hsusb_pins>;
491 pinctrl-names = "default";
492 renesas,enable-gpio = <&gpio5 18 GPIO_ACTIVE_HIGH>;
493};
494
Sergei Shtylyov6742caf2014-09-27 01:01:35 +0400495&usbphy {
496 status = "okay";
497};
498
Ben Dooksd594c972014-08-13 00:18:26 +0400499/* composite video input */
500&vin1 {
501 pinctrl-0 = <&vin1_pins>;
502 pinctrl-names = "default";
503
504 status = "ok";
505
506 port {
507 #address-cells = <1>;
508 #size-cells = <0>;
509
510 vin1ep0: endpoint {
511 remote-endpoint = <&adv7180>;
512 bus-width = <8>;
513 };
514 };
515};