]>
Commit | Line | Data |
---|---|---|
5d0769f0 AB |
1 | /* |
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 | ||
90c40257 | 12 | #include <dt-bindings/interrupt-controller/irq.h> |
807e8838 | 13 | #include "skeleton.dtsi" |
5d0769f0 AB |
14 | |
15 | / { | |
b1ba1439 | 16 | soc { |
5d0769f0 AB |
17 | #address-cells = <1>; |
18 | #size-cells = <1>; | |
7e0ce270 | 19 | compatible = "stericsson,db8500"; |
dab6487e | 20 | interrupt-parent = <&intc>; |
5d0769f0 | 21 | ranges; |
7e0ce270 | 22 | |
dab6487e LJ |
23 | intc: interrupt-controller@a0411000 { |
24 | compatible = "arm,cortex-a9-gic"; | |
25 | #interrupt-cells = <3>; | |
26 | #address-cells = <1>; | |
27 | interrupt-controller; | |
dab6487e LJ |
28 | reg = <0xa0411000 0x1000>, |
29 | <0xa0410100 0x100>; | |
30 | }; | |
31 | ||
f1949ea0 LJ |
32 | L2: l2-cache { |
33 | compatible = "arm,pl310-cache"; | |
34 | reg = <0xa0412000 0x1000>; | |
90c40257 | 35 | interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>; |
f1949ea0 LJ |
36 | cache-unified; |
37 | cache-level = <2>; | |
38 | }; | |
39 | ||
7e0ce270 LJ |
40 | pmu { |
41 | compatible = "arm,cortex-a9-pmu"; | |
90c40257 | 42 | interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>; |
7e0ce270 LJ |
43 | }; |
44 | ||
71de5c46 LJ |
45 | timer@a0410600 { |
46 | compatible = "arm,cortex-a9-twd-timer"; | |
47 | reg = <0xa0410600 0x20>; | |
90c40257 | 48 | interrupts = <1 13 0x304>; /* IRQ level high per-CPU */ |
71de5c46 LJ |
49 | }; |
50 | ||
7e0ce270 | 51 | rtc@80154000 { |
ddb3b99c | 52 | compatible = "arm,rtc-pl031", "arm,primecell"; |
7e0ce270 | 53 | reg = <0x80154000 0x1000>; |
90c40257 | 54 | interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>; |
7e0ce270 LJ |
55 | }; |
56 | ||
57 | gpio0: gpio@8012e000 { | |
58 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 59 | "st,nomadik-gpio"; |
7e0ce270 | 60 | reg = <0x8012e000 0x80>; |
90c40257 | 61 | interrupts = <0 119 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
62 | interrupt-controller; |
63 | #interrupt-cells = <2>; | |
61be4981 | 64 | st,supports-sleepmode; |
7e0ce270 | 65 | gpio-controller; |
c0b133bd LJ |
66 | #gpio-cells = <2>; |
67 | gpio-bank = <0>; | |
7e0ce270 LJ |
68 | }; |
69 | ||
70 | gpio1: gpio@8012e080 { | |
71 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 72 | "st,nomadik-gpio"; |
7e0ce270 | 73 | reg = <0x8012e080 0x80>; |
90c40257 | 74 | interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
75 | interrupt-controller; |
76 | #interrupt-cells = <2>; | |
61be4981 | 77 | st,supports-sleepmode; |
7e0ce270 | 78 | gpio-controller; |
c0b133bd LJ |
79 | #gpio-cells = <2>; |
80 | gpio-bank = <1>; | |
7e0ce270 LJ |
81 | }; |
82 | ||
83 | gpio2: gpio@8000e000 { | |
84 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 85 | "st,nomadik-gpio"; |
7e0ce270 | 86 | reg = <0x8000e000 0x80>; |
90c40257 | 87 | interrupts = <0 121 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
88 | interrupt-controller; |
89 | #interrupt-cells = <2>; | |
61be4981 | 90 | st,supports-sleepmode; |
7e0ce270 | 91 | gpio-controller; |
c0b133bd LJ |
92 | #gpio-cells = <2>; |
93 | gpio-bank = <2>; | |
7e0ce270 LJ |
94 | }; |
95 | ||
96 | gpio3: gpio@8000e080 { | |
97 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 98 | "st,nomadik-gpio"; |
7e0ce270 | 99 | reg = <0x8000e080 0x80>; |
90c40257 | 100 | interrupts = <0 122 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
101 | interrupt-controller; |
102 | #interrupt-cells = <2>; | |
61be4981 | 103 | st,supports-sleepmode; |
7e0ce270 | 104 | gpio-controller; |
c0b133bd LJ |
105 | #gpio-cells = <2>; |
106 | gpio-bank = <3>; | |
7e0ce270 LJ |
107 | }; |
108 | ||
109 | gpio4: gpio@8000e100 { | |
110 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 111 | "st,nomadik-gpio"; |
7e0ce270 | 112 | reg = <0x8000e100 0x80>; |
90c40257 | 113 | interrupts = <0 123 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
114 | interrupt-controller; |
115 | #interrupt-cells = <2>; | |
61be4981 | 116 | st,supports-sleepmode; |
7e0ce270 | 117 | gpio-controller; |
c0b133bd LJ |
118 | #gpio-cells = <2>; |
119 | gpio-bank = <4>; | |
7e0ce270 LJ |
120 | }; |
121 | ||
122 | gpio5: gpio@8000e180 { | |
123 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 124 | "st,nomadik-gpio"; |
7e0ce270 | 125 | reg = <0x8000e180 0x80>; |
90c40257 | 126 | interrupts = <0 124 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
127 | interrupt-controller; |
128 | #interrupt-cells = <2>; | |
61be4981 | 129 | st,supports-sleepmode; |
7e0ce270 | 130 | gpio-controller; |
c0b133bd LJ |
131 | #gpio-cells = <2>; |
132 | gpio-bank = <5>; | |
7e0ce270 LJ |
133 | }; |
134 | ||
135 | gpio6: gpio@8011e000 { | |
136 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 137 | "st,nomadik-gpio"; |
7e0ce270 | 138 | reg = <0x8011e000 0x80>; |
90c40257 | 139 | interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
140 | interrupt-controller; |
141 | #interrupt-cells = <2>; | |
61be4981 | 142 | st,supports-sleepmode; |
7e0ce270 | 143 | gpio-controller; |
c0b133bd LJ |
144 | #gpio-cells = <2>; |
145 | gpio-bank = <6>; | |
7e0ce270 LJ |
146 | }; |
147 | ||
148 | gpio7: gpio@8011e080 { | |
149 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 150 | "st,nomadik-gpio"; |
7e0ce270 | 151 | reg = <0x8011e080 0x80>; |
90c40257 | 152 | interrupts = <0 126 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
153 | interrupt-controller; |
154 | #interrupt-cells = <2>; | |
61be4981 | 155 | st,supports-sleepmode; |
7e0ce270 | 156 | gpio-controller; |
c0b133bd LJ |
157 | #gpio-cells = <2>; |
158 | gpio-bank = <7>; | |
7e0ce270 LJ |
159 | }; |
160 | ||
161 | gpio8: gpio@a03fe000 { | |
162 | compatible = "stericsson,db8500-gpio", | |
fd9a80b2 | 163 | "st,nomadik-gpio"; |
7e0ce270 | 164 | reg = <0xa03fe000 0x80>; |
90c40257 | 165 | interrupts = <0 127 IRQ_TYPE_LEVEL_HIGH>; |
93b5698a LJ |
166 | interrupt-controller; |
167 | #interrupt-cells = <2>; | |
61be4981 | 168 | st,supports-sleepmode; |
7e0ce270 | 169 | gpio-controller; |
c0b133bd LJ |
170 | #gpio-cells = <2>; |
171 | gpio-bank = <8>; | |
7e0ce270 LJ |
172 | }; |
173 | ||
8979cfef | 174 | pinctrl { |
818d99a9 | 175 | compatible = "stericsson,db8500-pinctrl"; |
8979cfef | 176 | prcm = <&prcmu>; |
5910de9e LJ |
177 | }; |
178 | ||
b32dc865 | 179 | usb_per5@a03e0000 { |
4a6cd43f | 180 | compatible = "stericsson,db8500-musb"; |
7e0ce270 | 181 | reg = <0xa03e0000 0x10000>; |
90c40257 | 182 | interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>; |
b32dc865 LJ |
183 | interrupt-names = "mc"; |
184 | ||
185 | dr_mode = "otg"; | |
186 | ||
187 | dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */ | |
188 | <&dma 38 0 0x0>, /* Logical - MemToDev */ | |
189 | <&dma 37 0 0x2>, /* Logical - DevToMem */ | |
190 | <&dma 37 0 0x0>, /* Logical - MemToDev */ | |
191 | <&dma 36 0 0x2>, /* Logical - DevToMem */ | |
192 | <&dma 36 0 0x0>, /* Logical - MemToDev */ | |
193 | <&dma 19 0 0x2>, /* Logical - DevToMem */ | |
194 | <&dma 19 0 0x0>, /* Logical - MemToDev */ | |
195 | <&dma 18 0 0x2>, /* Logical - DevToMem */ | |
196 | <&dma 18 0 0x0>, /* Logical - MemToDev */ | |
197 | <&dma 17 0 0x2>, /* Logical - DevToMem */ | |
198 | <&dma 17 0 0x0>, /* Logical - MemToDev */ | |
199 | <&dma 16 0 0x2>, /* Logical - DevToMem */ | |
200 | <&dma 16 0 0x0>, /* Logical - MemToDev */ | |
201 | <&dma 39 0 0x2>, /* Logical - DevToMem */ | |
202 | <&dma 39 0 0x0>; /* Logical - MemToDev */ | |
203 | ||
204 | dma-names = "iep_1_9", "oep_1_9", | |
205 | "iep_2_10", "oep_2_10", | |
206 | "iep_3_11", "oep_3_11", | |
207 | "iep_4_12", "oep_4_12", | |
208 | "iep_5_13", "oep_5_13", | |
209 | "iep_6_14", "oep_6_14", | |
210 | "iep_7_15", "oep_7_15", | |
211 | "iep_8", "oep_8"; | |
7e0ce270 LJ |
212 | }; |
213 | ||
ba074aec LJ |
214 | dma: dma-controller@801C0000 { |
215 | compatible = "stericsson,db8500-dma40", "stericsson,dma40"; | |
7e0ce270 | 216 | reg = <0x801C0000 0x1000 0x40010000 0x800>; |
70d39a8d | 217 | reg-names = "base", "lcpa"; |
90c40257 | 218 | interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>; |
ba074aec LJ |
219 | |
220 | #dma-cells = <3>; | |
d37fcdb6 | 221 | memcpy-channels = <56 57 58 59 60>; |
7e0ce270 LJ |
222 | }; |
223 | ||
8979cfef | 224 | prcmu: prcmu@80157000 { |
7e0ce270 | 225 | compatible = "stericsson,db8500-prcmu"; |
4d26aa30 | 226 | reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x1000>; |
e73081d9 | 227 | reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm"; |
90c40257 | 228 | interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>; |
7e0ce270 | 229 | #address-cells = <1>; |
3de3d749 | 230 | #size-cells = <1>; |
c09090bb LJ |
231 | interrupt-controller; |
232 | #interrupt-cells = <2>; | |
3de3d749 LJ |
233 | ranges; |
234 | ||
ccf74f76 | 235 | prcmu-timer-4@80157450 { |
3de3d749 LJ |
236 | compatible = "stericsson,db8500-prcmu-timer-4"; |
237 | reg = <0x80157450 0xC>; | |
238 | }; | |
7e0ce270 | 239 | |
dc1956b5 | 240 | thermal@801573c0 { |
241 | compatible = "stericsson,db8500-thermal"; | |
242 | reg = <0x801573c0 0x40>; | |
90c40257 LW |
243 | interrupts = <21 IRQ_TYPE_LEVEL_HIGH>, |
244 | <22 IRQ_TYPE_LEVEL_HIGH>; | |
dc1956b5 | 245 | interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH"; |
246 | status = "disabled"; | |
1d3f99f5 | 247 | }; |
dc1956b5 | 248 | |
e5999f28 LJ |
249 | db8500-prcmu-regulators { |
250 | compatible = "stericsson,db8500-prcmu-regulator"; | |
251 | ||
252 | // DB8500_REGULATOR_VAPE | |
253 | db8500_vape_reg: db8500_vape { | |
da26848a | 254 | regulator-compatible = "db8500_vape"; |
e5999f28 LJ |
255 | regulator-always-on; |
256 | }; | |
257 | ||
258 | // DB8500_REGULATOR_VARM | |
259 | db8500_varm_reg: db8500_varm { | |
da26848a | 260 | regulator-compatible = "db8500_varm"; |
e5999f28 LJ |
261 | }; |
262 | ||
263 | // DB8500_REGULATOR_VMODEM | |
264 | db8500_vmodem_reg: db8500_vmodem { | |
da26848a | 265 | regulator-compatible = "db8500_vmodem"; |
e5999f28 LJ |
266 | }; |
267 | ||
268 | // DB8500_REGULATOR_VPLL | |
269 | db8500_vpll_reg: db8500_vpll { | |
da26848a | 270 | regulator-compatible = "db8500_vpll"; |
e5999f28 LJ |
271 | }; |
272 | ||
273 | // DB8500_REGULATOR_VSMPS1 | |
274 | db8500_vsmps1_reg: db8500_vsmps1 { | |
da26848a | 275 | regulator-compatible = "db8500_vsmps1"; |
e5999f28 LJ |
276 | }; |
277 | ||
278 | // DB8500_REGULATOR_VSMPS2 | |
279 | db8500_vsmps2_reg: db8500_vsmps2 { | |
da26848a | 280 | regulator-compatible = "db8500_vsmps2"; |
e5999f28 LJ |
281 | }; |
282 | ||
283 | // DB8500_REGULATOR_VSMPS3 | |
284 | db8500_vsmps3_reg: db8500_vsmps3 { | |
da26848a | 285 | regulator-compatible = "db8500_vsmps3"; |
e5999f28 LJ |
286 | }; |
287 | ||
288 | // DB8500_REGULATOR_VRF1 | |
289 | db8500_vrf1_reg: db8500_vrf1 { | |
da26848a | 290 | regulator-compatible = "db8500_vrf1"; |
e5999f28 LJ |
291 | }; |
292 | ||
293 | // DB8500_REGULATOR_SWITCH_SVAMMDSP | |
294 | db8500_sva_mmdsp_reg: db8500_sva_mmdsp { | |
da26848a | 295 | regulator-compatible = "db8500_sva_mmdsp"; |
e5999f28 LJ |
296 | }; |
297 | ||
298 | // DB8500_REGULATOR_SWITCH_SVAMMDSPRET | |
299 | db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret { | |
da26848a | 300 | regulator-compatible = "db8500_sva_mmdsp_ret"; |
e5999f28 LJ |
301 | }; |
302 | ||
303 | // DB8500_REGULATOR_SWITCH_SVAPIPE | |
304 | db8500_sva_pipe_reg: db8500_sva_pipe { | |
da26848a | 305 | regulator-compatible = "db8500_sva_pipe"; |
e5999f28 LJ |
306 | }; |
307 | ||
308 | // DB8500_REGULATOR_SWITCH_SIAMMDSP | |
309 | db8500_sia_mmdsp_reg: db8500_sia_mmdsp { | |
da26848a | 310 | regulator-compatible = "db8500_sia_mmdsp"; |
e5999f28 LJ |
311 | }; |
312 | ||
313 | // DB8500_REGULATOR_SWITCH_SIAMMDSPRET | |
314 | db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret { | |
e5999f28 LJ |
315 | }; |
316 | ||
317 | // DB8500_REGULATOR_SWITCH_SIAPIPE | |
318 | db8500_sia_pipe_reg: db8500_sia_pipe { | |
da26848a | 319 | regulator-compatible = "db8500_sia_pipe"; |
e5999f28 LJ |
320 | }; |
321 | ||
322 | // DB8500_REGULATOR_SWITCH_SGA | |
323 | db8500_sga_reg: db8500_sga { | |
da26848a | 324 | regulator-compatible = "db8500_sga"; |
e5999f28 LJ |
325 | vin-supply = <&db8500_vape_reg>; |
326 | }; | |
327 | ||
328 | // DB8500_REGULATOR_SWITCH_B2R2_MCDE | |
329 | db8500_b2r2_mcde_reg: db8500_b2r2_mcde { | |
da26848a | 330 | regulator-compatible = "db8500_b2r2_mcde"; |
e5999f28 LJ |
331 | vin-supply = <&db8500_vape_reg>; |
332 | }; | |
333 | ||
334 | // DB8500_REGULATOR_SWITCH_ESRAM12 | |
335 | db8500_esram12_reg: db8500_esram12 { | |
da26848a | 336 | regulator-compatible = "db8500_esram12"; |
e5999f28 LJ |
337 | }; |
338 | ||
339 | // DB8500_REGULATOR_SWITCH_ESRAM12RET | |
340 | db8500_esram12_ret_reg: db8500_esram12_ret { | |
da26848a | 341 | regulator-compatible = "db8500_esram12_ret"; |
e5999f28 LJ |
342 | }; |
343 | ||
344 | // DB8500_REGULATOR_SWITCH_ESRAM34 | |
345 | db8500_esram34_reg: db8500_esram34 { | |
da26848a | 346 | regulator-compatible = "db8500_esram34"; |
e5999f28 LJ |
347 | }; |
348 | ||
349 | // DB8500_REGULATOR_SWITCH_ESRAM34RET | |
350 | db8500_esram34_ret_reg: db8500_esram34_ret { | |
da26848a | 351 | regulator-compatible = "db8500_esram34_ret"; |
e5999f28 LJ |
352 | }; |
353 | }; | |
354 | ||
d52701d3 | 355 | ab8500 { |
7e0ce270 | 356 | compatible = "stericsson,ab8500"; |
8d4c6d45 | 357 | interrupt-parent = <&intc>; |
90c40257 | 358 | interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>; |
732973c8 LJ |
359 | interrupt-controller; |
360 | #interrupt-cells = <2>; | |
4a85c7fa | 361 | |
348f3bc6 LJ |
362 | ab8500_gpio: ab8500-gpio { |
363 | gpio-controller; | |
364 | #gpio-cells = <2>; | |
365 | }; | |
366 | ||
d4b29ac1 LJ |
367 | ab8500-rtc { |
368 | compatible = "stericsson,ab8500-rtc"; | |
90c40257 LW |
369 | interrupts = <17 IRQ_TYPE_LEVEL_HIGH |
370 | 18 IRQ_TYPE_LEVEL_HIGH>; | |
d4b29ac1 LJ |
371 | interrupt-names = "60S", "ALARM"; |
372 | }; | |
373 | ||
4eda9129 LJ |
374 | ab8500-gpadc { |
375 | compatible = "stericsson,ab8500-gpadc"; | |
90c40257 LW |
376 | interrupts = <32 IRQ_TYPE_LEVEL_HIGH |
377 | 39 IRQ_TYPE_LEVEL_HIGH>; | |
4eda9129 LJ |
378 | interrupt-names = "HW_CONV_END", "SW_CONV_END"; |
379 | vddadc-supply = <&ab8500_ldo_tvout_reg>; | |
380 | }; | |
381 | ||
e0f1abeb R |
382 | ab8500_battery: ab8500_battery { |
383 | stericsson,battery-type = "LIPO"; | |
384 | thermistor-on-batctrl; | |
385 | }; | |
386 | ||
387 | ab8500_fg { | |
388 | compatible = "stericsson,ab8500-fg"; | |
389 | battery = <&ab8500_battery>; | |
390 | }; | |
391 | ||
bd9e8ab2 R |
392 | ab8500_btemp { |
393 | compatible = "stericsson,ab8500-btemp"; | |
394 | battery = <&ab8500_battery>; | |
395 | }; | |
396 | ||
4aef72db R |
397 | ab8500_charger { |
398 | compatible = "stericsson,ab8500-charger"; | |
399 | battery = <&ab8500_battery>; | |
400 | vddadc-supply = <&ab8500_ldo_tvout_reg>; | |
401 | }; | |
402 | ||
a12810ab R |
403 | ab8500_chargalg { |
404 | compatible = "stericsson,ab8500-chargalg"; | |
405 | battery = <&ab8500_battery>; | |
406 | }; | |
407 | ||
e0f1abeb | 408 | ab8500_usb { |
ee189cef | 409 | compatible = "stericsson,ab8500-usb"; |
90c40257 LW |
410 | interrupts = < 90 IRQ_TYPE_LEVEL_HIGH |
411 | 96 IRQ_TYPE_LEVEL_HIGH | |
412 | 14 IRQ_TYPE_LEVEL_HIGH | |
413 | 15 IRQ_TYPE_LEVEL_HIGH | |
414 | 79 IRQ_TYPE_LEVEL_HIGH | |
415 | 74 IRQ_TYPE_LEVEL_HIGH | |
416 | 75 IRQ_TYPE_LEVEL_HIGH>; | |
ee189cef LJ |
417 | interrupt-names = "ID_WAKEUP_R", |
418 | "ID_WAKEUP_F", | |
419 | "VBUS_DET_F", | |
420 | "VBUS_DET_R", | |
421 | "USB_LINK_STATUS", | |
422 | "USB_ADP_PROBE_PLUG", | |
423 | "USB_ADP_PROBE_UNPLUG"; | |
99b38eef | 424 | vddulpivio18-supply = <&ab8500_ldo_intcore_reg>; |
ee189cef LJ |
425 | v-ape-supply = <&db8500_vape_reg>; |
426 | musb_1v8-supply = <&db8500_vsmps2_reg>; | |
427 | }; | |
428 | ||
12cb7bd4 | 429 | ab8500-ponkey { |
74630706 | 430 | compatible = "stericsson,ab8500-poweron-key"; |
90c40257 LW |
431 | interrupts = <6 IRQ_TYPE_LEVEL_HIGH |
432 | 7 IRQ_TYPE_LEVEL_HIGH>; | |
12cb7bd4 LJ |
433 | interrupt-names = "ONKEY_DBF", "ONKEY_DBR"; |
434 | }; | |
435 | ||
401cd1b8 LJ |
436 | ab8500-sysctrl { |
437 | compatible = "stericsson,ab8500-sysctrl"; | |
438 | }; | |
439 | ||
78451de7 LJ |
440 | ab8500-pwm { |
441 | compatible = "stericsson,ab8500-pwm"; | |
442 | }; | |
443 | ||
215891ec LJ |
444 | ab8500-debugfs { |
445 | compatible = "stericsson,ab8500-debug"; | |
446 | }; | |
4a85c7fa | 447 | |
9c06af30 LJ |
448 | codec: ab8500-codec { |
449 | compatible = "stericsson,ab8500-codec"; | |
450 | ||
f99808a6 FB |
451 | V-AUD-supply = <&ab8500_ldo_audio_reg>; |
452 | V-AMIC1-supply = <&ab8500_ldo_anamic1_reg>; | |
453 | V-AMIC2-supply = <&ab8500_ldo_anamic2_reg>; | |
454 | V-DMIC-supply = <&ab8500_ldo_dmic_reg>; | |
455 | ||
9c06af30 LJ |
456 | stericsson,earpeice-cmv = <950>; /* Units in mV. */ |
457 | }; | |
458 | ||
62ebfe6b LJ |
459 | ext_regulators: ab8500-ext-regulators { |
460 | compatible = "stericsson,ab8500-ext-regulator"; | |
461 | ||
462 | ab8500_ext1_reg: ab8500_ext1 { | |
463 | regulator-compatible = "ab8500_ext1"; | |
464 | regulator-min-microvolt = <1800000>; | |
465 | regulator-max-microvolt = <1800000>; | |
466 | regulator-boot-on; | |
467 | regulator-always-on; | |
468 | }; | |
469 | ||
470 | ab8500_ext2_reg: ab8500_ext2 { | |
471 | regulator-compatible = "ab8500_ext2"; | |
472 | regulator-min-microvolt = <1360000>; | |
473 | regulator-max-microvolt = <1360000>; | |
474 | regulator-boot-on; | |
475 | regulator-always-on; | |
476 | }; | |
477 | ||
478 | ab8500_ext3_reg: ab8500_ext3 { | |
479 | regulator-compatible = "ab8500_ext3"; | |
480 | regulator-min-microvolt = <3400000>; | |
481 | regulator-max-microvolt = <3400000>; | |
482 | regulator-boot-on; | |
483 | }; | |
484 | }; | |
485 | ||
4a85c7fa LJ |
486 | ab8500-regulators { |
487 | compatible = "stericsson,ab8500-regulator"; | |
75f0999a | 488 | vin-supply = <&ab8500_ext3_reg>; |
4a85c7fa LJ |
489 | |
490 | // supplies to the display/camera | |
491 | ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { | |
da26848a | 492 | regulator-compatible = "ab8500_ldo_aux1"; |
4a85c7fa LJ |
493 | regulator-min-microvolt = <2500000>; |
494 | regulator-max-microvolt = <2900000>; | |
495 | regulator-boot-on; | |
496 | /* BUG: If turned off MMC will be affected. */ | |
497 | regulator-always-on; | |
498 | }; | |
499 | ||
500 | // supplies to the on-board eMMC | |
501 | ab8500_ldo_aux2_reg: ab8500_ldo_aux2 { | |
da26848a | 502 | regulator-compatible = "ab8500_ldo_aux2"; |
4a85c7fa LJ |
503 | regulator-min-microvolt = <1100000>; |
504 | regulator-max-microvolt = <3300000>; | |
505 | }; | |
506 | ||
507 | // supply for VAUX3; SDcard slots | |
508 | ab8500_ldo_aux3_reg: ab8500_ldo_aux3 { | |
da26848a | 509 | regulator-compatible = "ab8500_ldo_aux3"; |
4a85c7fa LJ |
510 | regulator-min-microvolt = <1100000>; |
511 | regulator-max-microvolt = <3300000>; | |
512 | }; | |
513 | ||
514 | // supply for v-intcore12; VINTCORE12 LDO | |
99b38eef FB |
515 | ab8500_ldo_intcore_reg: ab8500_ldo_intcore { |
516 | regulator-compatible = "ab8500_ldo_intcore"; | |
4a85c7fa LJ |
517 | }; |
518 | ||
519 | // supply for tvout; gpadc; TVOUT LDO | |
520 | ab8500_ldo_tvout_reg: ab8500_ldo_tvout { | |
da26848a | 521 | regulator-compatible = "ab8500_ldo_tvout"; |
4a85c7fa LJ |
522 | }; |
523 | ||
524 | // supply for ab8500-usb; USB LDO | |
525 | ab8500_ldo_usb_reg: ab8500_ldo_usb { | |
da26848a | 526 | regulator-compatible = "ab8500_ldo_usb"; |
4a85c7fa LJ |
527 | }; |
528 | ||
529 | // supply for ab8500-vaudio; VAUDIO LDO | |
530 | ab8500_ldo_audio_reg: ab8500_ldo_audio { | |
da26848a | 531 | regulator-compatible = "ab8500_ldo_audio"; |
4a85c7fa LJ |
532 | }; |
533 | ||
4aa44874 | 534 | // supply for v-anamic1 VAMIC1 LDO |
4a85c7fa | 535 | ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 { |
da26848a | 536 | regulator-compatible = "ab8500_ldo_anamic1"; |
4a85c7fa LJ |
537 | }; |
538 | ||
539 | // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1 | |
5510ed9f FB |
540 | ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 { |
541 | regulator-compatible = "ab8500_ldo_anamic2"; | |
4a85c7fa LJ |
542 | }; |
543 | ||
544 | // supply for v-dmic; VDMIC LDO | |
545 | ab8500_ldo_dmic_reg: ab8500_ldo_dmic { | |
da26848a | 546 | regulator-compatible = "ab8500_ldo_dmic"; |
4a85c7fa LJ |
547 | }; |
548 | ||
549 | // supply for U8500 CSI/DSI; VANA LDO | |
550 | ab8500_ldo_ana_reg: ab8500_ldo_ana { | |
da26848a | 551 | regulator-compatible = "ab8500_ldo_ana"; |
4a85c7fa LJ |
552 | }; |
553 | }; | |
7e0ce270 LJ |
554 | }; |
555 | }; | |
556 | ||
557 | i2c@80004000 { | |
d524fa7f | 558 | compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; |
7e0ce270 | 559 | reg = <0x80004000 0x1000>; |
90c40257 | 560 | interrupts = <0 21 IRQ_TYPE_LEVEL_HIGH>; |
35b33d23 | 561 | |
7e0ce270 LJ |
562 | #address-cells = <1>; |
563 | #size-cells = <0>; | |
d524fa7f LJ |
564 | v-i2c-supply = <&db8500_vape_reg>; |
565 | ||
566 | clock-frequency = <400000>; | |
7e0ce270 LJ |
567 | }; |
568 | ||
569 | i2c@80122000 { | |
d524fa7f | 570 | compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; |
7e0ce270 | 571 | reg = <0x80122000 0x1000>; |
90c40257 | 572 | interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>; |
35b33d23 | 573 | |
7e0ce270 LJ |
574 | #address-cells = <1>; |
575 | #size-cells = <0>; | |
d524fa7f LJ |
576 | v-i2c-supply = <&db8500_vape_reg>; |
577 | ||
578 | clock-frequency = <400000>; | |
7e0ce270 LJ |
579 | }; |
580 | ||
581 | i2c@80128000 { | |
d524fa7f | 582 | compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; |
7e0ce270 | 583 | reg = <0x80128000 0x1000>; |
90c40257 | 584 | interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>; |
35b33d23 | 585 | |
7e0ce270 LJ |
586 | #address-cells = <1>; |
587 | #size-cells = <0>; | |
d524fa7f LJ |
588 | v-i2c-supply = <&db8500_vape_reg>; |
589 | ||
590 | clock-frequency = <400000>; | |
7e0ce270 LJ |
591 | }; |
592 | ||
593 | i2c@80110000 { | |
d524fa7f | 594 | compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; |
7e0ce270 | 595 | reg = <0x80110000 0x1000>; |
90c40257 | 596 | interrupts = <0 12 IRQ_TYPE_LEVEL_HIGH>; |
35b33d23 | 597 | |
7e0ce270 LJ |
598 | #address-cells = <1>; |
599 | #size-cells = <0>; | |
d524fa7f LJ |
600 | v-i2c-supply = <&db8500_vape_reg>; |
601 | ||
602 | clock-frequency = <400000>; | |
7e0ce270 LJ |
603 | }; |
604 | ||
605 | i2c@8012a000 { | |
d524fa7f | 606 | compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; |
7e0ce270 | 607 | reg = <0x8012a000 0x1000>; |
90c40257 | 608 | interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>; |
35b33d23 | 609 | |
7e0ce270 LJ |
610 | #address-cells = <1>; |
611 | #size-cells = <0>; | |
d524fa7f LJ |
612 | v-i2c-supply = <&db8500_vape_reg>; |
613 | ||
614 | clock-frequency = <400000>; | |
7e0ce270 LJ |
615 | }; |
616 | ||
617 | ssp@80002000 { | |
618 | compatible = "arm,pl022", "arm,primecell"; | |
c164fa62 | 619 | reg = <0x80002000 0x1000>; |
90c40257 | 620 | interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>; |
7e0ce270 LJ |
621 | #address-cells = <1>; |
622 | #size-cells = <0>; | |
623 | status = "disabled"; | |
7e0ce270 LJ |
624 | }; |
625 | ||
626 | uart@80120000 { | |
627 | compatible = "arm,pl011", "arm,primecell"; | |
628 | reg = <0x80120000 0x1000>; | |
90c40257 | 629 | interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>; |
fbff01cc LJ |
630 | |
631 | dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */ | |
632 | <&dma 13 0 0x0>; /* Logical - MemToDev */ | |
633 | dma-names = "rx", "tx"; | |
634 | ||
7e0ce270 LJ |
635 | status = "disabled"; |
636 | }; | |
fbff01cc | 637 | |
7e0ce270 LJ |
638 | uart@80121000 { |
639 | compatible = "arm,pl011", "arm,primecell"; | |
640 | reg = <0x80121000 0x1000>; | |
90c40257 | 641 | interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>; |
fbff01cc LJ |
642 | |
643 | dmas = <&dma 12 0 0x2>, /* Logical - DevToMem */ | |
644 | <&dma 12 0 0x0>; /* Logical - MemToDev */ | |
645 | dma-names = "rx", "tx"; | |
646 | ||
7e0ce270 LJ |
647 | status = "disabled"; |
648 | }; | |
fbff01cc | 649 | |
7e0ce270 LJ |
650 | uart@80007000 { |
651 | compatible = "arm,pl011", "arm,primecell"; | |
652 | reg = <0x80007000 0x1000>; | |
90c40257 | 653 | interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>; |
fbff01cc LJ |
654 | |
655 | dmas = <&dma 11 0 0x2>, /* Logical - DevToMem */ | |
656 | <&dma 11 0 0x0>; /* Logical - MemToDev */ | |
657 | dma-names = "rx", "tx"; | |
658 | ||
7e0ce270 LJ |
659 | status = "disabled"; |
660 | }; | |
661 | ||
81bf8c2e | 662 | sdi0_per1@80126000 { |
7e0ce270 LJ |
663 | compatible = "arm,pl18x", "arm,primecell"; |
664 | reg = <0x80126000 0x1000>; | |
90c40257 | 665 | interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>; |
498315b9 LJ |
666 | |
667 | dmas = <&dma 29 0 0x2>, /* Logical - DevToMem */ | |
668 | <&dma 29 0 0x0>; /* Logical - MemToDev */ | |
669 | dma-names = "rx", "tx"; | |
670 | ||
7e0ce270 LJ |
671 | status = "disabled"; |
672 | }; | |
76ff4e43 | 673 | |
81bf8c2e | 674 | sdi1_per2@80118000 { |
7e0ce270 LJ |
675 | compatible = "arm,pl18x", "arm,primecell"; |
676 | reg = <0x80118000 0x1000>; | |
90c40257 | 677 | interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>; |
498315b9 LJ |
678 | |
679 | dmas = <&dma 32 0 0x2>, /* Logical - DevToMem */ | |
680 | <&dma 32 0 0x0>; /* Logical - MemToDev */ | |
681 | dma-names = "rx", "tx"; | |
682 | ||
7e0ce270 LJ |
683 | status = "disabled"; |
684 | }; | |
76ff4e43 | 685 | |
81bf8c2e | 686 | sdi2_per3@80005000 { |
7e0ce270 LJ |
687 | compatible = "arm,pl18x", "arm,primecell"; |
688 | reg = <0x80005000 0x1000>; | |
90c40257 | 689 | interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>; |
498315b9 LJ |
690 | |
691 | dmas = <&dma 28 0 0x2>, /* Logical - DevToMem */ | |
692 | <&dma 28 0 0x0>; /* Logical - MemToDev */ | |
693 | dma-names = "rx", "tx"; | |
694 | ||
7e0ce270 LJ |
695 | status = "disabled"; |
696 | }; | |
76ff4e43 | 697 | |
81bf8c2e | 698 | sdi3_per2@80119000 { |
7e0ce270 LJ |
699 | compatible = "arm,pl18x", "arm,primecell"; |
700 | reg = <0x80119000 0x1000>; | |
90c40257 | 701 | interrupts = <0 59 IRQ_TYPE_LEVEL_HIGH>; |
7e0ce270 LJ |
702 | status = "disabled"; |
703 | }; | |
76ff4e43 | 704 | |
81bf8c2e | 705 | sdi4_per2@80114000 { |
7e0ce270 LJ |
706 | compatible = "arm,pl18x", "arm,primecell"; |
707 | reg = <0x80114000 0x1000>; | |
90c40257 | 708 | interrupts = <0 99 IRQ_TYPE_LEVEL_HIGH>; |
498315b9 LJ |
709 | |
710 | dmas = <&dma 42 0 0x2>, /* Logical - DevToMem */ | |
711 | <&dma 42 0 0x0>; /* Logical - MemToDev */ | |
712 | dma-names = "rx", "tx"; | |
713 | ||
7e0ce270 LJ |
714 | status = "disabled"; |
715 | }; | |
76ff4e43 | 716 | |
81bf8c2e | 717 | sdi5_per3@80008000 { |
7e0ce270 | 718 | compatible = "arm,pl18x", "arm,primecell"; |
76ff4e43 | 719 | reg = <0x80008000 0x1000>; |
90c40257 | 720 | interrupts = <0 100 IRQ_TYPE_LEVEL_HIGH>; |
7e0ce270 LJ |
721 | status = "disabled"; |
722 | }; | |
bf76e062 | 723 | |
fe164529 LJ |
724 | msp0: msp@80123000 { |
725 | compatible = "stericsson,ux500-msp-i2s"; | |
726 | reg = <0x80123000 0x1000>; | |
90c40257 | 727 | interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>; |
fe164529 LJ |
728 | v-ape-supply = <&db8500_vape_reg>; |
729 | status = "disabled"; | |
730 | }; | |
731 | ||
732 | msp1: msp@80124000 { | |
733 | compatible = "stericsson,ux500-msp-i2s"; | |
734 | reg = <0x80124000 0x1000>; | |
90c40257 | 735 | interrupts = <0 62 IRQ_TYPE_LEVEL_HIGH>; |
fe164529 LJ |
736 | v-ape-supply = <&db8500_vape_reg>; |
737 | status = "disabled"; | |
738 | }; | |
739 | ||
740 | // HDMI sound | |
741 | msp2: msp@80117000 { | |
742 | compatible = "stericsson,ux500-msp-i2s"; | |
743 | reg = <0x80117000 0x1000>; | |
90c40257 | 744 | interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>; |
fe164529 LJ |
745 | v-ape-supply = <&db8500_vape_reg>; |
746 | status = "disabled"; | |
747 | }; | |
748 | ||
749 | msp3: msp@80125000 { | |
750 | compatible = "stericsson,ux500-msp-i2s"; | |
751 | reg = <0x80125000 0x1000>; | |
90c40257 | 752 | interrupts = <0 62 IRQ_TYPE_LEVEL_HIGH>; |
fe164529 LJ |
753 | v-ape-supply = <&db8500_vape_reg>; |
754 | status = "disabled"; | |
755 | }; | |
756 | ||
bf76e062 LJ |
757 | external-bus@50000000 { |
758 | compatible = "simple-bus"; | |
759 | reg = <0x50000000 0x4000000>; | |
760 | #address-cells = <1>; | |
761 | #size-cells = <1>; | |
762 | ranges = <0 0x50000000 0x4000000>; | |
763 | status = "disabled"; | |
764 | }; | |
dc1956b5 | 765 | |
766 | cpufreq-cooling { | |
767 | compatible = "stericsson,db8500-cpufreq-cooling"; | |
768 | status = "disabled"; | |
769 | }; | |
770 | ||
0563f638 LJ |
771 | vmmci: regulator-gpio { |
772 | compatible = "regulator-gpio"; | |
773 | ||
774 | regulator-min-microvolt = <1800000>; | |
4f902b42 | 775 | regulator-max-microvolt = <2900000>; |
0563f638 LJ |
776 | regulator-name = "mmci-reg"; |
777 | regulator-type = "voltage"; | |
778 | ||
874c9202 | 779 | startup-delay-us = <100>; |
e7bda303 LJ |
780 | enable-active-high; |
781 | ||
0563f638 LJ |
782 | states = <1800000 0x1 |
783 | 2900000 0x0>; | |
c94a4ab7 LJ |
784 | |
785 | status = "disabled"; | |
0563f638 | 786 | }; |
fe2e9f92 LJ |
787 | |
788 | cryp@a03cb000 { | |
789 | compatible = "stericsson,ux500-cryp"; | |
790 | reg = <0xa03cb000 0x1000>; | |
90c40257 | 791 | interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>; |
fe2e9f92 LJ |
792 | |
793 | v-ape-supply = <&db8500_vape_reg>; | |
fe2e9f92 | 794 | }; |
61122cf2 LJ |
795 | |
796 | hash@a03c2000 { | |
797 | compatible = "stericsson,ux500-hash"; | |
798 | reg = <0xa03c2000 0x1000>; | |
799 | ||
800 | v-ape-supply = <&db8500_vape_reg>; | |
61122cf2 | 801 | }; |
5d0769f0 AB |
802 | }; |
803 | }; |