ARM: shmobile: kzm9g dts: Sync with kzm9g-reference dts
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / sh73a0-kzm9g.dts
1 /*
2  * Device Tree Source for the KZM-A9-GT board
3  *
4  * Copyright (C) 2012 Horms Solutions Ltd.
5  *
6  * Based on sh73a0-kzm9g.dts
7  * Copyright (C) 2012 Renesas Solutions Corp.
8  *
9  * This file is licensed under the terms of the GNU General Public License
10  * version 2.  This program is licensed "as is" without any warranty of any
11  * kind, whether express or implied.
12  */
13
14 /dts-v1/;
15 #include "sh73a0.dtsi"
16 #include <dt-bindings/gpio/gpio.h>
17 #include <dt-bindings/input/input.h>
18 #include <dt-bindings/interrupt-controller/irq.h>
19
20 / {
21         model = "KZM-A9-GT";
22         compatible = "renesas,kzm9g", "renesas,sh73a0";
23
24         aliases {
25                 serial4 = &scifa4;
26         };
27
28         cpus {
29                 cpu@0 {
30                         cpu0-supply = <&vdd_dvfs>;
31                         operating-points = <
32                                 /* kHz  uV */
33                                 1196000 1315000
34                                  598000 1175000
35                                  398667 1065000
36                         >;
37                         voltage-tolerance = <1>; /* 1% */
38                 };
39         };
40
41         chosen {
42                 bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel rw";
43                 stdout-path = &scifa4;
44         };
45
46         memory {
47                 device_type = "memory";
48                 reg = <0x40000000 0x20000000>;
49         };
50
51         reg_1p8v: regulator@0 {
52                 compatible = "regulator-fixed";
53                 regulator-name = "fixed-1.8V";
54                 regulator-min-microvolt = <1800000>;
55                 regulator-max-microvolt = <1800000>;
56                 regulator-always-on;
57                 regulator-boot-on;
58         };
59
60         reg_3p3v: regulator@1 {
61                 compatible = "regulator-fixed";
62                 regulator-name = "fixed-3.3V";
63                 regulator-min-microvolt = <3300000>;
64                 regulator-max-microvolt = <3300000>;
65                 regulator-always-on;
66                 regulator-boot-on;
67         };
68
69         vmmc_sdhi0: regulator@2 {
70                 compatible = "regulator-fixed";
71                 regulator-name = "SDHI0 Vcc";
72                 regulator-min-microvolt = <3300000>;
73                 regulator-max-microvolt = <3300000>;
74                 gpio = <&pfc 15 GPIO_ACTIVE_HIGH>;
75                 enable-active-high;
76         };
77
78         vmmc_sdhi2: regulator@3 {
79                 compatible = "regulator-fixed";
80                 regulator-name = "SDHI2 Vcc";
81                 regulator-min-microvolt = <3300000>;
82                 regulator-max-microvolt = <3300000>;
83                 gpio = <&pfc 14 GPIO_ACTIVE_HIGH>;
84                 enable-active-high;
85         };
86
87         lan9220@10000000 {
88                 compatible = "smsc,lan9220", "smsc,lan9115";
89                 reg = <0x10000000 0x100>;
90                 phy-mode = "mii";
91                 interrupt-parent = <&irqpin0>;
92                 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
93                 reg-io-width = <4>;
94                 smsc,irq-push-pull;
95                 smsc,save-mac-address;
96                 vddvario-supply = <&reg_1p8v>;
97                 vdd33a-supply = <&reg_3p3v>;
98         };
99
100         leds {
101                 compatible = "gpio-leds";
102                 led1 {
103                         gpios = <&pfc 20 GPIO_ACTIVE_LOW>;
104                         label = "LED1";
105                 };
106                 led2 {
107                         gpios = <&pfc 21 GPIO_ACTIVE_LOW>;
108                         label = "LED2";
109                 };
110                 led3 {
111                         gpios = <&pfc 22 GPIO_ACTIVE_LOW>;
112                         label = "LED3";
113                 };
114                 led4 {
115                         gpios = <&pfc 23 GPIO_ACTIVE_LOW>;
116                         label = "LED4";
117                 };
118         };
119
120         keyboard {
121                 compatible = "gpio-keys";
122
123                 back-key {
124                         gpios = <&pcf8575 8 GPIO_ACTIVE_LOW>;
125                         linux,code = <KEY_BACK>;
126                         label = "SW3";
127                 };
128
129                 right-key {
130                         gpios = <&pcf8575 9 GPIO_ACTIVE_LOW>;
131                         linux,code = <KEY_RIGHT>;
132                         label = "SW2-R";
133                 };
134
135                 left-key {
136                         gpios = <&pcf8575 10 GPIO_ACTIVE_LOW>;
137                         linux,code = <KEY_LEFT>;
138                         label = "SW2-L";
139                 };
140
141                 enter-key {
142                         gpios = <&pcf8575 11 GPIO_ACTIVE_LOW>;
143                         linux,code = <KEY_ENTER>;
144                         label = "SW2-P";
145                 };
146
147                 up-key {
148                         gpios = <&pcf8575 12 GPIO_ACTIVE_LOW>;
149                         linux,code = <KEY_UP>;
150                         label = "SW2-U";
151                 };
152
153                 down-key {
154                         gpios = <&pcf8575 13 GPIO_ACTIVE_LOW>;
155                         linux,code = <KEY_DOWN>;
156                         label = "SW2-D";
157                 };
158
159                 home-key {
160                         gpios = <&pcf8575 14 GPIO_ACTIVE_LOW>;
161                         linux,code = <KEY_HOME>;
162                         label = "SW1";
163                 };
164         };
165
166         sound {
167                 compatible = "simple-audio-card";
168                 simple-audio-card,format = "left_j";
169                 simple-audio-card,cpu {
170                         sound-dai = <&sh_fsi2 0>;
171                 };
172                 simple-audio-card,codec {
173                         sound-dai = <&ak4648>;
174                         bitclock-master;
175                         frame-master;
176                         system-clock-frequency = <11289600>;
177                 };
178         };
179 };
180
181 &cmt1 {
182         status = "okay";
183 };
184
185 &extal2_clk {
186         clock-frequency = <48000000>;
187 };
188
189 &i2c0 {
190         status = "okay";
191
192         compass@c {
193                 compatible = "asahi-kasei,ak8975";
194                 reg = <0x0c>;
195                 interrupt-parent = <&irqpin3>;
196                 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
197         };
198
199         ak4648: codec@12 {
200                 compatible = "asahi-kasei,ak4648";
201                 reg = <0x12>;
202                 #sound-dai-cells = <0>;
203         };
204
205         accelerometer@1d {
206                 compatible = "adi,adxl34x";
207                 reg = <0x1d>;
208                 interrupt-parent = <&irqpin3>;
209                 interrupts = <2 IRQ_TYPE_LEVEL_HIGH>,
210                              <3 IRQ_TYPE_LEVEL_HIGH>;
211         };
212
213         rtc@32 {
214                 compatible = "ricoh,r2025sd";
215                 reg = <0x32>;
216         };
217
218         as3711@40 {
219                 compatible = "ams,as3711";
220                 reg = <0x40>;
221
222                 regulators {
223                         vdd_dvfs: sd1 {
224                                 regulator-name = "1.315V CPU";
225                                 regulator-min-microvolt = <1050000>;
226                                 regulator-max-microvolt = <1350000>;
227                                 regulator-always-on;
228                                 regulator-boot-on;
229                         };
230                         sd2 {
231                                 regulator-name = "1.8V";
232                                 regulator-min-microvolt = <1800000>;
233                                 regulator-max-microvolt = <1800000>;
234                                 regulator-always-on;
235                                 regulator-boot-on;
236                         };
237                         sd4 {
238                                 regulator-name = "1.215V";
239                                 regulator-min-microvolt = <1215000>;
240                                 regulator-max-microvolt = <1235000>;
241                                 regulator-always-on;
242                                 regulator-boot-on;
243                         };
244                         ldo2 {
245                                 regulator-name = "2.8V CPU";
246                                 regulator-min-microvolt = <2800000>;
247                                 regulator-max-microvolt = <2800000>;
248                                 regulator-always-on;
249                                 regulator-boot-on;
250                         };
251                         ldo3 {
252                                 regulator-name = "3.0V CPU";
253                                 regulator-min-microvolt = <3000000>;
254                                 regulator-max-microvolt = <3000000>;
255                                 regulator-always-on;
256                                 regulator-boot-on;
257                         };
258                         ldo4 {
259                                 regulator-name = "2.8V";
260                                 regulator-min-microvolt = <2800000>;
261                                 regulator-max-microvolt = <2800000>;
262                                 regulator-always-on;
263                                 regulator-boot-on;
264                         };
265                         ldo5 {
266                                 regulator-name = "2.8V #2";
267                                 regulator-min-microvolt = <2800000>;
268                                 regulator-max-microvolt = <2800000>;
269                                 regulator-always-on;
270                                 regulator-boot-on;
271                         };
272                         ldo7 {
273                                 regulator-name = "1.15V CPU";
274                                 regulator-min-microvolt = <1150000>;
275                                 regulator-max-microvolt = <1150000>;
276                                 regulator-always-on;
277                                 regulator-boot-on;
278                         };
279                         ldo8 {
280                                 regulator-name = "1.15V CPU #2";
281                                 regulator-min-microvolt = <1150000>;
282                                 regulator-max-microvolt = <1150000>;
283                                 regulator-always-on;
284                                 regulator-boot-on;
285                         };
286                 };
287         };
288 };
289
290 &i2c1 {
291         status = "okay";
292
293         touchscreen@55 {
294                 compatible = "sitronix,st1232";
295                 reg = <0x55>;
296                 interrupt-parent = <&irqpin1>;
297                 interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
298         };
299 };
300
301 &i2c3 {
302         pinctrl-0 = <&i2c3_pins>;
303         pinctrl-names = "default";
304         status = "okay";
305
306         pcf8575: gpio@20 {
307                 compatible = "nxp,pcf8575";
308                 reg = <0x20>;
309                 interrupt-parent = <&irqpin2>;
310                 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
311                 gpio-controller;
312                 #gpio-cells = <2>;
313                 interrupt-controller;
314                 #interrupt-cells = <2>;
315         };
316 };
317
318 &mmcif {
319         pinctrl-0 = <&mmcif_pins>;
320         pinctrl-names = "default";
321
322         bus-width = <8>;
323         vmmc-supply = <&reg_1p8v>;
324         status = "okay";
325 };
326
327 &pfc {
328         i2c3_pins: i2c3 {
329                 renesas,groups = "i2c3_1";
330                 renesas,function = "i2c3";
331         };
332
333         mmcif_pins: mmc {
334                 mux {
335                         renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0";
336                         renesas,function = "mmc0";
337                 };
338                 cfg {
339                         renesas,groups = "mmc0_data8_0";
340                         renesas,pins = "PORT279";
341                         bias-pull-up;
342                 };
343         };
344
345         scifa4_pins: serial4 {
346                 renesas,groups = "scifa4_data", "scifa4_ctrl";
347                 renesas,function = "scifa4";
348         };
349
350         sdhi0_pins: sd0 {
351                 renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp";
352                 renesas,function = "sdhi0";
353         };
354
355         sdhi2_pins: sd2 {
356                 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
357                 renesas,function = "sdhi2";
358         };
359
360         fsia_pins: sounda {
361                 renesas,groups = "fsia_mclk_in", "fsia_sclk_in",
362                                  "fsia_data_in", "fsia_data_out";
363                 renesas,function = "fsia";
364         };
365 };
366
367 &scifa4 {
368         pinctrl-0 = <&scifa4_pins>;
369         pinctrl-names = "default";
370
371         status = "okay";
372 };
373
374 &sdhi0 {
375         pinctrl-0 = <&sdhi0_pins>;
376         pinctrl-names = "default";
377
378         vmmc-supply = <&vmmc_sdhi0>;
379         bus-width = <4>;
380         status = "okay";
381 };
382
383 &sdhi2 {
384         pinctrl-0 = <&sdhi2_pins>;
385         pinctrl-names = "default";
386
387         vmmc-supply = <&vmmc_sdhi2>;
388         bus-width = <4>;
389         broken-cd;
390         status = "okay";
391 };
392
393 &sh_fsi2 {
394         pinctrl-0 = <&fsia_pins>;
395         pinctrl-names = "default";
396
397         status = "okay";
398 };