blob: 9bd0cb439f448d03d51ce8741801a4bcf19171ec [file] [log] [blame]
Magnus Damme6bf7052012-05-14 19:54:41 +09001/*
2 * Device Tree Source for the armadillo 800 eva board
3 *
4 * Copyright (C) 2012 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 "r8a7740.dtsi"
Magnus Damm25aa7ba2014-08-28 12:34:51 +090013#include <dt-bindings/gpio/gpio.h>
14#include <dt-bindings/input/input.h>
15#include <dt-bindings/interrupt-controller/irq.h>
16#include <dt-bindings/pwm/pwm.h>
Magnus Damme6bf7052012-05-14 19:54:41 +090017
18/ {
19 model = "armadillo 800 eva";
Magnus Damm25aa7ba2014-08-28 12:34:51 +090020 compatible = "renesas,armadillo800eva", "renesas,r8a7740";
21
22 aliases {
23 serial1 = &scifa1;
24 };
Magnus Damme6bf7052012-05-14 19:54:41 +090025
Simon Hormanf90755d2012-12-15 12:02:11 +090026 chosen {
Kuninori Morimoto3d814492013-08-05 20:17:06 -070027 bootargs = "console=tty0 console=ttySC1,115200 earlyprintk=sh-sci.1,115200 ignore_loglevel root=/dev/nfs ip=dhcp rw";
Geert Uytterhoeven2c326222014-10-03 17:11:37 +020028 stdout-path = &scifa1;
Simon Hormanf90755d2012-12-15 12:02:11 +090029 };
30
Magnus Damme6bf7052012-05-14 19:54:41 +090031 memory {
32 device_type = "memory";
33 reg = <0x40000000 0x20000000>;
34 };
Magnus Damm25aa7ba2014-08-28 12:34:51 +090035
36 reg_3p3v: regulator@0 {
37 compatible = "regulator-fixed";
38 regulator-name = "fixed-3.3V";
39 regulator-min-microvolt = <3300000>;
40 regulator-max-microvolt = <3300000>;
41 regulator-always-on;
42 regulator-boot-on;
43 };
44
45 vcc_sdhi0: regulator@1 {
46 compatible = "regulator-fixed";
47
48 regulator-name = "SDHI0 Vcc";
49 regulator-min-microvolt = <3300000>;
50 regulator-max-microvolt = <3300000>;
51
52 gpio = <&pfc 75 GPIO_ACTIVE_HIGH>;
53 enable-active-high;
54 };
55
56 vccq_sdhi0: regulator@2 {
57 compatible = "regulator-gpio";
58
59 regulator-name = "SDHI0 VccQ";
60 regulator-min-microvolt = <1800000>;
61 regulator-max-microvolt = <3300000>;
62 vin-supply = <&vcc_sdhi0>;
63
64 enable-gpio = <&pfc 74 GPIO_ACTIVE_HIGH>;
65 gpios = <&pfc 17 GPIO_ACTIVE_HIGH>;
66 states = <3300000 0
67 1800000 1>;
68
69 enable-active-high;
70 };
71
72 reg_5p0v: regulator@3 {
73 compatible = "regulator-fixed";
74 regulator-name = "fixed-5.0V";
75 regulator-min-microvolt = <5000000>;
76 regulator-max-microvolt = <5000000>;
77 regulator-always-on;
78 regulator-boot-on;
79 };
80
Simon Horman04a56562014-11-12 17:59:34 +090081 keyboard {
Magnus Damm25aa7ba2014-08-28 12:34:51 +090082 compatible = "gpio-keys";
83
84 power-key {
85 gpios = <&pfc 99 GPIO_ACTIVE_LOW>;
86 linux,code = <KEY_POWER>;
87 label = "SW3";
88 gpio-key,wakeup;
89 };
90
91 back-key {
92 gpios = <&pfc 100 GPIO_ACTIVE_LOW>;
93 linux,code = <KEY_BACK>;
94 label = "SW4";
95 };
96
97 menu-key {
98 gpios = <&pfc 97 GPIO_ACTIVE_LOW>;
99 linux,code = <KEY_MENU>;
100 label = "SW5";
101 };
102
103 home-key {
104 gpios = <&pfc 98 GPIO_ACTIVE_LOW>;
105 linux,code = <KEY_HOME>;
106 label = "SW6";
107 };
108 };
109
110 leds {
111 compatible = "gpio-leds";
112 led3 {
113 gpios = <&pfc 102 GPIO_ACTIVE_HIGH>;
114 label = "LED3";
115 };
116 led4 {
117 gpios = <&pfc 111 GPIO_ACTIVE_HIGH>;
118 label = "LED4";
119 };
120 led5 {
121 gpios = <&pfc 110 GPIO_ACTIVE_HIGH>;
122 label = "LED5";
123 };
124 led6 {
125 gpios = <&pfc 177 GPIO_ACTIVE_HIGH>;
126 label = "LED6";
127 };
128 };
129
130 i2c2: i2c@2 {
131 #address-cells = <1>;
132 #size-cells = <0>;
133 compatible = "i2c-gpio";
134 gpios = <&pfc 208 GPIO_ACTIVE_HIGH /* sda */
135 &pfc 91 GPIO_ACTIVE_HIGH /* scl */
136 >;
137 i2c-gpio,delay-us = <5>;
138 };
139
140 backlight {
141 compatible = "pwm-backlight";
142 pwms = <&tpu 2 33333 PWM_POLARITY_INVERTED>;
143 brightness-levels = <0 1 2 4 8 16 32 64 128 255>;
144 default-brightness-level = <9>;
145 pinctrl-0 = <&backlight_pins>;
146 pinctrl-names = "default";
147 power-supply = <&reg_5p0v>;
148 enable-gpios = <&pfc 61 GPIO_ACTIVE_HIGH>;
149 };
150
151 sound {
152 compatible = "simple-audio-card";
153
154 simple-audio-card,format = "i2s";
155
156 simple-audio-card,cpu {
157 sound-dai = <&sh_fsi2 0>;
158 bitclock-inversion;
159 };
160
161 simple-audio-card,codec {
162 sound-dai = <&wm8978>;
163 bitclock-master;
164 frame-master;
165 system-clock-frequency = <12288000>;
166 };
167 };
168};
169
170&ether {
171 pinctrl-0 = <&ether_pins>;
172 pinctrl-names = "default";
173
174 phy-handle = <&phy0>;
Geert Uytterhoeven16d3b882014-12-09 12:25:00 +0100175 status = "okay";
Magnus Damm25aa7ba2014-08-28 12:34:51 +0900176
177 phy0: ethernet-phy@0 {
178 reg = <0>;
179 };
180};
181
182&extal1_clk {
183 clock-frequency = <25000000>;
184};
185&extal2_clk {
186 clock-frequency = <48000000>;
187};
188&fsibck_clk {
189 clock-frequency = <12288000>;
190};
191&cpg_clocks {
192 renesas,mode = <0x05>; /* MD_CK0 | MD_CK2 */
193};
194
195&cmt1 {
Geert Uytterhoeven16d3b882014-12-09 12:25:00 +0100196 status = "okay";
Magnus Damm25aa7ba2014-08-28 12:34:51 +0900197};
198
199&i2c0 {
200 status = "okay";
201 touchscreen@55 {
202 compatible = "sitronix,st1232";
203 reg = <0x55>;
204 interrupt-parent = <&irqpin1>;
205 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
206 pinctrl-0 = <&st1232_pins>;
207 pinctrl-names = "default";
208 gpios = <&pfc 166 GPIO_ACTIVE_LOW>;
209 };
210
211 wm8978: wm8978@1a {
212 #sound-dai-cells = <0>;
213 compatible = "wlf,wm8978";
214 reg = <0x1a>;
215 };
216};
217
218&i2c2 {
219 status = "okay";
220 rtc@30 {
221 compatible = "sii,s35390a";
222 reg = <0x30>;
223 };
224};
225
226&pfc {
227 ether_pins: ether {
228 renesas,groups = "gether_mii", "gether_int";
229 renesas,function = "gether";
230 };
231
232 scifa1_pins: serial1 {
233 renesas,groups = "scifa1_data";
234 renesas,function = "scifa1";
235 };
236
237 st1232_pins: touchscreen {
238 renesas,groups = "intc_irq10";
239 renesas,function = "intc";
240 };
241
242 backlight_pins: backlight {
243 renesas,groups = "tpu0_to2_1";
244 renesas,function = "tpu0";
245 };
246
247 mmc0_pins: mmc0 {
248 renesas,groups = "mmc0_data8_1", "mmc0_ctrl_1";
249 renesas,function = "mmc0";
250 };
251
252 sdhi0_pins: sd0 {
253 renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_wp";
254 renesas,function = "sdhi0";
255 };
256
257 fsia_pins: sounda {
258 renesas,groups = "fsia_sclk_in", "fsia_mclk_out",
259 "fsia_data_in_1", "fsia_data_out_0";
260 renesas,function = "fsia";
261 };
262};
263
264&tpu {
265 status = "okay";
266};
267
268&mmcif0 {
269 pinctrl-0 = <&mmc0_pins>;
270 pinctrl-names = "default";
271
272 vmmc-supply = <&reg_3p3v>;
273 bus-width = <8>;
274 non-removable;
275 status = "okay";
276};
277
278&scifa1 {
279 pinctrl-0 = <&scifa1_pins>;
280 pinctrl-names = "default";
281
282 status = "okay";
283};
284
285&sdhi0 {
286 pinctrl-0 = <&sdhi0_pins>;
287 pinctrl-names = "default";
288
289 vmmc-supply = <&vcc_sdhi0>;
290 vqmmc-supply = <&vccq_sdhi0>;
291 bus-width = <4>;
292 cd-gpios = <&pfc 167 GPIO_ACTIVE_LOW>;
293 status = "okay";
294};
295
296&sh_fsi2 {
297 pinctrl-0 = <&fsia_pins>;
298 pinctrl-names = "default";
299
300 status = "okay";
Magnus Damme6bf7052012-05-14 19:54:41 +0900301};
Geert Uytterhoevendf211022014-10-22 11:38:29 +0200302
303&tmu0 {
304 status = "okay";
305};