Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux...
[sfrench/cifs-2.6.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 /dts-v1/;
14 #include "r8a7791.dtsi"
15 #include <dt-bindings/gpio/gpio.h>
16
17 / {
18         model = "Koelsch";
19         compatible = "renesas,koelsch", "renesas,r8a7791";
20
21         chosen {
22                 bootargs = "console=ttySC6,115200 ignore_loglevel rw root=/dev/nfs ip=dhcp";
23         };
24
25         memory@40000000 {
26                 device_type = "memory";
27                 reg = <0 0x40000000 0 0x40000000>;
28         };
29
30         memory@200000000 {
31                 device_type = "memory";
32                 reg = <2 0x00000000 0 0x40000000>;
33         };
34
35         lbsc {
36                 #address-cells = <1>;
37                 #size-cells = <1>;
38         };
39
40         gpio-keys {
41                 compatible = "gpio-keys";
42
43                 key-a {
44                         gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
45                         linux,code = <30>;
46                         label = "SW30";
47                         gpio-key,wakeup;
48                         debounce-interval = <20>;
49                 };
50                 key-b {
51                         gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
52                         linux,code = <48>;
53                         label = "SW31";
54                         gpio-key,wakeup;
55                         debounce-interval = <20>;
56                 };
57                 key-c {
58                         gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
59                         linux,code = <46>;
60                         label = "SW32";
61                         gpio-key,wakeup;
62                         debounce-interval = <20>;
63                 };
64                 key-d {
65                         gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
66                         linux,code = <32>;
67                         label = "SW33";
68                         gpio-key,wakeup;
69                         debounce-interval = <20>;
70                 };
71                 key-e {
72                         gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
73                         linux,code = <18>;
74                         label = "SW34";
75                         gpio-key,wakeup;
76                         debounce-interval = <20>;
77                 };
78                 key-f {
79                         gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
80                         linux,code = <33>;
81                         label = "SW35";
82                         gpio-key,wakeup;
83                         debounce-interval = <20>;
84                 };
85                 key-g {
86                         gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
87                         linux,code = <34>;
88                         label = "SW36";
89                         gpio-key,wakeup;
90                         debounce-interval = <20>;
91                 };
92         };
93
94         leds {
95                 compatible = "gpio-leds";
96                 led6 {
97                         gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
98                 };
99                 led7 {
100                         gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
101                 };
102                 led8 {
103                         gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
104                 };
105         };
106
107         vcc_sdhi0: regulator@0 {
108                 compatible = "regulator-fixed";
109
110                 regulator-name = "SDHI0 Vcc";
111                 regulator-min-microvolt = <3300000>;
112                 regulator-max-microvolt = <3300000>;
113
114                 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
115                 enable-active-high;
116         };
117
118         vccq_sdhi0: regulator@1 {
119                 compatible = "regulator-gpio";
120
121                 regulator-name = "SDHI0 VccQ";
122                 regulator-min-microvolt = <1800000>;
123                 regulator-max-microvolt = <3300000>;
124
125                 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
126                 gpios-states = <1>;
127                 states = <3300000 1
128                           1800000 0>;
129         };
130
131         vcc_sdhi1: regulator@2 {
132                 compatible = "regulator-fixed";
133
134                 regulator-name = "SDHI1 Vcc";
135                 regulator-min-microvolt = <3300000>;
136                 regulator-max-microvolt = <3300000>;
137
138                 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
139                 enable-active-high;
140         };
141
142         vccq_sdhi1: regulator@3 {
143                 compatible = "regulator-gpio";
144
145                 regulator-name = "SDHI1 VccQ";
146                 regulator-min-microvolt = <1800000>;
147                 regulator-max-microvolt = <3300000>;
148
149                 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
150                 gpios-states = <1>;
151                 states = <3300000 1
152                           1800000 0>;
153         };
154
155         vcc_sdhi2: regulator@4 {
156                 compatible = "regulator-fixed";
157
158                 regulator-name = "SDHI2 Vcc";
159                 regulator-min-microvolt = <3300000>;
160                 regulator-max-microvolt = <3300000>;
161
162                 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
163                 enable-active-high;
164         };
165
166         vccq_sdhi2: regulator@5 {
167                 compatible = "regulator-gpio";
168
169                 regulator-name = "SDHI2 VccQ";
170                 regulator-min-microvolt = <1800000>;
171                 regulator-max-microvolt = <3300000>;
172
173                 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
174                 gpios-states = <1>;
175                 states = <3300000 1
176                           1800000 0>;
177         };
178 };
179
180 &extal_clk {
181         clock-frequency = <20000000>;
182 };
183
184 &i2c2 {
185         pinctrl-0 = <&i2c2_pins>;
186         pinctrl-names = "default";
187
188         status = "okay";
189         clock-frequency = <400000>;
190
191         eeprom@50 {
192                 compatible = "renesas,24c02";
193                 reg = <0x50>;
194                 pagesize = <16>;
195         };
196 };
197
198 &pfc {
199         pinctrl-0 = <&du_pins &scif0_pins &scif1_pins>;
200         pinctrl-names = "default";
201
202         i2c2_pins: i2c {
203                 renesas,groups = "i2c2";
204                 renesas,function = "i2c2";
205         };
206
207         du_pins: du {
208                 renesas,groups = "du_rgb666", "du_sync", "du_clk_out_0";
209                 renesas,function = "du";
210         };
211
212         scif0_pins: serial0 {
213                 renesas,groups = "scif0_data_d";
214                 renesas,function = "scif0";
215         };
216
217         scif1_pins: serial1 {
218                 renesas,groups = "scif1_data_d";
219                 renesas,function = "scif1";
220         };
221
222         ether_pins: ether {
223                 renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
224                 renesas,function = "eth";
225         };
226
227         phy1_pins: phy1 {
228                 renesas,groups = "intc_irq0";
229                 renesas,function = "intc";
230         };
231
232         sdhi0_pins: sd0 {
233                 renesas,groups = "sdhi0_data4", "sdhi0_ctrl";
234                 renesas,function = "sdhi0";
235         };
236
237         sdhi1_pins: sd1 {
238                 renesas,groups = "sdhi1_data4", "sdhi1_ctrl";
239                 renesas,function = "sdhi1";
240         };
241
242         sdhi2_pins: sd2 {
243                 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
244                 renesas,function = "sdhi2";
245         };
246
247         qspi_pins: spi {
248                 renesas,groups = "qspi_ctrl", "qspi_data4";
249                 renesas,function = "qspi";
250         };
251 };
252
253 &ether {
254         pinctrl-0 = <&ether_pins &phy1_pins>;
255         pinctrl-names = "default";
256
257         phy-handle = <&phy1>;
258         renesas,ether-link-active-low;
259         status = "ok";
260
261         phy1: ethernet-phy@1 {
262                 reg = <1>;
263                 interrupt-parent = <&irqc0>;
264                 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
265         };
266 };
267
268 &sata0 {
269         status = "okay";
270 };
271
272 &sdhi0 {
273         pinctrl-0 = <&sdhi0_pins>;
274         pinctrl-names = "default";
275
276         vmmc-supply = <&vcc_sdhi0>;
277         vqmmc-supply = <&vccq_sdhi0>;
278         cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
279         wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
280         status = "okay";
281 };
282
283 &sdhi1 {
284         pinctrl-0 = <&sdhi1_pins>;
285         pinctrl-names = "default";
286
287         vmmc-supply = <&vcc_sdhi1>;
288         vqmmc-supply = <&vccq_sdhi1>;
289         cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
290         wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
291         status = "okay";
292 };
293
294 &sdhi2 {
295         pinctrl-0 = <&sdhi2_pins>;
296         pinctrl-names = "default";
297
298         vmmc-supply = <&vcc_sdhi2>;
299         vqmmc-supply = <&vccq_sdhi2>;
300         cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
301         status = "okay";
302 };
303
304 &spi {
305         pinctrl-0 = <&qspi_pins>;
306         pinctrl-names = "default";
307
308         status = "okay";
309
310         flash: flash@0 {
311                 #address-cells = <1>;
312                 #size-cells = <1>;
313                 compatible = "spansion,s25fl512s";
314                 reg = <0>;
315                 spi-max-frequency = <30000000>;
316                 m25p,fast-read;
317
318                 partition@0 {
319                         label = "loader";
320                         reg = <0x00000000 0x00080000>;
321                         read-only;
322                 };
323                 partition@80000 {
324                         label = "bootenv";
325                         reg = <0x00080000 0x00080000>;
326                         read-only;
327                 };
328                 partition@100000 {
329                         label = "data";
330                         reg = <0x00100000 0x03f00000>;
331                 };
332         };
333 };