Merge tag 'kvm-ppc-next-4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / r8a73a4-ape6evm.dts
1 /*
2  * Device Tree Source for the APE6EVM board
3  *
4  * Copyright (C) 2013 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/;
12 #include "r8a73a4.dtsi"
13 #include <dt-bindings/gpio/gpio.h>
14 #include <dt-bindings/input/input.h>
15
16 / {
17         model = "APE6EVM";
18         compatible = "renesas,ape6evm", "renesas,r8a73a4";
19
20         aliases {
21                 serial0 = &scifa0;
22         };
23
24         chosen {
25                 bootargs = "ignore_loglevel root=/dev/nfs ip=dhcp rw";
26                 stdout-path = "serial0:115200n8";
27         };
28
29         memory@40000000 {
30                 device_type = "memory";
31                 reg = <0 0x40000000 0 0x40000000>;
32         };
33
34         memory@200000000 {
35                 device_type = "memory";
36                 reg = <2 0x00000000 0 0x40000000>;
37         };
38
39         vcc_mmc0: regulator-mmc0 {
40                 compatible = "regulator-fixed";
41                 regulator-name = "MMC0 Vcc";
42                 regulator-min-microvolt = <2800000>;
43                 regulator-max-microvolt = <2800000>;
44                 regulator-always-on;
45         };
46
47         vcc_sdhi0: regulator-sdhi0 {
48                 compatible = "regulator-fixed";
49
50                 regulator-name = "SDHI0 Vcc";
51                 regulator-min-microvolt = <3300000>;
52                 regulator-max-microvolt = <3300000>;
53
54                 gpio = <&pfc 76 GPIO_ACTIVE_HIGH>;
55                 enable-active-high;
56         };
57
58         /* Common 1.8V and 3.3V rails, used by several devices on APE6EVM */
59         ape6evm_fixed_1v8: regulator-1v8 {
60                 compatible = "regulator-fixed";
61                 regulator-name = "1V8";
62                 regulator-min-microvolt = <1800000>;
63                 regulator-max-microvolt = <1800000>;
64                 regulator-always-on;
65         };
66
67         ape6evm_fixed_3v3: regulator-3v3 {
68                 compatible = "regulator-fixed";
69                 regulator-name = "3V3";
70                 regulator-min-microvolt = <3300000>;
71                 regulator-max-microvolt = <3300000>;
72                 regulator-always-on;
73         };
74
75         leds {
76                 compatible = "gpio-leds";
77                 led1 {
78                         gpios = <&pfc 28 GPIO_ACTIVE_HIGH>;
79                         label = "GNSS_EN";
80                 };
81                 led2 {
82                         gpios = <&pfc 126 GPIO_ACTIVE_HIGH>;
83                         label = "NFC_NRST";
84                 };
85                 led3 {
86                         gpios = <&pfc 132 GPIO_ACTIVE_HIGH>;
87                         label = "GNSS_NRST";
88                 };
89                 led4 {
90                         gpios = <&pfc 232 GPIO_ACTIVE_HIGH>;
91                         label = "BT_WAKEUP";
92                 };
93                 led5 {
94                         gpios = <&pfc 250 GPIO_ACTIVE_HIGH>;
95                         label = "STROBE";
96                 };
97                 led6 {
98                         gpios = <&pfc 288 GPIO_ACTIVE_HIGH>;
99                         label = "BBRESETOUT";
100                 };
101         };
102
103         keyboard {
104                 compatible = "gpio-keys";
105
106                 pinctrl-names = "default";
107                 pinctrl-0 = <&keyboard_pins>;
108
109                 zero-key {
110                         gpios = <&pfc 324 GPIO_ACTIVE_LOW>;
111                         linux,code = <KEY_0>;
112                         label = "S16";
113                         wakeup-source;
114                 };
115
116                 menu-key {
117                         gpios = <&pfc 325 GPIO_ACTIVE_LOW>;
118                         linux,code = <KEY_MENU>;
119                         label = "S17";
120                 };
121
122                 home-key {
123                         gpios = <&pfc 326 GPIO_ACTIVE_LOW>;
124                         linux,code = <KEY_HOME>;
125                         label = "S18";
126                 };
127
128                 back-key {
129                         gpios = <&pfc 327 GPIO_ACTIVE_LOW>;
130                         linux,code = <KEY_BACK>;
131                         label = "S19";
132                 };
133
134                 volup-key {
135                         gpios = <&pfc 328 GPIO_ACTIVE_LOW>;
136                         linux,code = <KEY_VOLUMEUP>;
137                         label = "S20";
138                 };
139
140                 voldown-key {
141                         gpios = <&pfc 329 GPIO_ACTIVE_LOW>;
142                         linux,code = <KEY_VOLUMEDOWN>;
143                         label = "S21";
144                 };
145         };
146 };
147
148 &i2c5 {
149         status = "okay";
150         vdd_dvfs: regulator@1b {
151                 compatible = "maxim,max8973";
152                 reg = <0x1b>;
153
154                 regulator-min-microvolt = <935000>;
155                 regulator-max-microvolt = <1200000>;
156                 regulator-boot-on;
157                 regulator-always-on;
158         };
159 };
160
161 &cpu0 {
162         cpu0-supply = <&vdd_dvfs>;
163         operating-points = <
164                 /* kHz  uV */
165                 1950000 1115000
166                 1462500  995000
167         >;
168         voltage-tolerance = <1>; /* 1% */
169 };
170
171 &bsc {
172         ethernet@8000000 {
173                 compatible = "smsc,lan9220", "smsc,lan9115";
174                 reg = <0x08000000 0x1000>;
175                 interrupt-parent = <&irqc1>;
176                 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
177                 phy-mode = "mii";
178                 reg-io-width = <4>;
179                 smsc,irq-active-high;
180                 smsc,irq-push-pull;
181                 vdd33a-supply = <&ape6evm_fixed_3v3>;
182                 vddvario-supply = <&ape6evm_fixed_1v8>;
183         };
184 };
185
186 &cmt1 {
187         status = "okay";
188 };
189
190 &pfc {
191         scifa0_pins: scifa0 {
192                 groups = "scifa0_data";
193                 function = "scifa0";
194         };
195
196         mmc0_pins: mmc0 {
197                 groups = "mmc0_data8", "mmc0_ctrl";
198                 function = "mmc0";
199         };
200
201         sdhi0_pins: sd0 {
202                 groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd";
203                 function = "sdhi0";
204         };
205
206         sdhi1_pins: sd1 {
207                 groups = "sdhi1_data4", "sdhi1_ctrl";
208                 function = "sdhi1";
209         };
210
211         keyboard_pins: keyboard {
212                 pins = "PORT324", "PORT325", "PORT326", "PORT327", "PORT328",
213                        "PORT329";
214                 bias-pull-up;
215         };
216 };
217
218 &mmcif0 {
219         vmmc-supply = <&vcc_mmc0>;
220         bus-width = <8>;
221         non-removable;
222         pinctrl-names = "default";
223         pinctrl-0 = <&mmc0_pins>;
224         status = "okay";
225 };
226
227 &scifa0 {
228         pinctrl-0 = <&scifa0_pins>;
229         pinctrl-names = "default";
230
231         status = "okay";
232 };
233
234 &sdhi0 {
235         vmmc-supply = <&vcc_sdhi0>;
236         bus-width = <4>;
237         disable-wp;
238         pinctrl-names = "default";
239         pinctrl-0 = <&sdhi0_pins>;
240         status = "okay";
241 };
242
243 &sdhi1 {
244         vmmc-supply = <&ape6evm_fixed_3v3>;
245         bus-width = <4>;
246         broken-cd;
247         disable-wp;
248         pinctrl-names = "default";
249         pinctrl-0 = <&sdhi1_pins>;
250         status = "okay";
251 };