blob: d765c38afebf37785bda568c309e70c2498d3e30 [file] [log] [blame]
Arnd Bergmann5d0769f2012-03-02 23:07:21 +00001/*
2 * Copyright 2012 Linaro Ltd
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/include/ "skeleton.dtsi"
13
14/ {
15 soc-u9500 {
16 #address-cells = <1>;
17 #size-cells = <1>;
Lee Jones7e0ce272012-03-15 16:46:17 +000018 compatible = "stericsson,db8500";
Lee Jonesdab64872012-03-07 17:22:30 +000019 interrupt-parent = <&intc>;
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000020 ranges;
Lee Jones7e0ce272012-03-15 16:46:17 +000021
Lee Jonesdab64872012-03-07 17:22:30 +000022 intc: interrupt-controller@a0411000 {
23 compatible = "arm,cortex-a9-gic";
24 #interrupt-cells = <3>;
25 #address-cells = <1>;
26 interrupt-controller;
Lee Jonesdab64872012-03-07 17:22:30 +000027 reg = <0xa0411000 0x1000>,
28 <0xa0410100 0x100>;
29 };
30
Lee Jonesf1949ea2012-03-08 09:02:02 +000031 L2: l2-cache {
32 compatible = "arm,pl310-cache";
33 reg = <0xa0412000 0x1000>;
34 interrupts = <0 13 4>;
35 cache-unified;
36 cache-level = <2>;
37 };
38
Lee Jones7e0ce272012-03-15 16:46:17 +000039 pmu {
40 compatible = "arm,cortex-a9-pmu";
41 interrupts = <0 7 0x4>;
42 };
43
Lee Jones71de5c42012-03-16 09:53:24 +000044 timer@a0410600 {
45 compatible = "arm,cortex-a9-twd-timer";
46 reg = <0xa0410600 0x20>;
47 interrupts = <1 13 0x304>;
48 };
49
Lee Jones7e0ce272012-03-15 16:46:17 +000050 rtc@80154000 {
Lee Jonesddb3b992012-05-26 07:01:31 +010051 compatible = "arm,rtc-pl031", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +000052 reg = <0x80154000 0x1000>;
53 interrupts = <0 18 0x4>;
54 };
55
56 gpio0: gpio@8012e000 {
57 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +010058 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +000059 reg = <0x8012e000 0x80>;
60 interrupts = <0 119 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +080061 interrupt-controller;
62 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +010063 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +000064 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +010065 #gpio-cells = <2>;
66 gpio-bank = <0>;
Lee Jones7e0ce272012-03-15 16:46:17 +000067 };
68
69 gpio1: gpio@8012e080 {
70 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +010071 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +000072 reg = <0x8012e080 0x80>;
73 interrupts = <0 120 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +080074 interrupt-controller;
75 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +010076 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +000077 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +010078 #gpio-cells = <2>;
79 gpio-bank = <1>;
Lee Jones7e0ce272012-03-15 16:46:17 +000080 };
81
82 gpio2: gpio@8000e000 {
83 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +010084 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +000085 reg = <0x8000e000 0x80>;
86 interrupts = <0 121 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +080087 interrupt-controller;
88 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +010089 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +000090 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +010091 #gpio-cells = <2>;
92 gpio-bank = <2>;
Lee Jones7e0ce272012-03-15 16:46:17 +000093 };
94
95 gpio3: gpio@8000e080 {
96 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +010097 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +000098 reg = <0x8000e080 0x80>;
99 interrupts = <0 122 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +0800100 interrupt-controller;
101 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100102 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000103 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100104 #gpio-cells = <2>;
105 gpio-bank = <3>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000106 };
107
108 gpio4: gpio@8000e100 {
109 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100110 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000111 reg = <0x8000e100 0x80>;
112 interrupts = <0 123 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +0800113 interrupt-controller;
114 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100115 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000116 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100117 #gpio-cells = <2>;
118 gpio-bank = <4>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000119 };
120
121 gpio5: gpio@8000e180 {
122 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100123 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000124 reg = <0x8000e180 0x80>;
125 interrupts = <0 124 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +0800126 interrupt-controller;
127 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100128 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000129 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100130 #gpio-cells = <2>;
131 gpio-bank = <5>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000132 };
133
134 gpio6: gpio@8011e000 {
135 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100136 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000137 reg = <0x8011e000 0x80>;
138 interrupts = <0 125 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +0800139 interrupt-controller;
140 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100141 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000142 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100143 #gpio-cells = <2>;
144 gpio-bank = <6>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000145 };
146
147 gpio7: gpio@8011e080 {
148 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100149 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000150 reg = <0x8011e080 0x80>;
151 interrupts = <0 126 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +0800152 interrupt-controller;
153 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100154 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000155 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100156 #gpio-cells = <2>;
157 gpio-bank = <7>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000158 };
159
160 gpio8: gpio@a03fe000 {
161 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100162 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000163 reg = <0xa03fe000 0x80>;
164 interrupts = <0 127 0x4>;
Lee Jones93b56982012-05-29 14:17:36 +0800165 interrupt-controller;
166 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100167 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000168 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100169 #gpio-cells = <2>;
170 gpio-bank = <8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000171 };
172
Lee Jones8979cfe2013-01-11 15:45:28 +0000173 pinctrl {
Lee Jones627c1a82013-01-30 17:25:02 +0100174 compatible = "stericsson,nmk-pinctrl";
Lee Jones8979cfe2013-01-11 15:45:28 +0000175 prcm = <&prcmu>;
Lee Jones5910de92012-05-26 06:25:36 +0100176 };
177
Lee Jones7e0ce272012-03-15 16:46:17 +0000178 usb@a03e0000 {
179 compatible = "stericsson,db8500-musb",
180 "mentor,musb";
181 reg = <0xa03e0000 0x10000>;
182 interrupts = <0 23 0x4>;
183 };
184
185 dma-controller@801C0000 {
186 compatible = "stericsson,db8500-dma40",
187 "stericsson,dma40";
188 reg = <0x801C0000 0x1000 0x40010000 0x800>;
189 interrupts = <0 25 0x4>;
190 };
191
Lee Jones8979cfe2013-01-11 15:45:28 +0000192 prcmu: prcmu@80157000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000193 compatible = "stericsson,db8500-prcmu";
Lee Jonesfa17f9f2013-01-31 11:24:19 +0000194 reg = <0x80157000 0x2000>;
Lee Jones8979cfe2013-01-11 15:45:28 +0000195 reg-names = "prcmu";
Lee Jonesccf74f72012-05-28 16:50:49 +0800196 interrupts = <0 47 0x4>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000197 #address-cells = <1>;
Lee Jones3de3d742012-04-24 10:00:15 +0100198 #size-cells = <1>;
Lee Jonesc09090b2012-08-03 15:42:25 +0100199 interrupt-controller;
200 #interrupt-cells = <2>;
Lee Jones3de3d742012-04-24 10:00:15 +0100201 ranges;
202
Lee Jonesccf74f72012-05-28 16:50:49 +0800203 prcmu-timer-4@80157450 {
Lee Jones3de3d742012-04-24 10:00:15 +0100204 compatible = "stericsson,db8500-prcmu-timer-4";
205 reg = <0x80157450 0xC>;
206 };
Lee Jones7e0ce272012-03-15 16:46:17 +0000207
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800208 thermal@801573c0 {
209 compatible = "stericsson,db8500-thermal";
210 reg = <0x801573c0 0x40>;
211 interrupts = <21 0x4>, <22 0x4>;
212 interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH";
213 status = "disabled";
214 };
215
Lee Jonese5999f22012-05-04 13:32:34 +0100216 db8500-prcmu-regulators {
217 compatible = "stericsson,db8500-prcmu-regulator";
218
219 // DB8500_REGULATOR_VAPE
220 db8500_vape_reg: db8500_vape {
Laxman Dewanganda268482012-06-20 17:53:05 +0530221 regulator-compatible = "db8500_vape";
Lee Jonese5999f22012-05-04 13:32:34 +0100222 regulator-always-on;
223 };
224
225 // DB8500_REGULATOR_VARM
226 db8500_varm_reg: db8500_varm {
Laxman Dewanganda268482012-06-20 17:53:05 +0530227 regulator-compatible = "db8500_varm";
Lee Jonese5999f22012-05-04 13:32:34 +0100228 };
229
230 // DB8500_REGULATOR_VMODEM
231 db8500_vmodem_reg: db8500_vmodem {
Laxman Dewanganda268482012-06-20 17:53:05 +0530232 regulator-compatible = "db8500_vmodem";
Lee Jonese5999f22012-05-04 13:32:34 +0100233 };
234
235 // DB8500_REGULATOR_VPLL
236 db8500_vpll_reg: db8500_vpll {
Laxman Dewanganda268482012-06-20 17:53:05 +0530237 regulator-compatible = "db8500_vpll";
Lee Jonese5999f22012-05-04 13:32:34 +0100238 };
239
240 // DB8500_REGULATOR_VSMPS1
241 db8500_vsmps1_reg: db8500_vsmps1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530242 regulator-compatible = "db8500_vsmps1";
Lee Jonese5999f22012-05-04 13:32:34 +0100243 };
244
245 // DB8500_REGULATOR_VSMPS2
246 db8500_vsmps2_reg: db8500_vsmps2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530247 regulator-compatible = "db8500_vsmps2";
Lee Jonese5999f22012-05-04 13:32:34 +0100248 };
249
250 // DB8500_REGULATOR_VSMPS3
251 db8500_vsmps3_reg: db8500_vsmps3 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530252 regulator-compatible = "db8500_vsmps3";
Lee Jonese5999f22012-05-04 13:32:34 +0100253 };
254
255 // DB8500_REGULATOR_VRF1
256 db8500_vrf1_reg: db8500_vrf1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530257 regulator-compatible = "db8500_vrf1";
Lee Jonese5999f22012-05-04 13:32:34 +0100258 };
259
260 // DB8500_REGULATOR_SWITCH_SVAMMDSP
261 db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
Laxman Dewanganda268482012-06-20 17:53:05 +0530262 regulator-compatible = "db8500_sva_mmdsp";
Lee Jonese5999f22012-05-04 13:32:34 +0100263 };
264
265 // DB8500_REGULATOR_SWITCH_SVAMMDSPRET
266 db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530267 regulator-compatible = "db8500_sva_mmdsp_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100268 };
269
270 // DB8500_REGULATOR_SWITCH_SVAPIPE
271 db8500_sva_pipe_reg: db8500_sva_pipe {
Laxman Dewanganda268482012-06-20 17:53:05 +0530272 regulator-compatible = "db8500_sva_pipe";
Lee Jonese5999f22012-05-04 13:32:34 +0100273 };
274
275 // DB8500_REGULATOR_SWITCH_SIAMMDSP
276 db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
Laxman Dewanganda268482012-06-20 17:53:05 +0530277 regulator-compatible = "db8500_sia_mmdsp";
Lee Jonese5999f22012-05-04 13:32:34 +0100278 };
279
280 // DB8500_REGULATOR_SWITCH_SIAMMDSPRET
281 db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
Lee Jonese5999f22012-05-04 13:32:34 +0100282 };
283
284 // DB8500_REGULATOR_SWITCH_SIAPIPE
285 db8500_sia_pipe_reg: db8500_sia_pipe {
Laxman Dewanganda268482012-06-20 17:53:05 +0530286 regulator-compatible = "db8500_sia_pipe";
Lee Jonese5999f22012-05-04 13:32:34 +0100287 };
288
289 // DB8500_REGULATOR_SWITCH_SGA
290 db8500_sga_reg: db8500_sga {
Laxman Dewanganda268482012-06-20 17:53:05 +0530291 regulator-compatible = "db8500_sga";
Lee Jonese5999f22012-05-04 13:32:34 +0100292 vin-supply = <&db8500_vape_reg>;
293 };
294
295 // DB8500_REGULATOR_SWITCH_B2R2_MCDE
296 db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
Laxman Dewanganda268482012-06-20 17:53:05 +0530297 regulator-compatible = "db8500_b2r2_mcde";
Lee Jonese5999f22012-05-04 13:32:34 +0100298 vin-supply = <&db8500_vape_reg>;
299 };
300
301 // DB8500_REGULATOR_SWITCH_ESRAM12
302 db8500_esram12_reg: db8500_esram12 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530303 regulator-compatible = "db8500_esram12";
Lee Jonese5999f22012-05-04 13:32:34 +0100304 };
305
306 // DB8500_REGULATOR_SWITCH_ESRAM12RET
307 db8500_esram12_ret_reg: db8500_esram12_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530308 regulator-compatible = "db8500_esram12_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100309 };
310
311 // DB8500_REGULATOR_SWITCH_ESRAM34
312 db8500_esram34_reg: db8500_esram34 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530313 regulator-compatible = "db8500_esram34";
Lee Jonese5999f22012-05-04 13:32:34 +0100314 };
315
316 // DB8500_REGULATOR_SWITCH_ESRAM34RET
317 db8500_esram34_ret_reg: db8500_esram34_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530318 regulator-compatible = "db8500_esram34_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100319 };
320 };
321
Lee Jones7e0ce272012-03-15 16:46:17 +0000322 ab8500@5 {
323 compatible = "stericsson,ab8500";
324 reg = <5>; /* mailbox 5 is i2c */
Lee Jones8d4c6d42012-08-03 20:37:35 +0100325 interrupt-parent = <&intc>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000326 interrupts = <0 40 0x4>;
Lee Jones732973c2012-05-29 10:49:33 +0800327 interrupt-controller;
328 #interrupt-cells = <2>;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800329
Lee Jonesd4b29ac2012-05-26 07:03:48 +0100330 ab8500-rtc {
331 compatible = "stericsson,ab8500-rtc";
332 interrupts = <17 0x4
333 18 0x4>;
334 interrupt-names = "60S", "ALARM";
335 };
336
Lee Jones4eda9122012-05-28 16:59:26 +0800337 ab8500-gpadc {
338 compatible = "stericsson,ab8500-gpadc";
Lee Jones732973c2012-05-29 10:49:33 +0800339 interrupts = <32 0x4
340 39 0x4>;
Lee Jones4eda9122012-05-28 16:59:26 +0800341 interrupt-names = "HW_CONV_END", "SW_CONV_END";
342 vddadc-supply = <&ab8500_ldo_tvout_reg>;
343 };
344
Rajanikanth H.Ve0f1abe2012-11-18 18:45:41 -0800345 ab8500_battery: ab8500_battery {
346 stericsson,battery-type = "LIPO";
347 thermistor-on-batctrl;
348 };
349
350 ab8500_fg {
351 compatible = "stericsson,ab8500-fg";
352 battery = <&ab8500_battery>;
353 };
354
Rajanikanth H.Vbd9e8ab2012-11-18 19:16:58 -0800355 ab8500_btemp {
356 compatible = "stericsson,ab8500-btemp";
357 battery = <&ab8500_battery>;
358 };
359
Rajanikanth H.V4aef72d2012-11-18 19:17:47 -0800360 ab8500_charger {
361 compatible = "stericsson,ab8500-charger";
362 battery = <&ab8500_battery>;
363 vddadc-supply = <&ab8500_ldo_tvout_reg>;
364 };
365
Rajanikanth H.Va12810a2012-10-31 15:40:33 +0000366 ab8500_chargalg {
367 compatible = "stericsson,ab8500-chargalg";
368 battery = <&ab8500_battery>;
369 };
370
Rajanikanth H.Ve0f1abe2012-11-18 18:45:41 -0800371 ab8500_usb {
Lee Jonesee189ce2012-05-03 14:40:24 +0100372 compatible = "stericsson,ab8500-usb";
Lee Jones732973c2012-05-29 10:49:33 +0800373 interrupts = < 90 0x4
374 96 0x4
375 14 0x4
376 15 0x4
377 79 0x4
378 74 0x4
379 75 0x4>;
Lee Jonesee189ce2012-05-03 14:40:24 +0100380 interrupt-names = "ID_WAKEUP_R",
381 "ID_WAKEUP_F",
382 "VBUS_DET_F",
383 "VBUS_DET_R",
384 "USB_LINK_STATUS",
385 "USB_ADP_PROBE_PLUG",
386 "USB_ADP_PROBE_UNPLUG";
387 vddulpivio18-supply = <&ab8500_ldo_initcore_reg>;
388 v-ape-supply = <&db8500_vape_reg>;
389 musb_1v8-supply = <&db8500_vsmps2_reg>;
390 };
391
Lee Jones12cb7bd2012-05-02 08:45:40 +0100392 ab8500-ponkey {
Lee Jones74630702012-08-09 13:00:12 +0100393 compatible = "stericsson,ab8500-poweron-key";
Lee Jones732973c2012-05-29 10:49:33 +0800394 interrupts = <6 0x4
395 7 0x4>;
Lee Jones12cb7bd2012-05-02 08:45:40 +0100396 interrupt-names = "ONKEY_DBF", "ONKEY_DBR";
397 };
398
Lee Jones401cd1b2012-05-03 12:53:55 +0100399 ab8500-sysctrl {
400 compatible = "stericsson,ab8500-sysctrl";
401 };
402
Lee Jones78451de2012-05-03 13:03:59 +0100403 ab8500-pwm {
404 compatible = "stericsson,ab8500-pwm";
405 };
406
Lee Jones215891e2012-05-01 16:11:19 +0100407 ab8500-debugfs {
408 compatible = "stericsson,ab8500-debug";
409 };
Lee Jones4a85c7f2012-05-29 14:29:53 +0800410
Lee Jones9c06af32012-07-25 12:50:13 +0100411 codec: ab8500-codec {
412 compatible = "stericsson,ab8500-codec";
413
414 stericsson,earpeice-cmv = <950>; /* Units in mV. */
415 };
416
Lee Jones4a85c7f2012-05-29 14:29:53 +0800417 ab8500-regulators {
418 compatible = "stericsson,ab8500-regulator";
419
420 // supplies to the display/camera
421 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530422 regulator-compatible = "ab8500_ldo_aux1";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800423 regulator-min-microvolt = <2500000>;
424 regulator-max-microvolt = <2900000>;
425 regulator-boot-on;
426 /* BUG: If turned off MMC will be affected. */
427 regulator-always-on;
428 };
429
430 // supplies to the on-board eMMC
431 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530432 regulator-compatible = "ab8500_ldo_aux2";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800433 regulator-min-microvolt = <1100000>;
434 regulator-max-microvolt = <3300000>;
435 };
436
437 // supply for VAUX3; SDcard slots
438 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530439 regulator-compatible = "ab8500_ldo_aux3";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800440 regulator-min-microvolt = <1100000>;
441 regulator-max-microvolt = <3300000>;
442 };
443
444 // supply for v-intcore12; VINTCORE12 LDO
445 ab8500_ldo_initcore_reg: ab8500_ldo_initcore {
Laxman Dewanganda268482012-06-20 17:53:05 +0530446 regulator-compatible = "ab8500_ldo_initcore";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800447 };
448
449 // supply for tvout; gpadc; TVOUT LDO
450 ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
Laxman Dewanganda268482012-06-20 17:53:05 +0530451 regulator-compatible = "ab8500_ldo_tvout";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800452 };
453
454 // supply for ab8500-usb; USB LDO
455 ab8500_ldo_usb_reg: ab8500_ldo_usb {
Laxman Dewanganda268482012-06-20 17:53:05 +0530456 regulator-compatible = "ab8500_ldo_usb";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800457 };
458
459 // supply for ab8500-vaudio; VAUDIO LDO
460 ab8500_ldo_audio_reg: ab8500_ldo_audio {
Laxman Dewanganda268482012-06-20 17:53:05 +0530461 regulator-compatible = "ab8500_ldo_audio";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800462 };
463
464 // supply for v-anamic1 VAMic1-LDO
465 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530466 regulator-compatible = "ab8500_ldo_anamic1";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800467 };
468
469 // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1
470 ab8500_ldo_amamic2_reg: ab8500_ldo_amamic2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530471 regulator-compatible = "ab8500_ldo_amamic2";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800472 };
473
474 // supply for v-dmic; VDMIC LDO
475 ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
Laxman Dewanganda268482012-06-20 17:53:05 +0530476 regulator-compatible = "ab8500_ldo_dmic";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800477 };
478
479 // supply for U8500 CSI/DSI; VANA LDO
480 ab8500_ldo_ana_reg: ab8500_ldo_ana {
Laxman Dewanganda268482012-06-20 17:53:05 +0530481 regulator-compatible = "ab8500_ldo_ana";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800482 };
483 };
Lee Jones7e0ce272012-03-15 16:46:17 +0000484 };
485 };
486
487 i2c@80004000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100488 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000489 reg = <0x80004000 0x1000>;
490 interrupts = <0 21 0x4>;
Lee Jones35b33d22012-10-24 11:07:02 +0100491 arm,primecell-periphid = <0x180024>;
492
Lee Jones7e0ce272012-03-15 16:46:17 +0000493 #address-cells = <1>;
494 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100495 v-i2c-supply = <&db8500_vape_reg>;
496
497 clock-frequency = <400000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000498 };
499
500 i2c@80122000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100501 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000502 reg = <0x80122000 0x1000>;
503 interrupts = <0 22 0x4>;
Lee Jones35b33d22012-10-24 11:07:02 +0100504 arm,primecell-periphid = <0x180024>;
505
Lee Jones7e0ce272012-03-15 16:46:17 +0000506 #address-cells = <1>;
507 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100508 v-i2c-supply = <&db8500_vape_reg>;
509
510 clock-frequency = <400000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000511 };
512
513 i2c@80128000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100514 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000515 reg = <0x80128000 0x1000>;
516 interrupts = <0 55 0x4>;
Lee Jones35b33d22012-10-24 11:07:02 +0100517 arm,primecell-periphid = <0x180024>;
518
Lee Jones7e0ce272012-03-15 16:46:17 +0000519 #address-cells = <1>;
520 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100521 v-i2c-supply = <&db8500_vape_reg>;
522
523 clock-frequency = <400000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000524 };
525
526 i2c@80110000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100527 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000528 reg = <0x80110000 0x1000>;
529 interrupts = <0 12 0x4>;
Lee Jones35b33d22012-10-24 11:07:02 +0100530 arm,primecell-periphid = <0x180024>;
531
Lee Jones7e0ce272012-03-15 16:46:17 +0000532 #address-cells = <1>;
533 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100534 v-i2c-supply = <&db8500_vape_reg>;
535
536 clock-frequency = <400000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000537 };
538
539 i2c@8012a000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100540 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000541 reg = <0x8012a000 0x1000>;
542 interrupts = <0 51 0x4>;
Lee Jones35b33d22012-10-24 11:07:02 +0100543 arm,primecell-periphid = <0x180024>;
544
Lee Jones7e0ce272012-03-15 16:46:17 +0000545 #address-cells = <1>;
546 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100547 v-i2c-supply = <&db8500_vape_reg>;
548
549 clock-frequency = <400000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000550 };
551
552 ssp@80002000 {
553 compatible = "arm,pl022", "arm,primecell";
Lee Jonesc164fa62012-09-07 12:09:34 +0100554 reg = <0x80002000 0x1000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000555 interrupts = <0 14 0x4>;
556 #address-cells = <1>;
557 #size-cells = <0>;
558 status = "disabled";
Lee Jones15daf692012-03-15 16:47:11 +0000559
560 // Add one of these for each child device
Lee Jones93b56982012-05-29 14:17:36 +0800561 cs-gpios = <&gpio0 31 0x4 &gpio4 14 0x4 &gpio4 16 0x4
562 &gpio6 22 0x4 &gpio7 0 0x4>;
Lee Jones15daf692012-03-15 16:47:11 +0000563
Lee Jones7e0ce272012-03-15 16:46:17 +0000564 };
565
566 uart@80120000 {
567 compatible = "arm,pl011", "arm,primecell";
568 reg = <0x80120000 0x1000>;
569 interrupts = <0 11 0x4>;
570 status = "disabled";
571 };
572 uart@80121000 {
573 compatible = "arm,pl011", "arm,primecell";
574 reg = <0x80121000 0x1000>;
575 interrupts = <0 19 0x4>;
576 status = "disabled";
577 };
578 uart@80007000 {
579 compatible = "arm,pl011", "arm,primecell";
580 reg = <0x80007000 0x1000>;
581 interrupts = <0 26 0x4>;
582 status = "disabled";
583 };
584
Lee Jones81bf8c22012-09-26 12:55:56 +0100585 sdi0_per1@80126000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000586 compatible = "arm,pl18x", "arm,primecell";
587 reg = <0x80126000 0x1000>;
588 interrupts = <0 60 0x4>;
589 status = "disabled";
590 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100591
Lee Jones81bf8c22012-09-26 12:55:56 +0100592 sdi1_per2@80118000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000593 compatible = "arm,pl18x", "arm,primecell";
594 reg = <0x80118000 0x1000>;
595 interrupts = <0 50 0x4>;
596 status = "disabled";
597 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100598
Lee Jones81bf8c22012-09-26 12:55:56 +0100599 sdi2_per3@80005000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000600 compatible = "arm,pl18x", "arm,primecell";
601 reg = <0x80005000 0x1000>;
602 interrupts = <0 41 0x4>;
603 status = "disabled";
604 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100605
Lee Jones81bf8c22012-09-26 12:55:56 +0100606 sdi3_per2@80119000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000607 compatible = "arm,pl18x", "arm,primecell";
608 reg = <0x80119000 0x1000>;
609 interrupts = <0 59 0x4>;
610 status = "disabled";
611 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100612
Lee Jones81bf8c22012-09-26 12:55:56 +0100613 sdi4_per2@80114000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000614 compatible = "arm,pl18x", "arm,primecell";
615 reg = <0x80114000 0x1000>;
616 interrupts = <0 99 0x4>;
617 status = "disabled";
618 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100619
Lee Jones81bf8c22012-09-26 12:55:56 +0100620 sdi5_per3@80008000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000621 compatible = "arm,pl18x", "arm,primecell";
Lee Jones76ff4e42012-10-24 11:10:05 +0100622 reg = <0x80008000 0x1000>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000623 interrupts = <0 100 0x4>;
624 status = "disabled";
625 };
Lee Jonesbf76e062012-04-24 10:53:18 +0100626
Lee Jonesfe164522012-07-31 12:37:16 +0100627 msp0: msp@80123000 {
628 compatible = "stericsson,ux500-msp-i2s";
629 reg = <0x80123000 0x1000>;
630 interrupts = <0 31 0x4>;
631 v-ape-supply = <&db8500_vape_reg>;
632 status = "disabled";
633 };
634
635 msp1: msp@80124000 {
636 compatible = "stericsson,ux500-msp-i2s";
637 reg = <0x80124000 0x1000>;
638 interrupts = <0 62 0x4>;
639 v-ape-supply = <&db8500_vape_reg>;
640 status = "disabled";
641 };
642
643 // HDMI sound
644 msp2: msp@80117000 {
645 compatible = "stericsson,ux500-msp-i2s";
646 reg = <0x80117000 0x1000>;
647 interrupts = <0 98 0x4>;
648 v-ape-supply = <&db8500_vape_reg>;
649 status = "disabled";
650 };
651
652 msp3: msp@80125000 {
653 compatible = "stericsson,ux500-msp-i2s";
654 reg = <0x80125000 0x1000>;
655 interrupts = <0 62 0x4>;
656 v-ape-supply = <&db8500_vape_reg>;
657 status = "disabled";
658 };
659
Lee Jonesbf76e062012-04-24 10:53:18 +0100660 external-bus@50000000 {
661 compatible = "simple-bus";
662 reg = <0x50000000 0x4000000>;
663 #address-cells = <1>;
664 #size-cells = <1>;
665 ranges = <0 0x50000000 0x4000000>;
666 status = "disabled";
667 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800668
669 cpufreq-cooling {
670 compatible = "stericsson,db8500-cpufreq-cooling";
671 status = "disabled";
672 };
673
Lee Jones0563f632012-10-24 11:18:14 +0100674 vmmci: regulator-gpio {
675 compatible = "regulator-gpio";
676
677 regulator-min-microvolt = <1800000>;
Lee Jones4f902b42012-12-06 14:00:01 +0000678 regulator-max-microvolt = <2900000>;
Lee Jones0563f632012-10-24 11:18:14 +0100679 regulator-name = "mmci-reg";
680 regulator-type = "voltage";
681
Lee Jones874c9202012-12-07 13:46:01 +0000682 startup-delay-us = <100>;
Lee Jonese7bda302012-12-06 15:00:46 +0000683 enable-active-high;
684
Lee Jones0563f632012-10-24 11:18:14 +0100685 states = <1800000 0x1
686 2900000 0x0>;
Lee Jonesc94a4ab2012-11-15 13:02:16 +0000687
688 status = "disabled";
Lee Jones0563f632012-10-24 11:18:14 +0100689 };
Arnd Bergmann5d0769f2012-03-02 23:07:21 +0000690 };
691};