blob: b8fadb1d861623a0d1d6b0e04908a8ff35d7cee4 [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
Linus Walleij90c40252013-05-29 19:15:39 +020012#include <dt-bindings/interrupt-controller/irq.h>
Lee Jones841cd0c2013-09-18 09:53:10 +010013#include <dt-bindings/mfd/dbx500-prcmu.h>
Ulf Hansson067adde2014-10-14 11:12:59 +020014#include <dt-bindings/arm/ux500_pm_domains.h>
Gabriel Fernandez807e8832013-05-27 15:30:53 +020015#include "skeleton.dtsi"
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000016
17/ {
Gabriel Fernandezb1ba1432013-03-01 14:38:07 +010018 soc {
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000019 #address-cells = <1>;
20 #size-cells = <1>;
Lee Jones7e0ce272012-03-15 16:46:17 +000021 compatible = "stericsson,db8500";
Lee Jonesdab64872012-03-07 17:22:30 +000022 interrupt-parent = <&intc>;
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000023 ranges;
Lee Jones7e0ce272012-03-15 16:46:17 +000024
Linus Walleij771969e2015-03-23 16:49:57 +010025 cpus {
26 #address-cells = <1>;
27 #size-cells = <0>;
28
29 cpu-map {
30 cluster0 {
31 core0 {
32 cpu = <&CPU0>;
33 };
34 core1 {
35 cpu = <&CPU1>;
36 };
37 };
38 };
39 CPU0: cpu@0 {
40 device_type = "cpu";
41 compatible = "arm,cortex-a9";
42 reg = <0>;
43 };
44 CPU1: cpu@1 {
45 device_type = "cpu";
46 compatible = "arm,cortex-a9";
47 reg = <1>;
48 };
49 };
50
Linus Walleijb5574572015-04-16 09:08:15 +020051 ptm@801ae000 {
52 compatible = "arm,coresight-etm3x", "arm,primecell";
53 reg = <0x801ae000 0x1000>;
54
55 clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
56 clock-names = "apb_pclk", "atclk";
57 cpu = <&CPU0>;
58 port {
59 ptm0_out_port: endpoint {
60 remote-endpoint = <&funnel_in_port0>;
61 };
62 };
63 };
64
65 ptm@801af000 {
66 compatible = "arm,coresight-etm3x", "arm,primecell";
67 reg = <0x801af000 0x1000>;
68
69 clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
70 clock-names = "apb_pclk", "atclk";
71 cpu = <&CPU1>;
72 port {
73 ptm1_out_port: endpoint {
74 remote-endpoint = <&funnel_in_port1>;
75 };
76 };
77 };
78
79 funnel@801a6000 {
80 compatible = "arm,coresight-funnel", "arm,primecell";
81 reg = <0x801a6000 0x1000>;
82
83 clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
84 clock-names = "apb_pclk", "atclk";
85 ports {
86 #address-cells = <1>;
87 #size-cells = <0>;
88
89 /* funnel output ports */
90 port@0 {
91 reg = <0>;
92 funnel_out_port: endpoint {
93 remote-endpoint =
94 <&replicator_in_port0>;
95 };
96 };
97
98 /* funnel input ports */
99 port@1 {
100 reg = <0>;
101 funnel_in_port0: endpoint {
102 slave-mode;
103 remote-endpoint = <&ptm0_out_port>;
104 };
105 };
106
107 port@2 {
108 reg = <1>;
109 funnel_in_port1: endpoint {
110 slave-mode;
111 remote-endpoint = <&ptm1_out_port>;
112 };
113 };
114 };
115 };
116
117 replicator {
118 compatible = "arm,coresight-replicator";
119 clocks = <&prcmu_clk PRCMU_APEATCLK>;
120 clock-names = "atclk";
121
122 ports {
123 #address-cells = <1>;
124 #size-cells = <0>;
125
126 /* replicator output ports */
127 port@0 {
128 reg = <0>;
129 replicator_out_port0: endpoint {
130 remote-endpoint = <&tpiu_in_port>;
131 };
132 };
133 port@1 {
134 reg = <1>;
135 replicator_out_port1: endpoint {
136 remote-endpoint = <&etb_in_port>;
137 };
138 };
139
140 /* replicator input port */
141 port@2 {
142 reg = <0>;
143 replicator_in_port0: endpoint {
144 slave-mode;
145 remote-endpoint = <&funnel_out_port>;
146 };
147 };
148 };
149 };
150
151 tpiu@80190000 {
152 compatible = "arm,coresight-tpiu", "arm,primecell";
153 reg = <0x80190000 0x1000>;
154
155 clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
156 clock-names = "apb_pclk", "atclk";
157 port {
158 tpiu_in_port: endpoint {
159 slave-mode;
160 remote-endpoint = <&replicator_out_port0>;
161 };
162 };
163 };
164
165 etb@801a4000 {
166 compatible = "arm,coresight-etb10", "arm,primecell";
167 reg = <0x801a4000 0x1000>;
168
169 clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
170 clock-names = "apb_pclk", "atclk";
171 port {
172 etb_in_port: endpoint {
173 slave-mode;
174 remote-endpoint = <&replicator_out_port1>;
175 };
176 };
177 };
178
Lee Jonesdab64872012-03-07 17:22:30 +0000179 intc: interrupt-controller@a0411000 {
180 compatible = "arm,cortex-a9-gic";
181 #interrupt-cells = <3>;
182 #address-cells = <1>;
183 interrupt-controller;
Lee Jonesdab64872012-03-07 17:22:30 +0000184 reg = <0xa0411000 0x1000>,
185 <0xa0410100 0x100>;
186 };
187
Linus Walleij48793412015-05-14 11:22:34 +0200188 scu@a04100000 {
189 compatible = "arm,cortex-a9-scu";
190 reg = <0xa0410000 0x100>;
191 };
192
Linus Walleij724814b2015-05-14 18:02:05 +0200193 /*
194 * The backup RAM is used for retention during sleep
195 * and various things like spin tables
196 */
197 backupram@80150000 {
198 compatible = "ste,dbx500-backupram";
199 reg = <0x80150000 0x2000>;
200 };
201
Lee Jonesf1949ea2012-03-08 09:02:02 +0000202 L2: l2-cache {
203 compatible = "arm,pl310-cache";
204 reg = <0xa0412000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200205 interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesf1949ea2012-03-08 09:02:02 +0000206 cache-unified;
207 cache-level = <2>;
208 };
209
Lee Jones7e0ce272012-03-15 16:46:17 +0000210 pmu {
211 compatible = "arm,cortex-a9-pmu";
Linus Walleij90c40252013-05-29 19:15:39 +0200212 interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000213 };
214
Ulf Hansson6c669352014-10-14 11:12:58 +0200215 pm_domains: pm_domains0 {
216 compatible = "stericsson,ux500-pm-domains";
217 #power-domain-cells = <1>;
218 };
Lee Jones8132ed12013-09-18 09:54:07 +0100219
Lee Jones841cd0c2013-09-18 09:53:10 +0100220 clocks {
221 compatible = "stericsson,u8500-clks";
222
223 prcmu_clk: prcmu-clock {
224 #clock-cells = <1>;
225 };
Lee Jonesfcbe5e92013-06-06 10:51:04 +0100226
227 prcc_pclk: prcc-periph-clock {
228 #clock-cells = <2>;
229 };
Lee Jones2588fea2013-06-06 10:52:50 +0100230
231 prcc_kclk: prcc-kernel-clock {
232 #clock-cells = <2>;
233 };
Lee Jones589d9832013-06-06 10:54:27 +0100234
235 rtc_clk: rtc32k-clock {
236 #clock-cells = <0>;
237 };
Lee Jones309012d2013-06-06 10:54:48 +0100238
239 smp_twd_clk: smp-twd-clock {
240 #clock-cells = <0>;
241 };
Lee Jones841cd0c2013-09-18 09:53:10 +0100242 };
243
Lee Jones8132ed12013-09-18 09:54:07 +0100244 mtu@a03c6000 {
245 /* Nomadik System Timer */
246 compatible = "st,nomadik-mtu";
247 reg = <0xa03c6000 0x1000>;
248 interrupts = <0 4 IRQ_TYPE_LEVEL_HIGH>;
249
250 clocks = <&prcmu_clk PRCMU_TIMCLK>, <&prcc_pclk 6 6>;
251 clock-names = "timclk", "apb_pclk";
252 };
253
Lee Jones71de5c42012-03-16 09:53:24 +0000254 timer@a0410600 {
255 compatible = "arm,cortex-a9-twd-timer";
256 reg = <0xa0410600 0x20>;
Linus Walleij90c40252013-05-29 19:15:39 +0200257 interrupts = <1 13 0x304>; /* IRQ level high per-CPU */
Lee Jonesa8acb1e2013-06-05 12:26:52 +0100258
259 clocks = <&smp_twd_clk>;
Lee Jones71de5c42012-03-16 09:53:24 +0000260 };
261
Linus Walleij48793412015-05-14 11:22:34 +0200262 watchdog@a0410620 {
263 compatible = "arm,cortex-a9-twd-wdt";
264 reg = <0xa0410620 0x20>;
265 interrupts = <1 14 0x304>;
266 clocks = <&smp_twd_clk>;
267 };
268
Lee Jones7e0ce272012-03-15 16:46:17 +0000269 rtc@80154000 {
Lee Jonesddb3b992012-05-26 07:01:31 +0100270 compatible = "arm,rtc-pl031", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000271 reg = <0x80154000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200272 interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesd299b5a2013-06-05 12:27:24 +0100273
274 clocks = <&rtc_clk>;
275 clock-names = "apb_pclk";
Lee Jones7e0ce272012-03-15 16:46:17 +0000276 };
277
278 gpio0: gpio@8012e000 {
279 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100280 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000281 reg = <0x8012e000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200282 interrupts = <0 119 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800283 interrupt-controller;
284 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100285 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000286 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100287 #gpio-cells = <2>;
288 gpio-bank = <0>;
Linus Walleijee041392015-07-23 09:09:49 +0200289 gpio-ranges = <&pinctrl 0 0 32>;
Lee Jones9d891072013-06-03 13:07:51 +0100290 clocks = <&prcc_pclk 1 9>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000291 };
292
293 gpio1: gpio@8012e080 {
294 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100295 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000296 reg = <0x8012e080 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200297 interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800298 interrupt-controller;
299 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100300 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000301 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100302 #gpio-cells = <2>;
303 gpio-bank = <1>;
Linus Walleijee041392015-07-23 09:09:49 +0200304 gpio-ranges = <&pinctrl 0 32 5>;
Lee Jones9d891072013-06-03 13:07:51 +0100305 clocks = <&prcc_pclk 1 9>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000306 };
307
308 gpio2: gpio@8000e000 {
309 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100310 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000311 reg = <0x8000e000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200312 interrupts = <0 121 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800313 interrupt-controller;
314 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100315 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000316 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100317 #gpio-cells = <2>;
318 gpio-bank = <2>;
Linus Walleijee041392015-07-23 09:09:49 +0200319 gpio-ranges = <&pinctrl 0 64 32>;
Lee Jones9d891072013-06-03 13:07:51 +0100320 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000321 };
322
323 gpio3: gpio@8000e080 {
324 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100325 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000326 reg = <0x8000e080 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200327 interrupts = <0 122 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800328 interrupt-controller;
329 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100330 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000331 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100332 #gpio-cells = <2>;
333 gpio-bank = <3>;
Linus Walleijee041392015-07-23 09:09:49 +0200334 gpio-ranges = <&pinctrl 0 96 2>;
Lee Jones9d891072013-06-03 13:07:51 +0100335 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000336 };
337
338 gpio4: gpio@8000e100 {
339 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100340 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000341 reg = <0x8000e100 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200342 interrupts = <0 123 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800343 interrupt-controller;
344 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100345 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000346 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100347 #gpio-cells = <2>;
348 gpio-bank = <4>;
Linus Walleijee041392015-07-23 09:09:49 +0200349 gpio-ranges = <&pinctrl 0 128 32>;
Lee Jones9d891072013-06-03 13:07:51 +0100350 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000351 };
352
353 gpio5: gpio@8000e180 {
354 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100355 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000356 reg = <0x8000e180 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200357 interrupts = <0 124 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800358 interrupt-controller;
359 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100360 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000361 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100362 #gpio-cells = <2>;
363 gpio-bank = <5>;
Linus Walleijee041392015-07-23 09:09:49 +0200364 gpio-ranges = <&pinctrl 0 160 12>;
Lee Jones9d891072013-06-03 13:07:51 +0100365 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000366 };
367
368 gpio6: gpio@8011e000 {
369 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100370 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000371 reg = <0x8011e000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200372 interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800373 interrupt-controller;
374 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100375 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000376 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100377 #gpio-cells = <2>;
378 gpio-bank = <6>;
Linus Walleijee041392015-07-23 09:09:49 +0200379 gpio-ranges = <&pinctrl 0 192 32>;
Linus Walleijd5916402013-10-18 09:49:21 +0200380 clocks = <&prcc_pclk 2 11>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000381 };
382
383 gpio7: gpio@8011e080 {
384 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100385 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000386 reg = <0x8011e080 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200387 interrupts = <0 126 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800388 interrupt-controller;
389 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100390 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000391 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100392 #gpio-cells = <2>;
393 gpio-bank = <7>;
Linus Walleijee041392015-07-23 09:09:49 +0200394 gpio-ranges = <&pinctrl 0 224 7>;
Linus Walleijd5916402013-10-18 09:49:21 +0200395 clocks = <&prcc_pclk 2 11>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000396 };
397
398 gpio8: gpio@a03fe000 {
399 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100400 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000401 reg = <0xa03fe000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200402 interrupts = <0 127 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800403 interrupt-controller;
404 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100405 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000406 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100407 #gpio-cells = <2>;
408 gpio-bank = <8>;
Linus Walleijee041392015-07-23 09:09:49 +0200409 gpio-ranges = <&pinctrl 0 256 12>;
Linus Walleij84873cb2013-10-18 09:45:07 +0200410 clocks = <&prcc_pclk 5 1>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000411 };
412
Linus Walleijee041392015-07-23 09:09:49 +0200413 pinctrl: pinctrl {
Lee Jones818d99a2013-05-22 15:22:55 +0100414 compatible = "stericsson,db8500-pinctrl";
Linus Walleijee041392015-07-23 09:09:49 +0200415 nomadik-gpio-chips = <&gpio0>, <&gpio1>, <&gpio2>, <&gpio3>,
416 <&gpio4>, <&gpio5>, <&gpio6>, <&gpio7>,
417 <&gpio8>;
Lee Jones8979cfe2013-01-11 15:45:28 +0000418 prcm = <&prcmu>;
Lee Jones5910de92012-05-26 06:25:36 +0100419 };
420
Lee Jonesb32dc862013-05-03 15:31:51 +0100421 usb_per5@a03e0000 {
Sebastian Andrzej Siewior4a6cd432013-08-20 18:40:27 +0200422 compatible = "stericsson,db8500-musb";
Lee Jones7e0ce272012-03-15 16:46:17 +0000423 reg = <0xa03e0000 0x10000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200424 interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesb32dc862013-05-03 15:31:51 +0100425 interrupt-names = "mc";
426
427 dr_mode = "otg";
428
429 dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */
430 <&dma 38 0 0x0>, /* Logical - MemToDev */
431 <&dma 37 0 0x2>, /* Logical - DevToMem */
432 <&dma 37 0 0x0>, /* Logical - MemToDev */
433 <&dma 36 0 0x2>, /* Logical - DevToMem */
434 <&dma 36 0 0x0>, /* Logical - MemToDev */
435 <&dma 19 0 0x2>, /* Logical - DevToMem */
436 <&dma 19 0 0x0>, /* Logical - MemToDev */
437 <&dma 18 0 0x2>, /* Logical - DevToMem */
438 <&dma 18 0 0x0>, /* Logical - MemToDev */
439 <&dma 17 0 0x2>, /* Logical - DevToMem */
440 <&dma 17 0 0x0>, /* Logical - MemToDev */
441 <&dma 16 0 0x2>, /* Logical - DevToMem */
442 <&dma 16 0 0x0>, /* Logical - MemToDev */
443 <&dma 39 0 0x2>, /* Logical - DevToMem */
444 <&dma 39 0 0x0>; /* Logical - MemToDev */
445
446 dma-names = "iep_1_9", "oep_1_9",
447 "iep_2_10", "oep_2_10",
448 "iep_3_11", "oep_3_11",
449 "iep_4_12", "oep_4_12",
450 "iep_5_13", "oep_5_13",
451 "iep_6_14", "oep_6_14",
452 "iep_7_15", "oep_7_15",
453 "iep_8", "oep_8";
Lee Jonese47339f2013-06-03 13:08:26 +0100454
455 clocks = <&prcc_pclk 5 0>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000456 };
457
Lee Jonesba074ae2013-05-03 15:31:48 +0100458 dma: dma-controller@801C0000 {
459 compatible = "stericsson,db8500-dma40", "stericsson,dma40";
Lee Jones7e0ce272012-03-15 16:46:17 +0000460 reg = <0x801C0000 0x1000 0x40010000 0x800>;
Lee Jones70d39a82013-05-03 15:31:47 +0100461 reg-names = "base", "lcpa";
Linus Walleij90c40252013-05-29 19:15:39 +0200462 interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesba074ae2013-05-03 15:31:48 +0100463
464 #dma-cells = <3>;
Lee Jonesd37fcdb2013-05-03 15:31:52 +0100465 memcpy-channels = <56 57 58 59 60>;
Lee Jonese064cb22013-06-03 13:13:54 +0100466
467 clocks = <&prcmu_clk PRCMU_DMACLK>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000468 };
469
Lee Jones8979cfe2013-01-11 15:45:28 +0000470 prcmu: prcmu@80157000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000471 compatible = "stericsson,db8500-prcmu";
Linus Torvalds4d26aa32013-05-02 08:56:55 -0700472 reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x1000>;
Lee Jonese73081d2013-03-26 10:26:15 +0000473 reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm";
Linus Walleij90c40252013-05-29 19:15:39 +0200474 interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000475 #address-cells = <1>;
Lee Jones3de3d742012-04-24 10:00:15 +0100476 #size-cells = <1>;
Lee Jonesc09090b2012-08-03 15:42:25 +0100477 interrupt-controller;
478 #interrupt-cells = <2>;
Lee Jones3de3d742012-04-24 10:00:15 +0100479 ranges;
480
Lee Jonesccf74f72012-05-28 16:50:49 +0800481 prcmu-timer-4@80157450 {
Lee Jones3de3d742012-04-24 10:00:15 +0100482 compatible = "stericsson,db8500-prcmu-timer-4";
483 reg = <0x80157450 0xC>;
484 };
Lee Jones7e0ce272012-03-15 16:46:17 +0000485
Lee Jones98585612013-09-18 16:07:44 +0100486 cpufreq {
487 compatible = "stericsson,cpufreq-ux500";
488 clocks = <&prcmu_clk PRCMU_ARMSS>;
489 clock-names = "armss";
490 status = "disabled";
491 };
492
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800493 thermal@801573c0 {
494 compatible = "stericsson,db8500-thermal";
495 reg = <0x801573c0 0x40>;
Linus Walleij90c40252013-05-29 19:15:39 +0200496 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>,
497 <22 IRQ_TYPE_LEVEL_HIGH>;
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800498 interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH";
499 status = "disabled";
Lee Jones1d3f99f2013-06-06 12:21:15 +0100500 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800501
Lee Jonese5999f22012-05-04 13:32:34 +0100502 db8500-prcmu-regulators {
503 compatible = "stericsson,db8500-prcmu-regulator";
504
505 // DB8500_REGULATOR_VAPE
506 db8500_vape_reg: db8500_vape {
Laxman Dewanganda268482012-06-20 17:53:05 +0530507 regulator-compatible = "db8500_vape";
Lee Jonese5999f22012-05-04 13:32:34 +0100508 regulator-always-on;
509 };
510
511 // DB8500_REGULATOR_VARM
512 db8500_varm_reg: db8500_varm {
Laxman Dewanganda268482012-06-20 17:53:05 +0530513 regulator-compatible = "db8500_varm";
Lee Jonese5999f22012-05-04 13:32:34 +0100514 };
515
516 // DB8500_REGULATOR_VMODEM
517 db8500_vmodem_reg: db8500_vmodem {
Laxman Dewanganda268482012-06-20 17:53:05 +0530518 regulator-compatible = "db8500_vmodem";
Lee Jonese5999f22012-05-04 13:32:34 +0100519 };
520
521 // DB8500_REGULATOR_VPLL
522 db8500_vpll_reg: db8500_vpll {
Laxman Dewanganda268482012-06-20 17:53:05 +0530523 regulator-compatible = "db8500_vpll";
Lee Jonese5999f22012-05-04 13:32:34 +0100524 };
525
526 // DB8500_REGULATOR_VSMPS1
527 db8500_vsmps1_reg: db8500_vsmps1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530528 regulator-compatible = "db8500_vsmps1";
Lee Jonese5999f22012-05-04 13:32:34 +0100529 };
530
531 // DB8500_REGULATOR_VSMPS2
532 db8500_vsmps2_reg: db8500_vsmps2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530533 regulator-compatible = "db8500_vsmps2";
Lee Jonese5999f22012-05-04 13:32:34 +0100534 };
535
536 // DB8500_REGULATOR_VSMPS3
537 db8500_vsmps3_reg: db8500_vsmps3 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530538 regulator-compatible = "db8500_vsmps3";
Lee Jonese5999f22012-05-04 13:32:34 +0100539 };
540
541 // DB8500_REGULATOR_VRF1
542 db8500_vrf1_reg: db8500_vrf1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530543 regulator-compatible = "db8500_vrf1";
Lee Jonese5999f22012-05-04 13:32:34 +0100544 };
545
546 // DB8500_REGULATOR_SWITCH_SVAMMDSP
547 db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
Laxman Dewanganda268482012-06-20 17:53:05 +0530548 regulator-compatible = "db8500_sva_mmdsp";
Lee Jonese5999f22012-05-04 13:32:34 +0100549 };
550
551 // DB8500_REGULATOR_SWITCH_SVAMMDSPRET
552 db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530553 regulator-compatible = "db8500_sva_mmdsp_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100554 };
555
556 // DB8500_REGULATOR_SWITCH_SVAPIPE
557 db8500_sva_pipe_reg: db8500_sva_pipe {
Laxman Dewanganda268482012-06-20 17:53:05 +0530558 regulator-compatible = "db8500_sva_pipe";
Lee Jonese5999f22012-05-04 13:32:34 +0100559 };
560
561 // DB8500_REGULATOR_SWITCH_SIAMMDSP
562 db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
Laxman Dewanganda268482012-06-20 17:53:05 +0530563 regulator-compatible = "db8500_sia_mmdsp";
Lee Jonese5999f22012-05-04 13:32:34 +0100564 };
565
566 // DB8500_REGULATOR_SWITCH_SIAMMDSPRET
567 db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
Lee Jonese5999f22012-05-04 13:32:34 +0100568 };
569
570 // DB8500_REGULATOR_SWITCH_SIAPIPE
571 db8500_sia_pipe_reg: db8500_sia_pipe {
Laxman Dewanganda268482012-06-20 17:53:05 +0530572 regulator-compatible = "db8500_sia_pipe";
Lee Jonese5999f22012-05-04 13:32:34 +0100573 };
574
575 // DB8500_REGULATOR_SWITCH_SGA
576 db8500_sga_reg: db8500_sga {
Laxman Dewanganda268482012-06-20 17:53:05 +0530577 regulator-compatible = "db8500_sga";
Lee Jonese5999f22012-05-04 13:32:34 +0100578 vin-supply = <&db8500_vape_reg>;
579 };
580
581 // DB8500_REGULATOR_SWITCH_B2R2_MCDE
582 db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
Laxman Dewanganda268482012-06-20 17:53:05 +0530583 regulator-compatible = "db8500_b2r2_mcde";
Lee Jonese5999f22012-05-04 13:32:34 +0100584 vin-supply = <&db8500_vape_reg>;
585 };
586
587 // DB8500_REGULATOR_SWITCH_ESRAM12
588 db8500_esram12_reg: db8500_esram12 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530589 regulator-compatible = "db8500_esram12";
Lee Jonese5999f22012-05-04 13:32:34 +0100590 };
591
592 // DB8500_REGULATOR_SWITCH_ESRAM12RET
593 db8500_esram12_ret_reg: db8500_esram12_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530594 regulator-compatible = "db8500_esram12_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100595 };
596
597 // DB8500_REGULATOR_SWITCH_ESRAM34
598 db8500_esram34_reg: db8500_esram34 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530599 regulator-compatible = "db8500_esram34";
Lee Jonese5999f22012-05-04 13:32:34 +0100600 };
601
602 // DB8500_REGULATOR_SWITCH_ESRAM34RET
603 db8500_esram34_ret_reg: db8500_esram34_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530604 regulator-compatible = "db8500_esram34_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100605 };
606 };
607
Arnd Bergmannd52701d32013-03-12 09:39:01 +0100608 ab8500 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000609 compatible = "stericsson,ab8500";
Lee Jones8d4c6d42012-08-03 20:37:35 +0100610 interrupt-parent = <&intc>;
Linus Walleij90c40252013-05-29 19:15:39 +0200611 interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones732973c2012-05-29 10:49:33 +0800612 interrupt-controller;
613 #interrupt-cells = <2>;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800614
Lee Jones348f3bc2013-06-18 09:51:57 +0100615 ab8500_gpio: ab8500-gpio {
616 gpio-controller;
617 #gpio-cells = <2>;
618 };
619
Lee Jonesd4b29ac2012-05-26 07:03:48 +0100620 ab8500-rtc {
621 compatible = "stericsson,ab8500-rtc";
Linus Walleij90c40252013-05-29 19:15:39 +0200622 interrupts = <17 IRQ_TYPE_LEVEL_HIGH
623 18 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesd4b29ac2012-05-26 07:03:48 +0100624 interrupt-names = "60S", "ALARM";
625 };
626
Lee Jones4eda9122012-05-28 16:59:26 +0800627 ab8500-gpadc {
628 compatible = "stericsson,ab8500-gpadc";
Linus Walleij90c40252013-05-29 19:15:39 +0200629 interrupts = <32 IRQ_TYPE_LEVEL_HIGH
630 39 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones4eda9122012-05-28 16:59:26 +0800631 interrupt-names = "HW_CONV_END", "SW_CONV_END";
632 vddadc-supply = <&ab8500_ldo_tvout_reg>;
633 };
634
Rajanikanth H.Ve0f1abe2012-11-18 18:45:41 -0800635 ab8500_battery: ab8500_battery {
636 stericsson,battery-type = "LIPO";
637 thermistor-on-batctrl;
638 };
639
640 ab8500_fg {
641 compatible = "stericsson,ab8500-fg";
642 battery = <&ab8500_battery>;
643 };
644
Rajanikanth H.Vbd9e8ab2012-11-18 19:16:58 -0800645 ab8500_btemp {
646 compatible = "stericsson,ab8500-btemp";
647 battery = <&ab8500_battery>;
648 };
649
Rajanikanth H.V4aef72d2012-11-18 19:17:47 -0800650 ab8500_charger {
651 compatible = "stericsson,ab8500-charger";
652 battery = <&ab8500_battery>;
653 vddadc-supply = <&ab8500_ldo_tvout_reg>;
654 };
655
Rajanikanth H.Va12810a2012-10-31 15:40:33 +0000656 ab8500_chargalg {
657 compatible = "stericsson,ab8500-chargalg";
658 battery = <&ab8500_battery>;
659 };
660
Rajanikanth H.Ve0f1abe2012-11-18 18:45:41 -0800661 ab8500_usb {
Lee Jonesee189ce2012-05-03 14:40:24 +0100662 compatible = "stericsson,ab8500-usb";
Linus Walleij90c40252013-05-29 19:15:39 +0200663 interrupts = < 90 IRQ_TYPE_LEVEL_HIGH
664 96 IRQ_TYPE_LEVEL_HIGH
665 14 IRQ_TYPE_LEVEL_HIGH
666 15 IRQ_TYPE_LEVEL_HIGH
667 79 IRQ_TYPE_LEVEL_HIGH
668 74 IRQ_TYPE_LEVEL_HIGH
669 75 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesee189ce2012-05-03 14:40:24 +0100670 interrupt-names = "ID_WAKEUP_R",
671 "ID_WAKEUP_F",
672 "VBUS_DET_F",
673 "VBUS_DET_R",
674 "USB_LINK_STATUS",
675 "USB_ADP_PROBE_PLUG",
676 "USB_ADP_PROBE_UNPLUG";
Fabio Baltieri99b38ee2013-04-09 11:16:56 +0200677 vddulpivio18-supply = <&ab8500_ldo_intcore_reg>;
Lee Jonesee189ce2012-05-03 14:40:24 +0100678 v-ape-supply = <&db8500_vape_reg>;
679 musb_1v8-supply = <&db8500_vsmps2_reg>;
680 };
681
Lee Jones12cb7bd2012-05-02 08:45:40 +0100682 ab8500-ponkey {
Lee Jones74630702012-08-09 13:00:12 +0100683 compatible = "stericsson,ab8500-poweron-key";
Linus Walleij90c40252013-05-29 19:15:39 +0200684 interrupts = <6 IRQ_TYPE_LEVEL_HIGH
685 7 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones12cb7bd2012-05-02 08:45:40 +0100686 interrupt-names = "ONKEY_DBF", "ONKEY_DBR";
687 };
688
Lee Jones401cd1b2012-05-03 12:53:55 +0100689 ab8500-sysctrl {
690 compatible = "stericsson,ab8500-sysctrl";
691 };
692
Lee Jones78451de2012-05-03 13:03:59 +0100693 ab8500-pwm {
694 compatible = "stericsson,ab8500-pwm";
695 };
696
Lee Jones215891e2012-05-01 16:11:19 +0100697 ab8500-debugfs {
698 compatible = "stericsson,ab8500-debug";
699 };
Lee Jones4a85c7f2012-05-29 14:29:53 +0800700
Lee Jones9c06af32012-07-25 12:50:13 +0100701 codec: ab8500-codec {
702 compatible = "stericsson,ab8500-codec";
703
Fabio Baltierif99808a2013-05-30 15:27:43 +0200704 V-AUD-supply = <&ab8500_ldo_audio_reg>;
705 V-AMIC1-supply = <&ab8500_ldo_anamic1_reg>;
706 V-AMIC2-supply = <&ab8500_ldo_anamic2_reg>;
707 V-DMIC-supply = <&ab8500_ldo_dmic_reg>;
708
Lee Jones9c06af32012-07-25 12:50:13 +0100709 stericsson,earpeice-cmv = <950>; /* Units in mV. */
710 };
711
Lee Jones62ebfe62013-06-07 17:11:19 +0100712 ext_regulators: ab8500-ext-regulators {
713 compatible = "stericsson,ab8500-ext-regulator";
714
715 ab8500_ext1_reg: ab8500_ext1 {
716 regulator-compatible = "ab8500_ext1";
717 regulator-min-microvolt = <1800000>;
718 regulator-max-microvolt = <1800000>;
719 regulator-boot-on;
720 regulator-always-on;
721 };
722
723 ab8500_ext2_reg: ab8500_ext2 {
724 regulator-compatible = "ab8500_ext2";
725 regulator-min-microvolt = <1360000>;
726 regulator-max-microvolt = <1360000>;
727 regulator-boot-on;
728 regulator-always-on;
729 };
730
731 ab8500_ext3_reg: ab8500_ext3 {
732 regulator-compatible = "ab8500_ext3";
733 regulator-min-microvolt = <3400000>;
734 regulator-max-microvolt = <3400000>;
735 regulator-boot-on;
736 };
737 };
738
Lee Jones4a85c7f2012-05-29 14:29:53 +0800739 ab8500-regulators {
740 compatible = "stericsson,ab8500-regulator";
Lee Jones75f09992013-06-07 17:11:20 +0100741 vin-supply = <&ab8500_ext3_reg>;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800742
743 // supplies to the display/camera
744 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530745 regulator-compatible = "ab8500_ldo_aux1";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800746 regulator-min-microvolt = <2500000>;
747 regulator-max-microvolt = <2900000>;
748 regulator-boot-on;
749 /* BUG: If turned off MMC will be affected. */
750 regulator-always-on;
751 };
752
753 // supplies to the on-board eMMC
754 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530755 regulator-compatible = "ab8500_ldo_aux2";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800756 regulator-min-microvolt = <1100000>;
757 regulator-max-microvolt = <3300000>;
758 };
759
760 // supply for VAUX3; SDcard slots
761 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530762 regulator-compatible = "ab8500_ldo_aux3";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800763 regulator-min-microvolt = <1100000>;
764 regulator-max-microvolt = <3300000>;
765 };
766
767 // supply for v-intcore12; VINTCORE12 LDO
Fabio Baltieri99b38ee2013-04-09 11:16:56 +0200768 ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
769 regulator-compatible = "ab8500_ldo_intcore";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800770 };
771
772 // supply for tvout; gpadc; TVOUT LDO
773 ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
Laxman Dewanganda268482012-06-20 17:53:05 +0530774 regulator-compatible = "ab8500_ldo_tvout";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800775 };
776
777 // supply for ab8500-usb; USB LDO
778 ab8500_ldo_usb_reg: ab8500_ldo_usb {
Laxman Dewanganda268482012-06-20 17:53:05 +0530779 regulator-compatible = "ab8500_ldo_usb";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800780 };
781
782 // supply for ab8500-vaudio; VAUDIO LDO
783 ab8500_ldo_audio_reg: ab8500_ldo_audio {
Laxman Dewanganda268482012-06-20 17:53:05 +0530784 regulator-compatible = "ab8500_ldo_audio";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800785 };
786
Fabio Baltieri4aa44872013-05-30 15:27:41 +0200787 // supply for v-anamic1 VAMIC1 LDO
Lee Jones4a85c7f2012-05-29 14:29:53 +0800788 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530789 regulator-compatible = "ab8500_ldo_anamic1";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800790 };
791
792 // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1
Fabio Baltieri5510ed92013-05-30 15:27:42 +0200793 ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
794 regulator-compatible = "ab8500_ldo_anamic2";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800795 };
796
797 // supply for v-dmic; VDMIC LDO
798 ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
Laxman Dewanganda268482012-06-20 17:53:05 +0530799 regulator-compatible = "ab8500_ldo_dmic";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800800 };
801
802 // supply for U8500 CSI/DSI; VANA LDO
803 ab8500_ldo_ana_reg: ab8500_ldo_ana {
Laxman Dewanganda268482012-06-20 17:53:05 +0530804 regulator-compatible = "ab8500_ldo_ana";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800805 };
806 };
Lee Jones7e0ce272012-03-15 16:46:17 +0000807 };
808 };
809
810 i2c@80004000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100811 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000812 reg = <0x80004000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200813 interrupts = <0 21 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100814
Lee Jones7e0ce272012-03-15 16:46:17 +0000815 #address-cells = <1>;
816 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100817 v-i2c-supply = <&db8500_vape_reg>;
818
819 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100820 clocks = <&prcc_kclk 3 3>, <&prcc_pclk 3 3>;
821 clock-names = "i2cclk", "apb_pclk";
Ulf Hansson29417fe2014-10-14 11:13:01 +0200822 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000823 };
824
825 i2c@80122000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100826 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000827 reg = <0x80122000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200828 interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100829
Lee Jones7e0ce272012-03-15 16:46:17 +0000830 #address-cells = <1>;
831 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100832 v-i2c-supply = <&db8500_vape_reg>;
833
834 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100835
836 clocks = <&prcc_kclk 1 2>, <&prcc_pclk 1 2>;
837 clock-names = "i2cclk", "apb_pclk";
Ulf Hansson29417fe2014-10-14 11:13:01 +0200838 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000839 };
840
841 i2c@80128000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100842 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000843 reg = <0x80128000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200844 interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100845
Lee Jones7e0ce272012-03-15 16:46:17 +0000846 #address-cells = <1>;
847 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100848 v-i2c-supply = <&db8500_vape_reg>;
849
850 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100851
852 clocks = <&prcc_kclk 1 6>, <&prcc_pclk 1 6>;
853 clock-names = "i2cclk", "apb_pclk";
Ulf Hansson29417fe2014-10-14 11:13:01 +0200854 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000855 };
856
857 i2c@80110000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100858 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000859 reg = <0x80110000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200860 interrupts = <0 12 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100861
Lee Jones7e0ce272012-03-15 16:46:17 +0000862 #address-cells = <1>;
863 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100864 v-i2c-supply = <&db8500_vape_reg>;
865
866 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100867
868 clocks = <&prcc_kclk 2 0>, <&prcc_pclk 2 0>;
869 clock-names = "i2cclk", "apb_pclk";
Ulf Hansson29417fe2014-10-14 11:13:01 +0200870 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000871 };
872
873 i2c@8012a000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100874 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000875 reg = <0x8012a000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200876 interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100877
Lee Jones7e0ce272012-03-15 16:46:17 +0000878 #address-cells = <1>;
879 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100880 v-i2c-supply = <&db8500_vape_reg>;
881
882 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100883
Linus Walleij72b3e242013-10-18 10:39:58 +0200884 clocks = <&prcc_kclk 1 9>, <&prcc_pclk 1 10>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100885 clock-names = "i2cclk", "apb_pclk";
Ulf Hansson29417fe2014-10-14 11:13:01 +0200886 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000887 };
888
889 ssp@80002000 {
890 compatible = "arm,pl022", "arm,primecell";
Lee Jonesc164fa62012-09-07 12:09:34 +0100891 reg = <0x80002000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200892 interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000893 #address-cells = <1>;
894 #size-cells = <0>;
Linus Walleij6e1484c2013-10-18 10:25:52 +0200895 clocks = <&prcc_kclk 3 1>, <&prcc_pclk 3 1>;
Linus Walleij80fbe302014-02-24 13:30:15 +0100896 clock-names = "SSPCLK", "apb_pclk";
Linus Walleij6e1484c2013-10-18 10:25:52 +0200897 dmas = <&dma 8 0 0x2>, /* Logical - DevToMem */
898 <&dma 8 0 0x0>; /* Logical - MemToDev */
899 dma-names = "rx", "tx";
Ulf Hansson770e2f62014-10-14 11:13:00 +0200900 power-domains = <&pm_domains DOMAIN_VAPE>;
Linus Walleij6e1484c2013-10-18 10:25:52 +0200901 };
902
903 ssp@80003000 {
904 compatible = "arm,pl022", "arm,primecell";
905 reg = <0x80003000 0x1000>;
906 interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>;
907 #address-cells = <1>;
908 #size-cells = <0>;
909 clocks = <&prcc_kclk 3 2>, <&prcc_pclk 3 2>;
Linus Walleij80fbe302014-02-24 13:30:15 +0100910 clock-names = "SSPCLK", "apb_pclk";
Linus Walleij6e1484c2013-10-18 10:25:52 +0200911 dmas = <&dma 9 0 0x2>, /* Logical - DevToMem */
912 <&dma 9 0 0x0>; /* Logical - MemToDev */
913 dma-names = "rx", "tx";
Ulf Hansson770e2f62014-10-14 11:13:00 +0200914 power-domains = <&pm_domains DOMAIN_VAPE>;
Linus Walleij6e1484c2013-10-18 10:25:52 +0200915 };
916
917 spi@8011a000 {
918 compatible = "arm,pl022", "arm,primecell";
919 reg = <0x8011a000 0x1000>;
920 interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>;
921 #address-cells = <1>;
922 #size-cells = <0>;
923 /* Same clock wired to kernel and pclk */
924 clocks = <&prcc_pclk 2 8>, <&prcc_pclk 2 8>;
Linus Walleij80fbe302014-02-24 13:30:15 +0100925 clock-names = "SSPCLK", "apb_pclk";
Linus Walleij6e1484c2013-10-18 10:25:52 +0200926 dmas = <&dma 0 0 0x2>, /* Logical - DevToMem */
927 <&dma 0 0 0x0>; /* Logical - MemToDev */
928 dma-names = "rx", "tx";
Ulf Hansson770e2f62014-10-14 11:13:00 +0200929 power-domains = <&pm_domains DOMAIN_VAPE>;
Linus Walleij6e1484c2013-10-18 10:25:52 +0200930 };
931
932 spi@80112000 {
933 compatible = "arm,pl022", "arm,primecell";
934 reg = <0x80112000 0x1000>;
935 interrupts = <0 96 IRQ_TYPE_LEVEL_HIGH>;
936 #address-cells = <1>;
937 #size-cells = <0>;
938 /* Same clock wired to kernel and pclk */
939 clocks = <&prcc_pclk 2 2>, <&prcc_pclk 2 2>;
Linus Walleij80fbe302014-02-24 13:30:15 +0100940 clock-names = "SSPCLK", "apb_pclk";
Linus Walleij6e1484c2013-10-18 10:25:52 +0200941 dmas = <&dma 35 0 0x2>, /* Logical - DevToMem */
942 <&dma 35 0 0x0>; /* Logical - MemToDev */
943 dma-names = "rx", "tx";
Ulf Hansson770e2f62014-10-14 11:13:00 +0200944 power-domains = <&pm_domains DOMAIN_VAPE>;
Linus Walleij6e1484c2013-10-18 10:25:52 +0200945 };
946
947 spi@80111000 {
948 compatible = "arm,pl022", "arm,primecell";
949 reg = <0x80111000 0x1000>;
950 interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>;
951 #address-cells = <1>;
952 #size-cells = <0>;
953 /* Same clock wired to kernel and pclk */
954 clocks = <&prcc_pclk 2 1>, <&prcc_pclk 2 1>;
Linus Walleij80fbe302014-02-24 13:30:15 +0100955 clock-names = "SSPCLK", "apb_pclk";
Linus Walleij6e1484c2013-10-18 10:25:52 +0200956 dmas = <&dma 33 0 0x2>, /* Logical - DevToMem */
957 <&dma 33 0 0x0>; /* Logical - MemToDev */
958 dma-names = "rx", "tx";
Ulf Hansson770e2f62014-10-14 11:13:00 +0200959 power-domains = <&pm_domains DOMAIN_VAPE>;
Linus Walleij6e1484c2013-10-18 10:25:52 +0200960 };
961
962 spi@80129000 {
963 compatible = "arm,pl022", "arm,primecell";
964 reg = <0x80129000 0x1000>;
965 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
966 #address-cells = <1>;
967 #size-cells = <0>;
968 /* Same clock wired to kernel and pclk */
969 clocks = <&prcc_pclk 1 7>, <&prcc_pclk 1 7>;
Linus Walleij80fbe302014-02-24 13:30:15 +0100970 clock-names = "SSPCLK", "apb_pclk";
Linus Walleij6e1484c2013-10-18 10:25:52 +0200971 dmas = <&dma 40 0 0x2>, /* Logical - DevToMem */
972 <&dma 40 0 0x0>; /* Logical - MemToDev */
973 dma-names = "rx", "tx";
Ulf Hansson770e2f62014-10-14 11:13:00 +0200974 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000975 };
976
977 uart@80120000 {
978 compatible = "arm,pl011", "arm,primecell";
979 reg = <0x80120000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200980 interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfbff01c2013-05-03 15:31:49 +0100981
982 dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
983 <&dma 13 0 0x0>; /* Logical - MemToDev */
984 dma-names = "rx", "tx";
985
Lee Jones5a323fb2013-06-03 13:17:17 +0100986 clocks = <&prcc_kclk 1 0>, <&prcc_pclk 1 0>;
987 clock-names = "uart", "apb_pclk";
988
Lee Jones7e0ce272012-03-15 16:46:17 +0000989 status = "disabled";
990 };
Lee Jonesfbff01c2013-05-03 15:31:49 +0100991
Lee Jones7e0ce272012-03-15 16:46:17 +0000992 uart@80121000 {
993 compatible = "arm,pl011", "arm,primecell";
994 reg = <0x80121000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200995 interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfbff01c2013-05-03 15:31:49 +0100996
997 dmas = <&dma 12 0 0x2>, /* Logical - DevToMem */
998 <&dma 12 0 0x0>; /* Logical - MemToDev */
999 dma-names = "rx", "tx";
1000
Lee Jones5a323fb2013-06-03 13:17:17 +01001001 clocks = <&prcc_kclk 1 1>, <&prcc_pclk 1 1>;
1002 clock-names = "uart", "apb_pclk";
1003
Lee Jones7e0ce272012-03-15 16:46:17 +00001004 status = "disabled";
1005 };
Lee Jonesfbff01c2013-05-03 15:31:49 +01001006
Lee Jones7e0ce272012-03-15 16:46:17 +00001007 uart@80007000 {
1008 compatible = "arm,pl011", "arm,primecell";
1009 reg = <0x80007000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001010 interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfbff01c2013-05-03 15:31:49 +01001011
1012 dmas = <&dma 11 0 0x2>, /* Logical - DevToMem */
1013 <&dma 11 0 0x0>; /* Logical - MemToDev */
1014 dma-names = "rx", "tx";
1015
Lee Jones5a323fb2013-06-03 13:17:17 +01001016 clocks = <&prcc_kclk 3 6>, <&prcc_pclk 3 6>;
1017 clock-names = "uart", "apb_pclk";
1018
Lee Jones7e0ce272012-03-15 16:46:17 +00001019 status = "disabled";
1020 };
1021
Lee Jones81bf8c22012-09-26 12:55:56 +01001022 sdi0_per1@80126000 {
Lee Jones7e0ce272012-03-15 16:46:17 +00001023 compatible = "arm,pl18x", "arm,primecell";
1024 reg = <0x80126000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001025 interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +01001026
1027 dmas = <&dma 29 0 0x2>, /* Logical - DevToMem */
1028 <&dma 29 0 0x0>; /* Logical - MemToDev */
1029 dma-names = "rx", "tx";
1030
Lee Jones604be892013-06-06 12:28:50 +01001031 clocks = <&prcc_kclk 1 5>, <&prcc_pclk 1 5>;
1032 clock-names = "sdi", "apb_pclk";
Ulf Hansson067adde2014-10-14 11:12:59 +02001033 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones604be892013-06-06 12:28:50 +01001034
Lee Jones7e0ce272012-03-15 16:46:17 +00001035 status = "disabled";
1036 };
Lee Jones76ff4e42012-10-24 11:10:05 +01001037
Lee Jones81bf8c22012-09-26 12:55:56 +01001038 sdi1_per2@80118000 {
Lee Jones7e0ce272012-03-15 16:46:17 +00001039 compatible = "arm,pl18x", "arm,primecell";
1040 reg = <0x80118000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001041 interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +01001042
1043 dmas = <&dma 32 0 0x2>, /* Logical - DevToMem */
1044 <&dma 32 0 0x0>; /* Logical - MemToDev */
1045 dma-names = "rx", "tx";
1046
Lee Jones604be892013-06-06 12:28:50 +01001047 clocks = <&prcc_kclk 2 4>, <&prcc_pclk 2 6>;
1048 clock-names = "sdi", "apb_pclk";
Ulf Hansson067adde2014-10-14 11:12:59 +02001049 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones604be892013-06-06 12:28:50 +01001050
Lee Jones7e0ce272012-03-15 16:46:17 +00001051 status = "disabled";
1052 };
Lee Jones76ff4e42012-10-24 11:10:05 +01001053
Lee Jones81bf8c22012-09-26 12:55:56 +01001054 sdi2_per3@80005000 {
Lee Jones7e0ce272012-03-15 16:46:17 +00001055 compatible = "arm,pl18x", "arm,primecell";
1056 reg = <0x80005000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001057 interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +01001058
1059 dmas = <&dma 28 0 0x2>, /* Logical - DevToMem */
1060 <&dma 28 0 0x0>; /* Logical - MemToDev */
1061 dma-names = "rx", "tx";
1062
Lee Jones604be892013-06-06 12:28:50 +01001063 clocks = <&prcc_kclk 3 4>, <&prcc_pclk 3 4>;
1064 clock-names = "sdi", "apb_pclk";
Ulf Hansson067adde2014-10-14 11:12:59 +02001065 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones604be892013-06-06 12:28:50 +01001066
Lee Jones7e0ce272012-03-15 16:46:17 +00001067 status = "disabled";
1068 };
Lee Jones76ff4e42012-10-24 11:10:05 +01001069
Lee Jones81bf8c22012-09-26 12:55:56 +01001070 sdi3_per2@80119000 {
Lee Jones7e0ce272012-03-15 16:46:17 +00001071 compatible = "arm,pl18x", "arm,primecell";
1072 reg = <0x80119000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001073 interrupts = <0 59 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones604be892013-06-06 12:28:50 +01001074
Linus Walleij14cdf8c2014-06-11 10:45:50 +02001075 dmas = <&dma 41 0 0x2>, /* Logical - DevToMem */
1076 <&dma 41 0 0x0>; /* Logical - MemToDev */
1077 dma-names = "rx", "tx";
1078
Lee Jones604be892013-06-06 12:28:50 +01001079 clocks = <&prcc_kclk 2 5>, <&prcc_pclk 2 7>;
1080 clock-names = "sdi", "apb_pclk";
Ulf Hansson067adde2014-10-14 11:12:59 +02001081 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones604be892013-06-06 12:28:50 +01001082
Lee Jones7e0ce272012-03-15 16:46:17 +00001083 status = "disabled";
1084 };
Lee Jones76ff4e42012-10-24 11:10:05 +01001085
Lee Jones81bf8c22012-09-26 12:55:56 +01001086 sdi4_per2@80114000 {
Lee Jones7e0ce272012-03-15 16:46:17 +00001087 compatible = "arm,pl18x", "arm,primecell";
1088 reg = <0x80114000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001089 interrupts = <0 99 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +01001090
1091 dmas = <&dma 42 0 0x2>, /* Logical - DevToMem */
1092 <&dma 42 0 0x0>; /* Logical - MemToDev */
1093 dma-names = "rx", "tx";
1094
Lee Jones604be892013-06-06 12:28:50 +01001095 clocks = <&prcc_kclk 2 2>, <&prcc_pclk 2 4>;
1096 clock-names = "sdi", "apb_pclk";
Ulf Hansson067adde2014-10-14 11:12:59 +02001097 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones604be892013-06-06 12:28:50 +01001098
Lee Jones7e0ce272012-03-15 16:46:17 +00001099 status = "disabled";
1100 };
Lee Jones76ff4e42012-10-24 11:10:05 +01001101
Lee Jones81bf8c22012-09-26 12:55:56 +01001102 sdi5_per3@80008000 {
Lee Jones7e0ce272012-03-15 16:46:17 +00001103 compatible = "arm,pl18x", "arm,primecell";
Lee Jones76ff4e42012-10-24 11:10:05 +01001104 reg = <0x80008000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001105 interrupts = <0 100 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones604be892013-06-06 12:28:50 +01001106
Linus Walleij14cdf8c2014-06-11 10:45:50 +02001107 dmas = <&dma 43 0 0x2>, /* Logical - DevToMem */
1108 <&dma 43 0 0x0>; /* Logical - MemToDev */
1109 dma-names = "rx", "tx";
1110
Lee Jones604be892013-06-06 12:28:50 +01001111 clocks = <&prcc_kclk 3 7>, <&prcc_pclk 3 7>;
1112 clock-names = "sdi", "apb_pclk";
Ulf Hansson067adde2014-10-14 11:12:59 +02001113 power-domains = <&pm_domains DOMAIN_VAPE>;
Lee Jones604be892013-06-06 12:28:50 +01001114
Lee Jones7e0ce272012-03-15 16:46:17 +00001115 status = "disabled";
1116 };
Lee Jonesbf76e062012-04-24 10:53:18 +01001117
Lee Jonesfe164522012-07-31 12:37:16 +01001118 msp0: msp@80123000 {
1119 compatible = "stericsson,ux500-msp-i2s";
1120 reg = <0x80123000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001121 interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +01001122 v-ape-supply = <&db8500_vape_reg>;
Lee Jones133e6022013-06-03 13:18:00 +01001123
Lee Jones618111c2013-11-06 10:16:16 +00001124 dmas = <&dma 31 0 0x12>, /* Logical - DevToMem - HighPrio */
1125 <&dma 31 0 0x10>; /* Logical - MemToDev - HighPrio */
1126 dma-names = "rx", "tx";
1127
Lee Jones133e6022013-06-03 13:18:00 +01001128 clocks = <&prcc_kclk 1 3>, <&prcc_pclk 1 3>;
1129 clock-names = "msp", "apb_pclk";
1130
Lee Jonesfe164522012-07-31 12:37:16 +01001131 status = "disabled";
1132 };
1133
1134 msp1: msp@80124000 {
1135 compatible = "stericsson,ux500-msp-i2s";
1136 reg = <0x80124000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001137 interrupts = <0 62 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +01001138 v-ape-supply = <&db8500_vape_reg>;
Lee Jones133e6022013-06-03 13:18:00 +01001139
Linus Walleij14cdf8c2014-06-11 10:45:50 +02001140 /* This DMA channel only exist on DB8500 v1 */
Lee Jones618111c2013-11-06 10:16:16 +00001141 dmas = <&dma 30 0 0x10>; /* Logical - MemToDev - HighPrio */
1142 dma-names = "tx";
1143
Lee Jones133e6022013-06-03 13:18:00 +01001144 clocks = <&prcc_kclk 1 4>, <&prcc_pclk 1 4>;
1145 clock-names = "msp", "apb_pclk";
1146
Lee Jonesfe164522012-07-31 12:37:16 +01001147 status = "disabled";
1148 };
1149
1150 // HDMI sound
1151 msp2: msp@80117000 {
1152 compatible = "stericsson,ux500-msp-i2s";
1153 reg = <0x80117000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001154 interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +01001155 v-ape-supply = <&db8500_vape_reg>;
Lee Jones133e6022013-06-03 13:18:00 +01001156
Lee Jones618111c2013-11-06 10:16:16 +00001157 dmas = <&dma 14 0 0x12>, /* Logical - DevToMem - HighPrio */
1158 <&dma 14 1 0x19>; /* Physical Chan 1 - MemToDev
1159 HighPrio - Fixed */
1160 dma-names = "rx", "tx";
1161
Lee Jones133e6022013-06-03 13:18:00 +01001162 clocks = <&prcc_kclk 2 3>, <&prcc_pclk 2 5>;
1163 clock-names = "msp", "apb_pclk";
1164
Lee Jonesfe164522012-07-31 12:37:16 +01001165 status = "disabled";
1166 };
1167
1168 msp3: msp@80125000 {
1169 compatible = "stericsson,ux500-msp-i2s";
1170 reg = <0x80125000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001171 interrupts = <0 62 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +01001172 v-ape-supply = <&db8500_vape_reg>;
Lee Jones133e6022013-06-03 13:18:00 +01001173
Linus Walleij14cdf8c2014-06-11 10:45:50 +02001174 /* This DMA channel only exist on DB8500 v2 */
Lee Jones618111c2013-11-06 10:16:16 +00001175 dmas = <&dma 30 0 0x12>; /* Logical - DevToMem - HighPrio */
1176 dma-names = "rx";
1177
Lee Jones133e6022013-06-03 13:18:00 +01001178 clocks = <&prcc_kclk 1 10>, <&prcc_pclk 1 11>;
1179 clock-names = "msp", "apb_pclk";
1180
Lee Jonesfe164522012-07-31 12:37:16 +01001181 status = "disabled";
1182 };
1183
Lee Jonesbf76e062012-04-24 10:53:18 +01001184 external-bus@50000000 {
1185 compatible = "simple-bus";
1186 reg = <0x50000000 0x4000000>;
1187 #address-cells = <1>;
1188 #size-cells = <1>;
1189 ranges = <0 0x50000000 0x4000000>;
1190 status = "disabled";
1191 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +08001192
1193 cpufreq-cooling {
1194 compatible = "stericsson,db8500-cpufreq-cooling";
1195 status = "disabled";
Lee Jonesd460d282013-09-18 16:05:04 +01001196 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +08001197
Linus Walleij6e9a88a2013-11-14 15:21:00 +01001198 mcde@a0350000 {
1199 compatible = "stericsson,mcde";
1200 reg = <0xa0350000 0x1000>, /* MCDE */
1201 <0xa0351000 0x1000>, /* DSI link 1 */
1202 <0xa0352000 0x1000>, /* DSI link 2 */
1203 <0xa0353000 0x1000>; /* DSI link 3 */
1204 interrupts = <0 48 IRQ_TYPE_LEVEL_HIGH>;
1205 clocks = <&prcmu_clk PRCMU_MCDECLK>, /* Main MCDE clock */
1206 <&prcmu_clk PRCMU_LCDCLK>, /* LCD clock */
1207 <&prcmu_clk PRCMU_PLLDSI>, /* HDMI clock */
1208 <&prcmu_clk PRCMU_DSI0CLK>, /* DSI 0 */
1209 <&prcmu_clk PRCMU_DSI1CLK>, /* DSI 1 */
1210 <&prcmu_clk PRCMU_DSI0ESCCLK>, /* TVout clock 0 */
1211 <&prcmu_clk PRCMU_DSI1ESCCLK>, /* TVout clock 1 */
1212 <&prcmu_clk PRCMU_DSI2ESCCLK>; /* TVout clock 2 */
1213 };
1214
Lee Jonesfe2e9f92013-05-16 12:27:21 +01001215 cryp@a03cb000 {
1216 compatible = "stericsson,ux500-cryp";
1217 reg = <0xa03cb000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +02001218 interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe2e9f92013-05-16 12:27:21 +01001219
1220 v-ape-supply = <&db8500_vape_reg>;
Lee Jonesd2f898c2013-09-18 16:05:52 +01001221 clocks = <&prcc_pclk 6 1>;
Lee Jonesfe2e9f92013-05-16 12:27:21 +01001222 };
Lee Jones61122cf2013-05-16 12:27:22 +01001223
1224 hash@a03c2000 {
1225 compatible = "stericsson,ux500-hash";
1226 reg = <0xa03c2000 0x1000>;
1227
1228 v-ape-supply = <&db8500_vape_reg>;
Lee Jones024cfe82013-09-18 16:07:27 +01001229 clocks = <&prcc_pclk 6 2>;
Lee Jones61122cf2013-05-16 12:27:22 +01001230 };
Arnd Bergmann5d0769f2012-03-02 23:07:21 +00001231 };
1232};