Merge remote-tracking branch 'spi/fix/core' into spi-linus
[linux-drm-fsl-dcu.git] / arch / arm / boot / dts / sh73a0-kzm9g-reference.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
18 / {
19         model = "KZM-A9-GT";
20         compatible = "renesas,kzm9g-reference", "renesas,sh73a0";
21
22         cpus {
23                 cpu@0 {
24                         cpu0-supply = <&vdd_dvfs>;
25                         operating-points = <
26                                 /* kHz  uV */
27                                 1196000 1315000
28                                  598000 1175000
29                                  398667 1065000
30                         >;
31                         voltage-tolerance = <1>; /* 1% */
32                 };
33         };
34
35         chosen {
36                 bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel earlyprintk=sh-sci.4,115200 rw";
37         };
38
39         memory {
40                 device_type = "memory";
41                 reg = <0x41000000 0x1e800000>;
42         };
43
44         reg_1p8v: regulator@0 {
45                 compatible = "regulator-fixed";
46                 regulator-name = "fixed-1.8V";
47                 regulator-min-microvolt = <1800000>;
48                 regulator-max-microvolt = <1800000>;
49                 regulator-always-on;
50                 regulator-boot-on;
51         };
52
53         reg_3p3v: regulator@1 {
54                 compatible = "regulator-fixed";
55                 regulator-name = "fixed-3.3V";
56                 regulator-min-microvolt = <3300000>;
57                 regulator-max-microvolt = <3300000>;
58                 regulator-always-on;
59                 regulator-boot-on;
60         };
61
62         vmmc_sdhi0: regulator@2 {
63                 compatible = "regulator-fixed";
64                 regulator-name = "SDHI0 Vcc";
65                 regulator-min-microvolt = <3300000>;
66                 regulator-max-microvolt = <3300000>;
67                 gpio = <&pfc 15 GPIO_ACTIVE_HIGH>;
68                 enable-active-high;
69         };
70
71         vmmc_sdhi2: regulator@3 {
72                 compatible = "regulator-fixed";
73                 regulator-name = "SDHI2 Vcc";
74                 regulator-min-microvolt = <3300000>;
75                 regulator-max-microvolt = <3300000>;
76                 gpio = <&pfc 14 GPIO_ACTIVE_HIGH>;
77                 enable-active-high;
78         };
79
80         lan9220@10000000 {
81                 compatible = "smsc,lan9220", "smsc,lan9115";
82                 reg = <0x10000000 0x100>;
83                 phy-mode = "mii";
84                 interrupt-parent = <&irqpin0>;
85                 interrupts = <3 0>;     /* active low */
86                 reg-io-width = <4>;
87                 smsc,irq-push-pull;
88                 smsc,save-mac-address;
89                 vddvario-supply = <&reg_1p8v>;
90                 vdd33a-supply = <&reg_3p3v>;
91         };
92
93         leds {
94                 compatible = "gpio-leds";
95                 led1 {
96                         gpios = <&pfc 20 GPIO_ACTIVE_LOW>;
97                 };
98                 led2 {
99                         gpios = <&pfc 21 GPIO_ACTIVE_LOW>;
100                 };
101                 led3 {
102                         gpios = <&pfc 22 GPIO_ACTIVE_LOW>;
103                 };
104                 led4 {
105                         gpios = <&pfc 23 GPIO_ACTIVE_LOW>;
106                 };
107         };
108 };
109
110 &i2c0 {
111         status = "okay";
112         as3711@40 {
113                 compatible = "ams,as3711";
114                 reg = <0x40>;
115
116                 regulators {
117                         vdd_dvfs: sd1 {
118                                 regulator-name = "1.315V CPU";
119                                 regulator-min-microvolt = <1050000>;
120                                 regulator-max-microvolt = <1350000>;
121                                 regulator-always-on;
122                                 regulator-boot-on;
123                         };
124                         sd2 {
125                                 regulator-name = "1.8V";
126                                 regulator-min-microvolt = <1800000>;
127                                 regulator-max-microvolt = <1800000>;
128                                 regulator-always-on;
129                                 regulator-boot-on;
130                         };
131                         sd4 {
132                                 regulator-name = "1.215V";
133                                 regulator-min-microvolt = <1215000>;
134                                 regulator-max-microvolt = <1235000>;
135                                 regulator-always-on;
136                                 regulator-boot-on;
137                         };
138                         ldo2 {
139                                 regulator-name = "2.8V CPU";
140                                 regulator-min-microvolt = <2800000>;
141                                 regulator-max-microvolt = <2800000>;
142                                 regulator-always-on;
143                                 regulator-boot-on;
144                         };
145                         ldo3 {
146                                 regulator-name = "3.0V CPU";
147                                 regulator-min-microvolt = <3000000>;
148                                 regulator-max-microvolt = <3000000>;
149                                 regulator-always-on;
150                                 regulator-boot-on;
151                         };
152                         ldo4 {
153                                 regulator-name = "2.8V";
154                                 regulator-min-microvolt = <2800000>;
155                                 regulator-max-microvolt = <2800000>;
156                                 regulator-always-on;
157                                 regulator-boot-on;
158                         };
159                         ldo5 {
160                                 regulator-name = "2.8V #2";
161                                 regulator-min-microvolt = <2800000>;
162                                 regulator-max-microvolt = <2800000>;
163                                 regulator-always-on;
164                                 regulator-boot-on;
165                         };
166                         ldo7 {
167                                 regulator-name = "1.15V CPU";
168                                 regulator-min-microvolt = <1150000>;
169                                 regulator-max-microvolt = <1150000>;
170                                 regulator-always-on;
171                                 regulator-boot-on;
172                         };
173                         ldo8 {
174                                 regulator-name = "1.15V CPU #2";
175                                 regulator-min-microvolt = <1150000>;
176                                 regulator-max-microvolt = <1150000>;
177                                 regulator-always-on;
178                                 regulator-boot-on;
179                         };
180                 };
181         };
182 };
183
184 &i2c3 {
185         pinctrl-0 = <&i2c3_pins>;
186         pinctrl-names = "default";
187         status = "okay";
188 };
189
190 &mmcif {
191         pinctrl-0 = <&mmcif_pins>;
192         pinctrl-names = "default";
193
194         bus-width = <8>;
195         vmmc-supply = <&reg_1p8v>;
196         status = "okay";
197 };
198
199 &pfc {
200         pinctrl-0 = <&scifa4_pins>;
201         pinctrl-names = "default";
202
203         i2c3_pins: i2c3 {
204                 renesas,groups = "i2c3_1";
205                 renesas,function = "i2c3";
206         };
207
208         mmcif_pins: mmcif {
209                 mux {
210                         renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0";
211                         renesas,function = "mmc0";
212                 };
213                 cfg {
214                         renesas,groups = "mmc0_data8_0";
215                         renesas,pins = "PORT279";
216                         bias-pull-up;
217                 };
218         };
219
220         scifa4_pins: scifa4 {
221                 renesas,groups = "scifa4_data", "scifa4_ctrl";
222                 renesas,function = "scifa4";
223         };
224
225         sdhi0_pins: sdhi0 {
226                 renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp";
227                 renesas,function = "sdhi0";
228         };
229
230         sdhi2_pins: sdhi2 {
231                 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
232                 renesas,function = "sdhi2";
233         };
234 };
235
236 &sdhi0 {
237         pinctrl-0 = <&sdhi0_pins>;
238         pinctrl-names = "default";
239
240         vmmc-supply = <&vmmc_sdhi0>;
241         bus-width = <4>;
242         status = "okay";
243 };
244
245 &sdhi2 {
246         pinctrl-0 = <&sdhi2_pins>;
247         pinctrl-names = "default";
248
249         vmmc-supply = <&vmmc_sdhi2>;
250         bus-width = <4>;
251         broken-cd;
252         status = "okay";
253 };