blob: 49824be668450cf02f45ccd226d0243f5fd9dc8b [file] [log] [blame]
Arnd Bergmann2d334292012-03-07 15:04:07 +00001/*
2 * Copyright 2011 ST-Ericsson AB
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12/dts-v1/;
Gabriel Fernandez807e8832013-05-27 15:30:53 +020013#include "dbx5x0.dtsi"
Arnd Bergmann2d334292012-03-07 15:04:07 +000014
15/ {
16 model = "Calao Systems Snowball platform with device tree";
Lee Jones79b40752012-10-15 10:07:55 +010017 compatible = "calaosystems,snowball-a9500", "st-ericsson,u9500";
Arnd Bergmann2d334292012-03-07 15:04:07 +000018
Arnd Bergmann2d334292012-03-07 15:04:07 +000019 memory {
20 reg = <0x00000000 0x20000000>;
21 };
22
Lee Jonesbc367482012-05-03 11:23:47 +010023 en_3v3_reg: en_3v3 {
24 compatible = "regulator-fixed";
Lee Jonesb0995762013-06-18 09:51:58 +010025 regulator-name = "en-3v3-fixed-supply";
26 regulator-min-microvolt = <3300000>;
27 regulator-max-microvolt = <3300000>;
28 /* AB8500 GPIOs start from 1 - offset 25 is GPIO26. */
29 gpio = <&ab8500_gpio 25 0x4>;
30 startup-delay-us = <5000>;
31 enable-active-high;
Lee Jonesbc367482012-05-03 11:23:47 +010032 };
33
Lee Jones7e0ce272012-03-15 16:46:17 +000034 gpio_keys {
35 compatible = "gpio-keys";
36 #address-cells = <1>;
37 #size-cells = <0>;
38
39 button@1 {
40 debounce_interval = <50>;
41 wakeup = <1>;
42 linux,code = <2>;
43 label = "userpb";
Lee Jones93b56982012-05-29 14:17:36 +080044 gpios = <&gpio1 0 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +000045 };
46 button@2 {
47 debounce_interval = <50>;
48 wakeup = <1>;
49 linux,code = <3>;
Lee Jones3f3ed402012-04-13 15:05:07 +010050 label = "extkb1";
Lee Jones93b56982012-05-29 14:17:36 +080051 gpios = <&gpio4 23 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +000052 };
53 button@3 {
54 debounce_interval = <50>;
55 wakeup = <1>;
56 linux,code = <4>;
Lee Jones3f3ed402012-04-13 15:05:07 +010057 label = "extkb2";
Lee Jones93b56982012-05-29 14:17:36 +080058 gpios = <&gpio4 24 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +000059 };
60 button@4 {
61 debounce_interval = <50>;
62 wakeup = <1>;
63 linux,code = <5>;
Lee Jones3f3ed402012-04-13 15:05:07 +010064 label = "extkb3";
Lee Jones93b56982012-05-29 14:17:36 +080065 gpios = <&gpio5 1 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +000066 };
67 button@5 {
68 debounce_interval = <50>;
69 wakeup = <1>;
70 linux,code = <6>;
Lee Jones3f3ed402012-04-13 15:05:07 +010071 label = "extkb4";
Lee Jones93b56982012-05-29 14:17:36 +080072 gpios = <&gpio5 2 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +000073 };
74 };
75
76 leds {
77 compatible = "gpio-leds";
78 used-led {
79 label = "user_led";
Lee Jones93b56982012-05-29 14:17:36 +080080 gpios = <&gpio4 14 0x4>;
Lee Jones7fd975f2012-06-15 09:30:30 +010081 default-state = "on";
Lee Jonesfd53d042012-05-02 09:48:38 +010082 linux,default-trigger = "heartbeat";
Lee Jones7e0ce272012-03-15 16:46:17 +000083 };
84 };
85
Gabriel Fernandezb1ba1432013-03-01 14:38:07 +010086 soc {
Lee Jonese6488062012-07-31 13:31:50 +010087
88 sound {
89 compatible = "stericsson,snd-soc-mop500";
90
91 stericsson,cpu-dai = <&msp1 &msp3>;
92 stericsson,audio-codec = <&codec>;
93 };
94
Lee Jonesfe164522012-07-31 12:37:16 +010095 msp1: msp@80124000 {
96 status = "okay";
97 };
98
99 msp3: msp@80125000 {
100 status = "okay";
101 };
102
Lee Jones7e0ce272012-03-15 16:46:17 +0000103 external-bus@50000000 {
Lee Jonesbf76e062012-04-24 10:53:18 +0100104 status = "okay";
Lee Jones7e0ce272012-03-15 16:46:17 +0000105
Lee Jonesbf76e062012-04-24 10:53:18 +0100106 ethernet@0 {
107 compatible = "smsc,lan9115";
108 reg = <0 0x10000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200109 interrupts = <12 IRQ_TYPE_EDGE_RISING>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000110 interrupt-parent = <&gpio4>;
Lee Jonesbc367482012-05-03 11:23:47 +0100111 vdd33a-supply = <&en_3v3_reg>;
112 vddvario-supply = <&db8500_vape_reg>;
113
Lee Jonesbf76e062012-04-24 10:53:18 +0100114
115 reg-shift = <1>;
116 reg-io-width = <2>;
117 smsc,force-internal-phy;
118 smsc,irq-active-high;
119 smsc,irq-push-pull;
Lee Jones7e0ce272012-03-15 16:46:17 +0000120 };
121 };
122
Lee Jones383307c2013-04-02 14:21:54 +0100123 vmmci: regulator-gpio {
124 gpios = <&gpio6 25 0x4>;
125 enable-gpio = <&gpio7 4 0x4>;
126
127 status = "okay";
128 };
129
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800130 // External Micro SD slot
Lee Jones81bf8c22012-09-26 12:55:56 +0100131 sdi0_per1@80126000 {
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800132 arm,primecell-periphid = <0x10480180>;
Linus Walleij90ccde42013-05-27 13:15:05 +0200133 max-frequency = <100000000>;
Lee Jones92a0f482012-09-26 11:12:48 +0100134 bus-width = <4>;
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800135 mmc-cap-mmc-highspeed;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800136 vmmc-supply = <&ab8500_ldo_aux3_reg>;
Lee Jones383307c2013-04-02 14:21:54 +0100137 vqmmc-supply = <&vmmci>;
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800138
Lee Jones93b56982012-05-29 14:17:36 +0800139 cd-gpios = <&gpio6 26 0x4>; // 218
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800140 cd-inverted;
141
142 status = "okay";
Lee Jones7e0ce272012-03-15 16:46:17 +0000143 };
144
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800145 // On-board eMMC
Lee Jones81bf8c22012-09-26 12:55:56 +0100146 sdi4_per2@80114000 {
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800147 arm,primecell-periphid = <0x10480180>;
Linus Walleij90ccde42013-05-27 13:15:05 +0200148 max-frequency = <100000000>;
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800149 bus-width = <8>;
150 mmc-cap-mmc-highspeed;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800151 vmmc-supply = <&ab8500_ldo_aux2_reg>;
Lee Jones5e1ac7d2012-05-29 14:40:04 +0800152
153 status = "okay";
Lee Jones7e0ce272012-03-15 16:46:17 +0000154 };
155
Lee Jones4905af02012-03-07 17:35:04 +0000156 uart@80120000 {
157 status = "okay";
158 };
159
160 uart@80121000 {
161 status = "okay";
162 };
163
164 uart@80007000 {
165 status = "okay";
166 };
167
Lee Jones7e0ce272012-03-15 16:46:17 +0000168 i2c@80004000 {
169 tc3589x@42 {
170 //compatible = "tc3589x";
171 reg = <0x42>;
Lee Jones93b56982012-05-29 14:17:36 +0800172 gpios = <&gpio6 25 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000173 interrupt-parent = <&gpio6>;
174 };
175 tps61052@33 {
176 //compatible = "tps61052";
177 reg = <0x33>;
178 };
179 };
180
181 i2c@80128000 {
Linus Walleijd5942242013-06-04 11:50:32 +0200182 lp5521@33 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000183 // compatible = "lp5521";
184 reg = <0x33>;
185 };
Linus Walleijd5942242013-06-04 11:50:32 +0200186 lp5521@34 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000187 // compatible = "lp5521";
188 reg = <0x34>;
189 };
Linus Walleijd5942242013-06-04 11:50:32 +0200190 bh1780@29 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000191 // compatible = "rohm,bh1780gli";
192 reg = <0x33>;
193 };
194 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800195
196 cpufreq-cooling {
197 status = "okay";
198 };
Linus Torvaldsdb5b0ae2012-12-13 10:39:26 -0800199
Lee Jones809efa52012-09-25 12:04:51 +0100200 prcmu@80157000 {
201 db8500-prcmu-regulators {
202 db8500_vape_reg: db8500_vape {
203 regulator-name = "db8500-vape";
204 };
205
206 db8500_varm_reg: db8500_varm {
207 regulator-name = "db8500-varm";
208 };
209
210 db8500_vmodem_reg: db8500_vmodem {
211 regulator-name = "db8500-vmodem";
212 };
213
214 db8500_vpll_reg: db8500_vpll {
215 regulator-name = "db8500-vpll";
216 };
217
218 db8500_vsmps1_reg: db8500_vsmps1 {
219 regulator-name = "db8500-vsmps1";
220 };
221
222 db8500_vsmps2_reg: db8500_vsmps2 {
223 regulator-name = "db8500-vsmps2";
224 };
225
226 db8500_vsmps3_reg: db8500_vsmps3 {
227 regulator-name = "db8500-vsmps3";
228 };
229
230 db8500_vrf1_reg: db8500_vrf1 {
231 regulator-name = "db8500-vrf1";
232 };
233
234 db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
235 regulator-name = "db8500-sva-mmdsp";
236 };
237
238 db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
239 regulator-name = "db8500-sva-mmdsp-ret";
240 };
241
242 db8500_sva_pipe_reg: db8500_sva_pipe {
243 regulator-name = "db8500_sva_pipe";
244 };
245
246 db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
247 regulator-name = "db8500_sia_mmdsp";
248 };
249
250 db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
251 regulator-name = "db8500-sia-mmdsp-ret";
252 };
253
254 db8500_sia_pipe_reg: db8500_sia_pipe {
255 regulator-name = "db8500-sia-pipe";
256 };
257
258 db8500_sga_reg: db8500_sga {
259 regulator-name = "db8500-sga";
260 };
261
262 db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
263 regulator-name = "db8500-b2r2-mcde";
264 };
265
266 db8500_esram12_reg: db8500_esram12 {
267 regulator-name = "db8500-esram12";
268 };
269
270 db8500_esram12_ret_reg: db8500_esram12_ret {
271 regulator-name = "db8500-esram12-ret";
272 };
273
274 db8500_esram34_reg: db8500_esram34 {
275 regulator-name = "db8500-esram34";
276 };
277
278 db8500_esram34_ret_reg: db8500_esram34_ret {
279 regulator-name = "db8500-esram34-ret";
280 };
281 };
282
Lee Jones6c1d25b2013-04-02 14:21:51 +0100283 thermal@801573c0 {
284 num-trips = <4>;
285
286 trip0-temp = <70000>;
287 trip0-type = "active";
288 trip0-cdev-num = <1>;
289 trip0-cdev-name0 = "thermal-cpufreq-0";
290
291 trip1-temp = <75000>;
292 trip1-type = "active";
293 trip1-cdev-num = <1>;
294 trip1-cdev-name0 = "thermal-cpufreq-0";
295
296 trip2-temp = <80000>;
297 trip2-type = "active";
298 trip2-cdev-num = <1>;
299 trip2-cdev-name0 = "thermal-cpufreq-0";
300
301 trip3-temp = <85000>;
302 trip3-type = "critical";
303 trip3-cdev-num = <0>;
304
305 status = "okay";
306 };
307
Arnd Bergmannd52701d32013-03-12 09:39:01 +0100308 ab8500 {
Lee Jones924e82d2013-01-16 14:28:03 +0000309 ab8500-gpio {
310 compatible = "stericsson,ab8500-gpio";
311 };
312
Lee Jones809efa52012-09-25 12:04:51 +0100313 ab8500-regulators {
314 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
315 regulator-name = "V-DISPLAY";
316 };
317
318 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
319 regulator-name = "V-eMMC1";
320 };
321
322 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
323 regulator-name = "V-MMC-SD";
324 };
325
Fabio Baltieri99b38ee2013-04-09 11:16:56 +0200326 ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
Lee Jones809efa52012-09-25 12:04:51 +0100327 regulator-name = "V-INTCORE";
328 };
329
330 ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
331 regulator-name = "V-TVOUT";
332 };
333
334 ab8500_ldo_usb_reg: ab8500_ldo_usb {
335 regulator-name = "dummy";
336 };
337
338 ab8500_ldo_audio_reg: ab8500_ldo_audio {
339 regulator-name = "V-AUD";
340 };
341
342 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
343 regulator-name = "V-AMIC1";
344 };
345
Fabio Baltieri5510ed92013-05-30 15:27:42 +0200346 ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
Lee Jones809efa52012-09-25 12:04:51 +0100347 regulator-name = "V-AMIC2";
348 };
349
350 ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
351 regulator-name = "V-DMIC";
352 };
353
354 ab8500_ldo_ana_reg: ab8500_ldo_ana {
355 regulator-name = "V-CSI/DSI";
356 };
357 };
358 };
359 };
Arnd Bergmann2d334292012-03-07 15:04:07 +0000360 };
361};