2 * Copyright 2012 Linaro Ltd
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:
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
12 /include/ "skeleton.dtsi"
18 compatible = "stericsson,db8500";
19 interrupt-parent = <&intc>;
22 intc: interrupt-controller@a0411000 {
23 compatible = "arm,cortex-a9-gic";
24 #interrupt-cells = <3>;
27 reg = <0xa0411000 0x1000>,
32 compatible = "arm,pl310-cache";
33 reg = <0xa0412000 0x1000>;
34 interrupts = <0 13 4>;
40 compatible = "arm,cortex-a9-pmu";
41 interrupts = <0 7 0x4>;
45 compatible = "arm,cortex-a9-twd-timer";
46 reg = <0xa0410600 0x20>;
47 interrupts = <1 13 0x304>;
51 compatible = "arm,rtc-pl031", "arm,primecell";
52 reg = <0x80154000 0x1000>;
53 interrupts = <0 18 0x4>;
56 gpio0: gpio@8012e000 {
57 compatible = "stericsson,db8500-gpio",
59 reg = <0x8012e000 0x80>;
60 interrupts = <0 119 0x4>;
62 #interrupt-cells = <2>;
63 st,supports-sleepmode;
69 gpio1: gpio@8012e080 {
70 compatible = "stericsson,db8500-gpio",
72 reg = <0x8012e080 0x80>;
73 interrupts = <0 120 0x4>;
75 #interrupt-cells = <2>;
76 st,supports-sleepmode;
82 gpio2: gpio@8000e000 {
83 compatible = "stericsson,db8500-gpio",
85 reg = <0x8000e000 0x80>;
86 interrupts = <0 121 0x4>;
88 #interrupt-cells = <2>;
89 st,supports-sleepmode;
95 gpio3: gpio@8000e080 {
96 compatible = "stericsson,db8500-gpio",
98 reg = <0x8000e080 0x80>;
99 interrupts = <0 122 0x4>;
100 interrupt-controller;
101 #interrupt-cells = <2>;
102 st,supports-sleepmode;
108 gpio4: gpio@8000e100 {
109 compatible = "stericsson,db8500-gpio",
111 reg = <0x8000e100 0x80>;
112 interrupts = <0 123 0x4>;
113 interrupt-controller;
114 #interrupt-cells = <2>;
115 st,supports-sleepmode;
121 gpio5: gpio@8000e180 {
122 compatible = "stericsson,db8500-gpio",
124 reg = <0x8000e180 0x80>;
125 interrupts = <0 124 0x4>;
126 interrupt-controller;
127 #interrupt-cells = <2>;
128 st,supports-sleepmode;
134 gpio6: gpio@8011e000 {
135 compatible = "stericsson,db8500-gpio",
137 reg = <0x8011e000 0x80>;
138 interrupts = <0 125 0x4>;
139 interrupt-controller;
140 #interrupt-cells = <2>;
141 st,supports-sleepmode;
147 gpio7: gpio@8011e080 {
148 compatible = "stericsson,db8500-gpio",
150 reg = <0x8011e080 0x80>;
151 interrupts = <0 126 0x4>;
152 interrupt-controller;
153 #interrupt-cells = <2>;
154 st,supports-sleepmode;
160 gpio8: gpio@a03fe000 {
161 compatible = "stericsson,db8500-gpio",
163 reg = <0xa03fe000 0x80>;
164 interrupts = <0 127 0x4>;
165 interrupt-controller;
166 #interrupt-cells = <2>;
167 st,supports-sleepmode;
174 compatible = "stericsson,nmk_pinctrl";
178 compatible = "stericsson,db8500-musb",
180 reg = <0xa03e0000 0x10000>;
181 interrupts = <0 23 0x4>;
184 dma-controller@801C0000 {
185 compatible = "stericsson,db8500-dma40",
187 reg = <0x801C0000 0x1000 0x40010000 0x800>;
188 interrupts = <0 25 0x4>;
192 compatible = "stericsson,db8500-prcmu";
193 reg = <0x80157000 0x1000>;
194 interrupts = <0 47 0x4>;
195 #address-cells = <1>;
199 prcmu-timer-4@80157450 {
200 compatible = "stericsson,db8500-prcmu-timer-4";
201 reg = <0x80157450 0xC>;
204 db8500-prcmu-regulators {
205 compatible = "stericsson,db8500-prcmu-regulator";
207 // DB8500_REGULATOR_VAPE
208 db8500_vape_reg: db8500_vape {
209 regulator-name = "db8500-vape";
213 // DB8500_REGULATOR_VARM
214 db8500_varm_reg: db8500_varm {
215 regulator-name = "db8500-varm";
218 // DB8500_REGULATOR_VMODEM
219 db8500_vmodem_reg: db8500_vmodem {
220 regulator-name = "db8500-vmodem";
223 // DB8500_REGULATOR_VPLL
224 db8500_vpll_reg: db8500_vpll {
225 regulator-name = "db8500-vpll";
228 // DB8500_REGULATOR_VSMPS1
229 db8500_vsmps1_reg: db8500_vsmps1 {
230 regulator-name = "db8500-vsmps1";
233 // DB8500_REGULATOR_VSMPS2
234 db8500_vsmps2_reg: db8500_vsmps2 {
235 regulator-name = "db8500-vsmps2";
238 // DB8500_REGULATOR_VSMPS3
239 db8500_vsmps3_reg: db8500_vsmps3 {
240 regulator-name = "db8500-vsmps3";
243 // DB8500_REGULATOR_VRF1
244 db8500_vrf1_reg: db8500_vrf1 {
245 regulator-name = "db8500-vrf1";
248 // DB8500_REGULATOR_SWITCH_SVAMMDSP
249 db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
250 regulator-name = "db8500-sva-mmdsp";
253 // DB8500_REGULATOR_SWITCH_SVAMMDSPRET
254 db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
255 regulator-name = "db8500-sva-mmdsp-ret";
258 // DB8500_REGULATOR_SWITCH_SVAPIPE
259 db8500_sva_pipe_reg: db8500_sva_pipe {
260 regulator-name = "db8500_sva_pipe";
263 // DB8500_REGULATOR_SWITCH_SIAMMDSP
264 db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
265 regulator-name = "db8500_sia_mmdsp";
268 // DB8500_REGULATOR_SWITCH_SIAMMDSPRET
269 db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
270 regulator-name = "db8500-sia-mmdsp-ret";
273 // DB8500_REGULATOR_SWITCH_SIAPIPE
274 db8500_sia_pipe_reg: db8500_sia_pipe {
275 regulator-name = "db8500-sia-pipe";
278 // DB8500_REGULATOR_SWITCH_SGA
279 db8500_sga_reg: db8500_sga {
280 regulator-name = "db8500-sga";
281 vin-supply = <&db8500_vape_reg>;
284 // DB8500_REGULATOR_SWITCH_B2R2_MCDE
285 db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
286 regulator-name = "db8500-b2r2-mcde";
287 vin-supply = <&db8500_vape_reg>;
290 // DB8500_REGULATOR_SWITCH_ESRAM12
291 db8500_esram12_reg: db8500_esram12 {
292 regulator-name = "db8500-esram12";
295 // DB8500_REGULATOR_SWITCH_ESRAM12RET
296 db8500_esram12_ret_reg: db8500_esram12_ret {
297 regulator-name = "db8500-esram12-ret";
300 // DB8500_REGULATOR_SWITCH_ESRAM34
301 db8500_esram34_reg: db8500_esram34 {
302 regulator-name = "db8500-esram34";
305 // DB8500_REGULATOR_SWITCH_ESRAM34RET
306 db8500_esram34_ret_reg: db8500_esram34_ret {
307 regulator-name = "db8500-esram34-ret";
312 compatible = "stericsson,ab8500";
313 reg = <5>; /* mailbox 5 is i2c */
314 interrupts = <0 40 0x4>;
315 interrupt-controller;
316 #interrupt-cells = <2>;
319 compatible = "stericsson,ab8500-rtc";
322 interrupt-names = "60S", "ALARM";
326 compatible = "stericsson,ab8500-gpadc";
329 interrupt-names = "HW_CONV_END", "SW_CONV_END";
330 vddadc-supply = <&ab8500_ldo_tvout_reg>;
334 compatible = "stericsson,ab8500-usb";
335 interrupts = < 90 0x4
342 interrupt-names = "ID_WAKEUP_R",
347 "USB_ADP_PROBE_PLUG",
348 "USB_ADP_PROBE_UNPLUG";
349 vddulpivio18-supply = <&ab8500_ldo_initcore_reg>;
350 v-ape-supply = <&db8500_vape_reg>;
351 musb_1v8-supply = <&db8500_vsmps2_reg>;
355 compatible = "stericsson,ab8500-ponkey";
358 interrupt-names = "ONKEY_DBF", "ONKEY_DBR";
362 compatible = "stericsson,ab8500-sysctrl";
366 compatible = "stericsson,ab8500-pwm";
370 compatible = "stericsson,ab8500-debug";
374 compatible = "stericsson,ab8500-regulator";
376 // supplies to the display/camera
377 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
378 regulator-name = "V-DISPLAY";
379 regulator-min-microvolt = <2500000>;
380 regulator-max-microvolt = <2900000>;
382 /* BUG: If turned off MMC will be affected. */
386 // supplies to the on-board eMMC
387 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
388 regulator-name = "V-eMMC1";
389 regulator-min-microvolt = <1100000>;
390 regulator-max-microvolt = <3300000>;
393 // supply for VAUX3; SDcard slots
394 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
395 regulator-name = "V-MMC-SD";
396 regulator-min-microvolt = <1100000>;
397 regulator-max-microvolt = <3300000>;
400 // supply for v-intcore12; VINTCORE12 LDO
401 ab8500_ldo_initcore_reg: ab8500_ldo_initcore {
402 regulator-name = "V-INTCORE";
405 // supply for tvout; gpadc; TVOUT LDO
406 ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
407 regulator-name = "V-TVOUT";
410 // supply for ab8500-usb; USB LDO
411 ab8500_ldo_usb_reg: ab8500_ldo_usb {
412 regulator-name = "dummy";
415 // supply for ab8500-vaudio; VAUDIO LDO
416 ab8500_ldo_audio_reg: ab8500_ldo_audio {
417 regulator-name = "V-AUD";
420 // supply for v-anamic1 VAMic1-LDO
421 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
422 regulator-name = "V-AMIC1";
425 // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1
426 ab8500_ldo_amamic2_reg: ab8500_ldo_amamic2 {
427 regulator-name = "V-AMIC2";
430 // supply for v-dmic; VDMIC LDO
431 ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
432 regulator-name = "V-DMIC";
435 // supply for U8500 CSI/DSI; VANA LDO
436 ab8500_ldo_ana_reg: ab8500_ldo_ana {
437 regulator-name = "V-CSI/DSI";
444 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c";
445 reg = <0x80004000 0x1000>;
446 interrupts = <0 21 0x4>;
447 #address-cells = <1>;
452 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c";
453 reg = <0x80122000 0x1000>;
454 interrupts = <0 22 0x4>;
455 #address-cells = <1>;
460 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c";
461 reg = <0x80128000 0x1000>;
462 interrupts = <0 55 0x4>;
463 #address-cells = <1>;
468 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c";
469 reg = <0x80110000 0x1000>;
470 interrupts = <0 12 0x4>;
471 #address-cells = <1>;
476 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c";
477 reg = <0x8012a000 0x1000>;
478 interrupts = <0 51 0x4>;
479 #address-cells = <1>;
484 compatible = "arm,pl022", "arm,primecell";
485 reg = <80002000 0x1000>;
486 interrupts = <0 14 0x4>;
487 #address-cells = <1>;
491 // Add one of these for each child device
492 cs-gpios = <&gpio0 31 0x4 &gpio4 14 0x4 &gpio4 16 0x4
493 &gpio6 22 0x4 &gpio7 0 0x4>;
498 compatible = "arm,pl011", "arm,primecell";
499 reg = <0x80120000 0x1000>;
500 interrupts = <0 11 0x4>;
504 compatible = "arm,pl011", "arm,primecell";
505 reg = <0x80121000 0x1000>;
506 interrupts = <0 19 0x4>;
510 compatible = "arm,pl011", "arm,primecell";
511 reg = <0x80007000 0x1000>;
512 interrupts = <0 26 0x4>;
517 compatible = "arm,pl18x", "arm,primecell";
518 reg = <0x80126000 0x1000>;
519 interrupts = <0 60 0x4>;
523 compatible = "arm,pl18x", "arm,primecell";
524 reg = <0x80118000 0x1000>;
525 interrupts = <0 50 0x4>;
529 compatible = "arm,pl18x", "arm,primecell";
530 reg = <0x80005000 0x1000>;
531 interrupts = <0 41 0x4>;
535 compatible = "arm,pl18x", "arm,primecell";
536 reg = <0x80119000 0x1000>;
537 interrupts = <0 59 0x4>;
541 compatible = "arm,pl18x", "arm,primecell";
542 reg = <0x80114000 0x1000>;
543 interrupts = <0 99 0x4>;
547 compatible = "arm,pl18x", "arm,primecell";
548 reg = <0x80114000 0x1000>;
549 interrupts = <0 100 0x4>;
553 external-bus@50000000 {
554 compatible = "simple-bus";
555 reg = <0x50000000 0x4000000>;
556 #address-cells = <1>;
558 ranges = <0 0x50000000 0x4000000>;