Merge remote-tracking branch 'asoc/fix/omap' into asoc-linus
[deliverable/linux.git] / arch / arm / boot / dts / r8a7791-koelsch.dts
1 /*
2 * Device Tree Source for the Koelsch board
3 *
4 * Copyright (C) 2013 Renesas Electronics Corporation
5 * Copyright (C) 2013-2014 Renesas Solutions Corp.
6 * Copyright (C) 2014 Cogent Embedded, Inc.
7 *
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 /*
14 * SSI-AK4643
15 *
16 * SW1: 1: AK4643
17 * 2: CN22
18 * 3: ADV7511
19 *
20 * This command is required when Playback/Capture
21 *
22 * amixer set "LINEOUT Mixer DACL" on
23 * amixer set "DVC Out" 100%
24 * amixer set "DVC In" 100%
25 *
26 * You can use Mute
27 *
28 * amixer set "DVC Out Mute" on
29 * amixer set "DVC In Mute" on
30 *
31 * You can use Volume Ramp
32 *
33 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
34 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
35 * amixer set "DVC Out Ramp" on
36 * aplay xxx.wav &
37 * amixer set "DVC Out" 80% // Volume Down
38 * amixer set "DVC Out" 100% // Volume Up
39 */
40
41 /dts-v1/;
42 #include "r8a7791.dtsi"
43 #include <dt-bindings/gpio/gpio.h>
44 #include <dt-bindings/input/input.h>
45
46 / {
47 model = "Koelsch";
48 compatible = "renesas,koelsch", "renesas,r8a7791";
49
50 aliases {
51 serial0 = &scif0;
52 serial1 = &scif1;
53 };
54
55 chosen {
56 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
57 stdout-path = &scif0;
58 };
59
60 memory@40000000 {
61 device_type = "memory";
62 reg = <0 0x40000000 0 0x40000000>;
63 };
64
65 memory@200000000 {
66 device_type = "memory";
67 reg = <2 0x00000000 0 0x40000000>;
68 };
69
70 lbsc {
71 #address-cells = <1>;
72 #size-cells = <1>;
73 };
74
75 keyboard {
76 compatible = "gpio-keys";
77
78 key-1 {
79 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
80 linux,code = <KEY_1>;
81 label = "SW2-1";
82 gpio-key,wakeup;
83 debounce-interval = <20>;
84 };
85 key-2 {
86 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
87 linux,code = <KEY_2>;
88 label = "SW2-2";
89 gpio-key,wakeup;
90 debounce-interval = <20>;
91 };
92 key-3 {
93 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
94 linux,code = <KEY_3>;
95 label = "SW2-3";
96 gpio-key,wakeup;
97 debounce-interval = <20>;
98 };
99 key-4 {
100 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
101 linux,code = <KEY_4>;
102 label = "SW2-4";
103 gpio-key,wakeup;
104 debounce-interval = <20>;
105 };
106 key-a {
107 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
108 linux,code = <KEY_A>;
109 label = "SW30";
110 gpio-key,wakeup;
111 debounce-interval = <20>;
112 };
113 key-b {
114 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
115 linux,code = <KEY_B>;
116 label = "SW31";
117 gpio-key,wakeup;
118 debounce-interval = <20>;
119 };
120 key-c {
121 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
122 linux,code = <KEY_C>;
123 label = "SW32";
124 gpio-key,wakeup;
125 debounce-interval = <20>;
126 };
127 key-d {
128 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
129 linux,code = <KEY_D>;
130 label = "SW33";
131 gpio-key,wakeup;
132 debounce-interval = <20>;
133 };
134 key-e {
135 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
136 linux,code = <KEY_E>;
137 label = "SW34";
138 gpio-key,wakeup;
139 debounce-interval = <20>;
140 };
141 key-f {
142 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
143 linux,code = <KEY_F>;
144 label = "SW35";
145 gpio-key,wakeup;
146 debounce-interval = <20>;
147 };
148 key-g {
149 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
150 linux,code = <KEY_G>;
151 label = "SW36";
152 gpio-key,wakeup;
153 debounce-interval = <20>;
154 };
155 };
156
157 leds {
158 compatible = "gpio-leds";
159 led6 {
160 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
161 label = "LED6";
162 };
163 led7 {
164 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
165 label = "LED7";
166 };
167 led8 {
168 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
169 label = "LED8";
170 };
171 };
172
173 vcc_sdhi0: regulator@0 {
174 compatible = "regulator-fixed";
175
176 regulator-name = "SDHI0 Vcc";
177 regulator-min-microvolt = <3300000>;
178 regulator-max-microvolt = <3300000>;
179
180 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
181 enable-active-high;
182 };
183
184 vccq_sdhi0: regulator@1 {
185 compatible = "regulator-gpio";
186
187 regulator-name = "SDHI0 VccQ";
188 regulator-min-microvolt = <1800000>;
189 regulator-max-microvolt = <3300000>;
190
191 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
192 gpios-states = <1>;
193 states = <3300000 1
194 1800000 0>;
195 };
196
197 vcc_sdhi1: regulator@2 {
198 compatible = "regulator-fixed";
199
200 regulator-name = "SDHI1 Vcc";
201 regulator-min-microvolt = <3300000>;
202 regulator-max-microvolt = <3300000>;
203
204 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
205 enable-active-high;
206 };
207
208 vccq_sdhi1: regulator@3 {
209 compatible = "regulator-gpio";
210
211 regulator-name = "SDHI1 VccQ";
212 regulator-min-microvolt = <1800000>;
213 regulator-max-microvolt = <3300000>;
214
215 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
216 gpios-states = <1>;
217 states = <3300000 1
218 1800000 0>;
219 };
220
221 vcc_sdhi2: regulator@4 {
222 compatible = "regulator-fixed";
223
224 regulator-name = "SDHI2 Vcc";
225 regulator-min-microvolt = <3300000>;
226 regulator-max-microvolt = <3300000>;
227
228 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
229 enable-active-high;
230 };
231
232 vccq_sdhi2: regulator@5 {
233 compatible = "regulator-gpio";
234
235 regulator-name = "SDHI2 VccQ";
236 regulator-min-microvolt = <1800000>;
237 regulator-max-microvolt = <3300000>;
238
239 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
240 gpios-states = <1>;
241 states = <3300000 1
242 1800000 0>;
243 };
244
245 sound {
246 compatible = "simple-audio-card";
247
248 simple-audio-card,format = "left_j";
249 simple-audio-card,bitclock-master = <&sndcodec>;
250 simple-audio-card,frame-master = <&sndcodec>;
251
252 sndcpu: simple-audio-card,cpu {
253 sound-dai = <&rcar_sound>;
254 };
255
256 sndcodec: simple-audio-card,codec {
257 sound-dai = <&ak4643>;
258 system-clock-frequency = <11289600>;
259 };
260 };
261 };
262
263 &du {
264 pinctrl-0 = <&du_pins>;
265 pinctrl-names = "default";
266 status = "okay";
267
268 ports {
269 port@1 {
270 lvds_connector: endpoint {
271 };
272 };
273 };
274 };
275
276 &extal_clk {
277 clock-frequency = <20000000>;
278 };
279
280 &pfc {
281 i2c2_pins: i2c2 {
282 renesas,groups = "i2c2";
283 renesas,function = "i2c2";
284 };
285
286 du_pins: du {
287 renesas,groups = "du_rgb666", "du_sync", "du_clk_out_0";
288 renesas,function = "du";
289 };
290
291 scif0_pins: serial0 {
292 renesas,groups = "scif0_data_d";
293 renesas,function = "scif0";
294 };
295
296 scif1_pins: serial1 {
297 renesas,groups = "scif1_data_d";
298 renesas,function = "scif1";
299 };
300
301 ether_pins: ether {
302 renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
303 renesas,function = "eth";
304 };
305
306 phy1_pins: phy1 {
307 renesas,groups = "intc_irq0";
308 renesas,function = "intc";
309 };
310
311 sdhi0_pins: sd0 {
312 renesas,groups = "sdhi0_data4", "sdhi0_ctrl";
313 renesas,function = "sdhi0";
314 };
315
316 sdhi1_pins: sd1 {
317 renesas,groups = "sdhi1_data4", "sdhi1_ctrl";
318 renesas,function = "sdhi1";
319 };
320
321 sdhi2_pins: sd2 {
322 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
323 renesas,function = "sdhi2";
324 };
325
326 qspi_pins: spi0 {
327 renesas,groups = "qspi_ctrl", "qspi_data4";
328 renesas,function = "qspi";
329 };
330
331 msiof0_pins: spi1 {
332 renesas,groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
333 "msiof0_tx";
334 renesas,function = "msiof0";
335 };
336
337 usb0_pins: usb0 {
338 renesas,groups = "usb0";
339 renesas,function = "usb0";
340 };
341
342 usb1_pins: usb1 {
343 renesas,groups = "usb1";
344 renesas,function = "usb1";
345 };
346
347 vin1_pins: vin1 {
348 renesas,groups = "vin1_data8", "vin1_clk";
349 renesas,function = "vin1";
350 };
351
352 sound_pins: sound {
353 renesas,groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
354 renesas,function = "ssi";
355 };
356
357 sound_clk_pins: sound_clk {
358 renesas,groups = "audio_clk_a";
359 renesas,function = "audio_clk";
360 };
361 };
362
363 &ether {
364 pinctrl-0 = <&ether_pins &phy1_pins>;
365 pinctrl-names = "default";
366
367 phy-handle = <&phy1>;
368 renesas,ether-link-active-low;
369 status = "okay";
370
371 phy1: ethernet-phy@1 {
372 reg = <1>;
373 interrupt-parent = <&irqc0>;
374 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
375 micrel,led-mode = <1>;
376 };
377 };
378
379 &cmt0 {
380 status = "okay";
381 };
382
383 &sata0 {
384 status = "okay";
385 };
386
387 &scif0 {
388 pinctrl-0 = <&scif0_pins>;
389 pinctrl-names = "default";
390
391 status = "okay";
392 };
393
394 &scif1 {
395 pinctrl-0 = <&scif1_pins>;
396 pinctrl-names = "default";
397
398 status = "okay";
399 };
400
401 &sdhi0 {
402 pinctrl-0 = <&sdhi0_pins>;
403 pinctrl-names = "default";
404
405 vmmc-supply = <&vcc_sdhi0>;
406 vqmmc-supply = <&vccq_sdhi0>;
407 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
408 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
409 status = "okay";
410 };
411
412 &sdhi1 {
413 pinctrl-0 = <&sdhi1_pins>;
414 pinctrl-names = "default";
415
416 vmmc-supply = <&vcc_sdhi1>;
417 vqmmc-supply = <&vccq_sdhi1>;
418 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
419 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
420 status = "okay";
421 };
422
423 &sdhi2 {
424 pinctrl-0 = <&sdhi2_pins>;
425 pinctrl-names = "default";
426
427 vmmc-supply = <&vcc_sdhi2>;
428 vqmmc-supply = <&vccq_sdhi2>;
429 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
430 status = "okay";
431 };
432
433 &qspi {
434 pinctrl-0 = <&qspi_pins>;
435 pinctrl-names = "default";
436
437 status = "okay";
438
439 flash: flash@0 {
440 #address-cells = <1>;
441 #size-cells = <1>;
442 compatible = "spansion,s25fl512s";
443 reg = <0>;
444 spi-max-frequency = <30000000>;
445 spi-tx-bus-width = <4>;
446 spi-rx-bus-width = <4>;
447 spi-cpha;
448 spi-cpol;
449 m25p,fast-read;
450
451 partition@0 {
452 label = "loader";
453 reg = <0x00000000 0x00080000>;
454 read-only;
455 };
456 partition@80000 {
457 label = "user";
458 reg = <0x00080000 0x00580000>;
459 read-only;
460 };
461 partition@600000 {
462 label = "flash";
463 reg = <0x00600000 0x03a00000>;
464 };
465 };
466 };
467
468 &msiof0 {
469 pinctrl-0 = <&msiof0_pins>;
470 pinctrl-names = "default";
471
472 status = "okay";
473
474 pmic: pmic@0 {
475 compatible = "renesas,r2a11302ft";
476 reg = <0>;
477 spi-max-frequency = <6000000>;
478 spi-cpol;
479 spi-cpha;
480 };
481 };
482
483 &i2c2 {
484 pinctrl-0 = <&i2c2_pins>;
485 pinctrl-names = "default";
486
487 status = "okay";
488 clock-frequency = <100000>;
489
490 ak4643: sound-codec@12 {
491 compatible = "asahi-kasei,ak4643";
492 #sound-dai-cells = <0>;
493 reg = <0x12>;
494 };
495
496 composite-in@20 {
497 compatible = "adi,adv7180";
498 reg = <0x20>;
499 remote = <&vin1>;
500
501 port {
502 adv7180: endpoint {
503 bus-width = <8>;
504 remote-endpoint = <&vin1ep>;
505 };
506 };
507 };
508
509 eeprom@50 {
510 compatible = "renesas,24c02";
511 reg = <0x50>;
512 pagesize = <16>;
513 };
514 };
515
516 &i2c6 {
517 status = "okay";
518 clock-frequency = <100000>;
519
520 vdd_dvfs: regulator@68 {
521 compatible = "dlg,da9210";
522 reg = <0x68>;
523
524 regulator-min-microvolt = <1000000>;
525 regulator-max-microvolt = <1000000>;
526 regulator-boot-on;
527 regulator-always-on;
528 };
529 };
530
531 &pci0 {
532 status = "okay";
533 pinctrl-0 = <&usb0_pins>;
534 pinctrl-names = "default";
535 };
536
537 &pci1 {
538 status = "okay";
539 pinctrl-0 = <&usb1_pins>;
540 pinctrl-names = "default";
541 };
542
543 &hsusb {
544 status = "okay";
545 pinctrl-0 = <&usb0_pins>;
546 pinctrl-names = "default";
547 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
548 };
549
550 &usbphy {
551 status = "okay";
552 };
553
554 &pcie_bus_clk {
555 status = "okay";
556 };
557
558 &pciec {
559 status = "okay";
560 };
561
562 &cpu0 {
563 cpu0-supply = <&vdd_dvfs>;
564 };
565
566 /* composite video input */
567 &vin1 {
568 status = "okay";
569 pinctrl-0 = <&vin1_pins>;
570 pinctrl-names = "default";
571
572 port {
573 #address-cells = <1>;
574 #size-cells = <0>;
575
576 vin1ep: endpoint {
577 remote-endpoint = <&adv7180>;
578 bus-width = <8>;
579 };
580 };
581 };
582
583 &rcar_sound {
584 pinctrl-0 = <&sound_pins &sound_clk_pins>;
585 pinctrl-names = "default";
586
587 /* Single DAI */
588 #sound-dai-cells = <0>;
589
590 status = "okay";
591
592 rcar_sound,dai {
593 dai0 {
594 playback = <&ssi0 &src2 &dvc0>;
595 capture = <&ssi1 &src3 &dvc1>;
596 };
597 };
598 };
599
600 &ssi1 {
601 shared-pin;
602 };
This page took 0.044642 seconds and 5 git commands to generate.