exynos: dts: Add PMIC and regulator definitions
[oweals/u-boot.git] / arch / arm / dts / exynos5250-snow.dts
1 /*
2  * SAMSUNG Snow board device tree source
3  *
4  * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5  *              http://www.samsung.com
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  */
11
12 /dts-v1/;
13 #include <dt-bindings/gpio/gpio.h>
14 #include <dt-bindings/interrupt-controller/irq.h>
15 #include <dt-bindings/input/input.h>
16 #include "exynos5250.dtsi"
17
18 / {
19         model = "Google Snow";
20         compatible = "google,snow", "samsung,exynos5250", "samsung,exynos5";
21
22         aliases {
23                 i2c0 = "/i2c@12C60000";
24                 i2c1 = "/i2c@12C70000";
25                 i2c2 = "/i2c@12C80000";
26                 i2c3 = "/i2c@12C90000";
27                 i2c4 = "/i2c@12CA0000";
28                 i2c5 = "/i2c@12CB0000";
29                 i2c6 = "/i2c@12CC0000";
30                 i2c7 = "/i2c@12CD0000";
31                 spi0 = "/spi@12d20000";
32                 spi1 = "/spi@12d30000";
33                 spi2 = "/spi@12d40000";
34                 spi3 = "/spi@131a0000";
35                 spi4 = "/spi@131b0000";
36                 mmc0 = "/mmc@12200000";
37                 mmc1 = "/mmc@12210000";
38                 mmc2 = "/mmc@12220000";
39                 mmc3 = "/mmc@12230000";
40                 serial0 = "/serial@12C30000";
41                 console = "/serial@12C30000";
42                 i2s = "/sound@3830000";
43         };
44
45         i2c4: i2c@12CA0000 {
46                 cros_ec: cros-ec@1e {
47                         reg = <0x1e>;
48                         compatible = "google,cros-ec-i2c";
49                         i2c-max-frequency = <100000>;
50                         u-boot,i2c-offset-len = <0>;
51                         ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>;
52                 };
53
54                 power-regulator@48 {
55                         compatible = "ti,tps65090";
56                         reg = <0x48>;
57                 };
58         };
59
60         spi@12d30000 {
61                 spi-max-frequency = <50000000>;
62                 firmware_storage_spi: flash@0 {
63                         compatible = "spi-flash";
64                         reg = <0>;
65                 };
66         };
67
68         spi@131b0000 {
69                 spi-max-frequency = <1000000>;
70                 spi-deactivate-delay = <100>;
71
72                 /* Snow did support SPI but the released version used I2C */
73                 embedded-controller {
74                         compatible = "google,cros-ec-i2c";
75                         reg = <0x1e>;
76                         spi-max-frequency = <5000000>;
77                         ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>;
78                         optimise-flash-write;
79                         status = "disabled";
80                 };
81         };
82
83         sound@3830000 {
84                 samsung,codec-type = "max98095";
85                 codec-enable-gpio = <&gpx1 7 GPIO_ACTIVE_HIGH>;
86         };
87
88         sound@12d60000 {
89                 status = "disabled";
90         };
91
92         i2c@12CD0000 {
93                 soundcodec@22 {
94                         reg = <0x22>;
95                         compatible = "maxim,max98095-codec";
96                 };
97
98                 ptn3460-bridge@20 {
99                         compatible = "nxp,ptn3460";
100                         reg = <0x20>;
101                         /*
102                          * TODO(sjg@chromium.org): Use GPIOs here
103                          * powerdown-gpio = <&gpy2 5 0>;
104                          * reset-gpio = <&gpx1 5 0>;
105                          * edid-emulation = <5>;
106                          * pinctrl-names = "default";
107                          * pinctrl-0 = <&ptn3460_gpios>;
108                          */
109                 };
110         };
111
112         i2c@12C60000 {
113                 max77686@09 {
114                         reg = <0x9>;
115                         compatible = "maxim,max77686";
116                 };
117         };
118
119         mmc@12200000 {
120                 samsung,bus-width = <8>;
121                 samsung,timing = <1 3 3>;
122                 samsung,removable = <0>;
123         };
124
125         mmc@12210000 {
126                 status = "disabled";
127         };
128
129         mmc@12220000 {
130                 samsung,bus-width = <4>;
131                 samsung,timing = <1 2 3>;
132                 samsung,removable = <1>;
133         };
134
135         mmc@12230000 {
136                 status = "disabled";
137         };
138
139         ehci@12110000 {
140                 samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
141                 status = "okay";
142         };
143
144         xhci@12000000 {
145                 samsung,vbus-gpio = <&gpx2 7 GPIO_ACTIVE_HIGH>;
146         };
147
148         tmu@10060000 {
149                 samsung,min-temp        = <25>;
150                 samsung,max-temp        = <125>;
151                 samsung,start-warning   = <95>;
152                 samsung,start-tripping  = <105>;
153                 samsung,hw-tripping     = <110>;
154                 samsung,efuse-min-value = <40>;
155                 samsung,efuse-value     = <55>;
156                 samsung,efuse-max-value = <100>;
157                 samsung,slope           = <274761730>;
158                 samsung,dc-value        = <25>;
159         };
160
161         fimd@14400000 {
162                 samsung,vl-freq = <60>;
163                 samsung,vl-col = <1366>;
164                 samsung,vl-row = <768>;
165                 samsung,vl-width = <1366>;
166                 samsung,vl-height = <768>;
167
168                 samsung,vl-clkp;
169                 samsung,vl-dp;
170                 samsung,vl-hsp;
171                 samsung,vl-vsp;
172
173                 samsung,vl-bpix = <4>;
174
175                 samsung,vl-hspw = <32>;
176                 samsung,vl-hbpd = <80>;
177                 samsung,vl-hfpd = <48>;
178                 samsung,vl-vspw = <5>;
179                 samsung,vl-vbpd = <14>;
180                 samsung,vl-vfpd = <3>;
181                 samsung,vl-cmd-allow-len = <0xf>;
182
183                 samsung,winid = <0>;
184                 samsung,interface-mode = <1>;
185                 samsung,dp-enabled = <1>;
186                 samsung,dual-lcd-enabled = <0>;
187         };
188
189         dp@145b0000 {
190                 samsung,lt-status = <0>;
191
192                 samsung,master-mode = <0>;
193                 samsung,bist-mode = <0>;
194                 samsung,bist-pattern = <0>;
195                 samsung,h-sync-polarity = <0>;
196                 samsung,v-sync-polarity = <0>;
197                 samsung,interlaced = <0>;
198                 samsung,color-space = <0>;
199                 samsung,dynamic-range = <0>;
200                 samsung,ycbcr-coeff = <0>;
201                 samsung,color-depth = <1>;
202         };
203
204 };
205
206 &i2c_0 {
207         status = "okay";
208         samsung,i2c-sda-delay = <100>;
209         samsung,i2c-max-bus-freq = <378000>;
210
211         max77686: max77686@09 {
212                 compatible = "maxim,max77686";
213                 interrupt-parent = <&gpx3>;
214                 interrupts = <2 IRQ_TYPE_NONE>;
215                 wakeup-source;
216                 reg = <0x09>;
217                 #clock-cells = <1>;
218
219                 voltage-regulators {
220                         ldo1_reg: LDO1 {
221                                 regulator-name = "P1.0V_LDO_OUT1";
222                                 regulator-min-microvolt = <1000000>;
223                                 regulator-max-microvolt = <1000000>;
224                                 regulator-always-on;
225                         };
226
227                         ldo2_reg: LDO2 {
228                                 regulator-name = "P1.8V_LDO_OUT2";
229                                 regulator-min-microvolt = <1800000>;
230                                 regulator-max-microvolt = <1800000>;
231                                 regulator-always-on;
232                         };
233
234                         ldo3_reg: LDO3 {
235                                 regulator-name = "P1.8V_LDO_OUT3";
236                                 regulator-min-microvolt = <1800000>;
237                                 regulator-max-microvolt = <1800000>;
238                                 regulator-always-on;
239                         };
240
241                         ldo7_reg: LDO7 {
242                                 regulator-name = "P1.1V_LDO_OUT7";
243                                 regulator-min-microvolt = <1100000>;
244                                 regulator-max-microvolt = <1100000>;
245                                 regulator-always-on;
246                         };
247
248                         ldo8_reg: LDO8 {
249                                 regulator-name = "P1.0V_LDO_OUT8";
250                                 regulator-min-microvolt = <1000000>;
251                                 regulator-max-microvolt = <1000000>;
252                                 regulator-always-on;
253                         };
254
255                         ldo10_reg: LDO10 {
256                                 regulator-name = "P1.8V_LDO_OUT10";
257                                 regulator-min-microvolt = <1800000>;
258                                 regulator-max-microvolt = <1800000>;
259                                 regulator-always-on;
260                         };
261
262                         ldo12_reg: LDO12 {
263                                 regulator-name = "P3.0V_LDO_OUT12";
264                                 regulator-min-microvolt = <3000000>;
265                                 regulator-max-microvolt = <3000000>;
266                                 regulator-always-on;
267                         };
268
269                         ldo14_reg: LDO14 {
270                                 regulator-name = "P1.8V_LDO_OUT14";
271                                 regulator-min-microvolt = <1800000>;
272                                 regulator-max-microvolt = <1800000>;
273                                 regulator-always-on;
274                         };
275
276                         ldo15_reg: LDO15 {
277                                 regulator-name = "P1.0V_LDO_OUT15";
278                                 regulator-min-microvolt = <1000000>;
279                                 regulator-max-microvolt = <1000000>;
280                                 regulator-always-on;
281                         };
282
283                         ldo16_reg: LDO16 {
284                                 regulator-name = "P1.8V_LDO_OUT16";
285                                 regulator-min-microvolt = <1800000>;
286                                 regulator-max-microvolt = <1800000>;
287                                 regulator-always-on;
288                         };
289
290                         ldo17_reg: LDO17 {
291                                 regulator-name = "vdd_mydp";
292                                 regulator-min-microvolt = <1200000>;
293                                 regulator-max-microvolt = <1200000>;
294                         };
295
296                         buck1_reg: BUCK1 {
297                                 regulator-name = "vdd_mif";
298                                 regulator-min-microvolt = <950000>;
299                                 regulator-max-microvolt = <1300000>;
300                                 regulator-always-on;
301                                 regulator-boot-on;
302                         };
303
304                         buck2_reg: BUCK2 {
305                                 regulator-name = "vdd_arm";
306                                 regulator-min-microvolt = <850000>;
307                                 regulator-max-microvolt = <1350000>;
308                                 regulator-always-on;
309                                 regulator-boot-on;
310                         };
311
312                         buck3_reg: BUCK3 {
313                                 regulator-name = "vdd_int";
314                                 regulator-min-microvolt = <900000>;
315                                 regulator-max-microvolt = <1200000>;
316                                 regulator-always-on;
317                                 regulator-boot-on;
318                         };
319
320                         buck4_reg: BUCK4 {
321                                 regulator-name = "vdd_g3d";
322                                 regulator-min-microvolt = <850000>;
323                                 regulator-max-microvolt = <1300000>;
324                                 regulator-always-on;
325                                 regulator-boot-on;
326                         };
327
328                         buck5_reg: BUCK5 {
329                                 regulator-name = "P1.8V_BUCK_OUT5";
330                                 regulator-min-microvolt = <1800000>;
331                                 regulator-max-microvolt = <1800000>;
332                                 regulator-always-on;
333                                 regulator-boot-on;
334                         };
335
336                         buck6_reg: BUCK6 {
337                                 regulator-name = "P1.35V_BUCK_OUT6";
338                                 regulator-min-microvolt = <1350000>;
339                                 regulator-max-microvolt = <1350000>;
340                                 regulator-always-on;
341                         };
342
343                         buck7_reg: BUCK7 {
344                                 regulator-name = "P2.0V_BUCK_OUT7";
345                                 regulator-min-microvolt = <2000000>;
346                                 regulator-max-microvolt = <2000000>;
347                                 regulator-always-on;
348                         };
349
350                         buck8_reg: BUCK8 {
351                                 regulator-name = "P2.85V_BUCK_OUT8";
352                                 regulator-min-microvolt = <2850000>;
353                                 regulator-max-microvolt = <2850000>;
354                                 regulator-always-on;
355                         };
356                 };
357         };
358 };
359
360 #include "cros-ec-keyboard.dtsi"