blob: 924490256b4d3223e12a0269510ea4e4834b78a9 [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>
Gabriel Fernandez807e8832013-05-27 15:30:53 +020014#include "skeleton.dtsi"
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000015
16/ {
Gabriel Fernandezb1ba1432013-03-01 14:38:07 +010017 soc {
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000018 #address-cells = <1>;
19 #size-cells = <1>;
Lee Jones7e0ce272012-03-15 16:46:17 +000020 compatible = "stericsson,db8500";
Lee Jonesdab64872012-03-07 17:22:30 +000021 interrupt-parent = <&intc>;
Arnd Bergmann5d0769f2012-03-02 23:07:21 +000022 ranges;
Lee Jones7e0ce272012-03-15 16:46:17 +000023
Lee Jonesdab64872012-03-07 17:22:30 +000024 intc: interrupt-controller@a0411000 {
25 compatible = "arm,cortex-a9-gic";
26 #interrupt-cells = <3>;
27 #address-cells = <1>;
28 interrupt-controller;
Lee Jonesdab64872012-03-07 17:22:30 +000029 reg = <0xa0411000 0x1000>,
30 <0xa0410100 0x100>;
31 };
32
Lee Jonesf1949ea2012-03-08 09:02:02 +000033 L2: l2-cache {
34 compatible = "arm,pl310-cache";
35 reg = <0xa0412000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +020036 interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesf1949ea2012-03-08 09:02:02 +000037 cache-unified;
38 cache-level = <2>;
39 };
40
Lee Jones7e0ce272012-03-15 16:46:17 +000041 pmu {
42 compatible = "arm,cortex-a9-pmu";
Linus Walleij90c40252013-05-29 19:15:39 +020043 interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +000044 };
45
Lee Jones841cd0c2013-09-18 09:53:10 +010046 clocks {
47 compatible = "stericsson,u8500-clks";
48
49 prcmu_clk: prcmu-clock {
50 #clock-cells = <1>;
51 };
Lee Jonesfcbe5e92013-06-06 10:51:04 +010052
53 prcc_pclk: prcc-periph-clock {
54 #clock-cells = <2>;
55 };
Lee Jones2588fea2013-06-06 10:52:50 +010056
57 prcc_kclk: prcc-kernel-clock {
58 #clock-cells = <2>;
59 };
Lee Jones841cd0c2013-09-18 09:53:10 +010060 };
61
Lee Jones71de5c42012-03-16 09:53:24 +000062 timer@a0410600 {
63 compatible = "arm,cortex-a9-twd-timer";
64 reg = <0xa0410600 0x20>;
Linus Walleij90c40252013-05-29 19:15:39 +020065 interrupts = <1 13 0x304>; /* IRQ level high per-CPU */
Lee Jones71de5c42012-03-16 09:53:24 +000066 };
67
Lee Jones7e0ce272012-03-15 16:46:17 +000068 rtc@80154000 {
Lee Jonesddb3b992012-05-26 07:01:31 +010069 compatible = "arm,rtc-pl031", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +000070 reg = <0x80154000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +020071 interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +000072 };
73
74 gpio0: gpio@8012e000 {
75 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +010076 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +000077 reg = <0x8012e000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +020078 interrupts = <0 119 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +080079 interrupt-controller;
80 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +010081 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +000082 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +010083 #gpio-cells = <2>;
84 gpio-bank = <0>;
Lee Jones9d891072013-06-03 13:07:51 +010085
86 clocks = <&prcc_pclk 1 9>;
Lee Jones7e0ce272012-03-15 16:46:17 +000087 };
88
89 gpio1: gpio@8012e080 {
90 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +010091 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +000092 reg = <0x8012e080 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +020093 interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +080094 interrupt-controller;
95 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +010096 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +000097 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +010098 #gpio-cells = <2>;
99 gpio-bank = <1>;
Lee Jones9d891072013-06-03 13:07:51 +0100100
101 clocks = <&prcc_pclk 1 9>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000102 };
103
104 gpio2: gpio@8000e000 {
105 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100106 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000107 reg = <0x8000e000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200108 interrupts = <0 121 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800109 interrupt-controller;
110 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100111 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000112 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100113 #gpio-cells = <2>;
114 gpio-bank = <2>;
Lee Jones9d891072013-06-03 13:07:51 +0100115
116 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000117 };
118
119 gpio3: gpio@8000e080 {
120 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100121 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000122 reg = <0x8000e080 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200123 interrupts = <0 122 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800124 interrupt-controller;
125 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100126 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000127 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100128 #gpio-cells = <2>;
129 gpio-bank = <3>;
Lee Jones9d891072013-06-03 13:07:51 +0100130
131 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000132 };
133
134 gpio4: gpio@8000e100 {
135 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100136 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000137 reg = <0x8000e100 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200138 interrupts = <0 123 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800139 interrupt-controller;
140 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100141 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000142 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100143 #gpio-cells = <2>;
144 gpio-bank = <4>;
Lee Jones9d891072013-06-03 13:07:51 +0100145
146 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000147 };
148
149 gpio5: gpio@8000e180 {
150 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100151 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000152 reg = <0x8000e180 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200153 interrupts = <0 124 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800154 interrupt-controller;
155 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100156 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000157 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100158 #gpio-cells = <2>;
159 gpio-bank = <5>;
Lee Jones9d891072013-06-03 13:07:51 +0100160
161 clocks = <&prcc_pclk 3 8>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000162 };
163
164 gpio6: gpio@8011e000 {
165 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100166 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000167 reg = <0x8011e000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200168 interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800169 interrupt-controller;
170 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100171 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000172 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100173 #gpio-cells = <2>;
174 gpio-bank = <6>;
Lee Jones9d891072013-06-03 13:07:51 +0100175
176 clocks = <&prcc_pclk 2 1>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000177 };
178
179 gpio7: gpio@8011e080 {
180 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100181 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000182 reg = <0x8011e080 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200183 interrupts = <0 126 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800184 interrupt-controller;
185 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100186 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000187 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100188 #gpio-cells = <2>;
189 gpio-bank = <7>;
Lee Jones9d891072013-06-03 13:07:51 +0100190
191 clocks = <&prcc_pclk 2 1>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000192 };
193
194 gpio8: gpio@a03fe000 {
195 compatible = "stericsson,db8500-gpio",
Lee Jonesfd9a80b2012-04-13 15:05:03 +0100196 "st,nomadik-gpio";
Lee Jones7e0ce272012-03-15 16:46:17 +0000197 reg = <0xa03fe000 0x80>;
Linus Walleij90c40252013-05-29 19:15:39 +0200198 interrupts = <0 127 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones93b56982012-05-29 14:17:36 +0800199 interrupt-controller;
200 #interrupt-cells = <2>;
Lee Jones61be4982012-06-14 11:16:03 +0100201 st,supports-sleepmode;
Lee Jones7e0ce272012-03-15 16:46:17 +0000202 gpio-controller;
Lee Jonesc0b133b2012-04-13 15:05:05 +0100203 #gpio-cells = <2>;
204 gpio-bank = <8>;
Lee Jones9d891072013-06-03 13:07:51 +0100205
206 clocks = <&prcc_pclk 6 1>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000207 };
208
Lee Jones8979cfe2013-01-11 15:45:28 +0000209 pinctrl {
Lee Jones818d99a2013-05-22 15:22:55 +0100210 compatible = "stericsson,db8500-pinctrl";
Lee Jones8979cfe2013-01-11 15:45:28 +0000211 prcm = <&prcmu>;
Lee Jones5910de92012-05-26 06:25:36 +0100212 };
213
Lee Jonesb32dc862013-05-03 15:31:51 +0100214 usb_per5@a03e0000 {
Sebastian Andrzej Siewior4a6cd432013-08-20 18:40:27 +0200215 compatible = "stericsson,db8500-musb";
Lee Jones7e0ce272012-03-15 16:46:17 +0000216 reg = <0xa03e0000 0x10000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200217 interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesb32dc862013-05-03 15:31:51 +0100218 interrupt-names = "mc";
219
220 dr_mode = "otg";
221
222 dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */
223 <&dma 38 0 0x0>, /* Logical - MemToDev */
224 <&dma 37 0 0x2>, /* Logical - DevToMem */
225 <&dma 37 0 0x0>, /* Logical - MemToDev */
226 <&dma 36 0 0x2>, /* Logical - DevToMem */
227 <&dma 36 0 0x0>, /* Logical - MemToDev */
228 <&dma 19 0 0x2>, /* Logical - DevToMem */
229 <&dma 19 0 0x0>, /* Logical - MemToDev */
230 <&dma 18 0 0x2>, /* Logical - DevToMem */
231 <&dma 18 0 0x0>, /* Logical - MemToDev */
232 <&dma 17 0 0x2>, /* Logical - DevToMem */
233 <&dma 17 0 0x0>, /* Logical - MemToDev */
234 <&dma 16 0 0x2>, /* Logical - DevToMem */
235 <&dma 16 0 0x0>, /* Logical - MemToDev */
236 <&dma 39 0 0x2>, /* Logical - DevToMem */
237 <&dma 39 0 0x0>; /* Logical - MemToDev */
238
239 dma-names = "iep_1_9", "oep_1_9",
240 "iep_2_10", "oep_2_10",
241 "iep_3_11", "oep_3_11",
242 "iep_4_12", "oep_4_12",
243 "iep_5_13", "oep_5_13",
244 "iep_6_14", "oep_6_14",
245 "iep_7_15", "oep_7_15",
246 "iep_8", "oep_8";
Lee Jonese47339f2013-06-03 13:08:26 +0100247
248 clocks = <&prcc_pclk 5 0>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000249 };
250
Lee Jonesba074ae2013-05-03 15:31:48 +0100251 dma: dma-controller@801C0000 {
252 compatible = "stericsson,db8500-dma40", "stericsson,dma40";
Lee Jones7e0ce272012-03-15 16:46:17 +0000253 reg = <0x801C0000 0x1000 0x40010000 0x800>;
Lee Jones70d39a82013-05-03 15:31:47 +0100254 reg-names = "base", "lcpa";
Linus Walleij90c40252013-05-29 19:15:39 +0200255 interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesba074ae2013-05-03 15:31:48 +0100256
257 #dma-cells = <3>;
Lee Jonesd37fcdb2013-05-03 15:31:52 +0100258 memcpy-channels = <56 57 58 59 60>;
Lee Jonese064cb22013-06-03 13:13:54 +0100259
260 clocks = <&prcmu_clk PRCMU_DMACLK>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000261 };
262
Lee Jones8979cfe2013-01-11 15:45:28 +0000263 prcmu: prcmu@80157000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000264 compatible = "stericsson,db8500-prcmu";
Linus Torvalds4d26aa32013-05-02 08:56:55 -0700265 reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x1000>;
Lee Jonese73081d2013-03-26 10:26:15 +0000266 reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm";
Linus Walleij90c40252013-05-29 19:15:39 +0200267 interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000268 #address-cells = <1>;
Lee Jones3de3d742012-04-24 10:00:15 +0100269 #size-cells = <1>;
Lee Jonesc09090b2012-08-03 15:42:25 +0100270 interrupt-controller;
271 #interrupt-cells = <2>;
Lee Jones3de3d742012-04-24 10:00:15 +0100272 ranges;
273
Lee Jonesccf74f72012-05-28 16:50:49 +0800274 prcmu-timer-4@80157450 {
Lee Jones3de3d742012-04-24 10:00:15 +0100275 compatible = "stericsson,db8500-prcmu-timer-4";
276 reg = <0x80157450 0xC>;
277 };
Lee Jones7e0ce272012-03-15 16:46:17 +0000278
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800279 thermal@801573c0 {
280 compatible = "stericsson,db8500-thermal";
281 reg = <0x801573c0 0x40>;
Linus Walleij90c40252013-05-29 19:15:39 +0200282 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>,
283 <22 IRQ_TYPE_LEVEL_HIGH>;
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800284 interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH";
285 status = "disabled";
Lee Jones1d3f99f2013-06-06 12:21:15 +0100286 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800287
Lee Jonese5999f22012-05-04 13:32:34 +0100288 db8500-prcmu-regulators {
289 compatible = "stericsson,db8500-prcmu-regulator";
290
291 // DB8500_REGULATOR_VAPE
292 db8500_vape_reg: db8500_vape {
Laxman Dewanganda268482012-06-20 17:53:05 +0530293 regulator-compatible = "db8500_vape";
Lee Jonese5999f22012-05-04 13:32:34 +0100294 regulator-always-on;
295 };
296
297 // DB8500_REGULATOR_VARM
298 db8500_varm_reg: db8500_varm {
Laxman Dewanganda268482012-06-20 17:53:05 +0530299 regulator-compatible = "db8500_varm";
Lee Jonese5999f22012-05-04 13:32:34 +0100300 };
301
302 // DB8500_REGULATOR_VMODEM
303 db8500_vmodem_reg: db8500_vmodem {
Laxman Dewanganda268482012-06-20 17:53:05 +0530304 regulator-compatible = "db8500_vmodem";
Lee Jonese5999f22012-05-04 13:32:34 +0100305 };
306
307 // DB8500_REGULATOR_VPLL
308 db8500_vpll_reg: db8500_vpll {
Laxman Dewanganda268482012-06-20 17:53:05 +0530309 regulator-compatible = "db8500_vpll";
Lee Jonese5999f22012-05-04 13:32:34 +0100310 };
311
312 // DB8500_REGULATOR_VSMPS1
313 db8500_vsmps1_reg: db8500_vsmps1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530314 regulator-compatible = "db8500_vsmps1";
Lee Jonese5999f22012-05-04 13:32:34 +0100315 };
316
317 // DB8500_REGULATOR_VSMPS2
318 db8500_vsmps2_reg: db8500_vsmps2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530319 regulator-compatible = "db8500_vsmps2";
Lee Jonese5999f22012-05-04 13:32:34 +0100320 };
321
322 // DB8500_REGULATOR_VSMPS3
323 db8500_vsmps3_reg: db8500_vsmps3 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530324 regulator-compatible = "db8500_vsmps3";
Lee Jonese5999f22012-05-04 13:32:34 +0100325 };
326
327 // DB8500_REGULATOR_VRF1
328 db8500_vrf1_reg: db8500_vrf1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530329 regulator-compatible = "db8500_vrf1";
Lee Jonese5999f22012-05-04 13:32:34 +0100330 };
331
332 // DB8500_REGULATOR_SWITCH_SVAMMDSP
333 db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
Laxman Dewanganda268482012-06-20 17:53:05 +0530334 regulator-compatible = "db8500_sva_mmdsp";
Lee Jonese5999f22012-05-04 13:32:34 +0100335 };
336
337 // DB8500_REGULATOR_SWITCH_SVAMMDSPRET
338 db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530339 regulator-compatible = "db8500_sva_mmdsp_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100340 };
341
342 // DB8500_REGULATOR_SWITCH_SVAPIPE
343 db8500_sva_pipe_reg: db8500_sva_pipe {
Laxman Dewanganda268482012-06-20 17:53:05 +0530344 regulator-compatible = "db8500_sva_pipe";
Lee Jonese5999f22012-05-04 13:32:34 +0100345 };
346
347 // DB8500_REGULATOR_SWITCH_SIAMMDSP
348 db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
Laxman Dewanganda268482012-06-20 17:53:05 +0530349 regulator-compatible = "db8500_sia_mmdsp";
Lee Jonese5999f22012-05-04 13:32:34 +0100350 };
351
352 // DB8500_REGULATOR_SWITCH_SIAMMDSPRET
353 db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
Lee Jonese5999f22012-05-04 13:32:34 +0100354 };
355
356 // DB8500_REGULATOR_SWITCH_SIAPIPE
357 db8500_sia_pipe_reg: db8500_sia_pipe {
Laxman Dewanganda268482012-06-20 17:53:05 +0530358 regulator-compatible = "db8500_sia_pipe";
Lee Jonese5999f22012-05-04 13:32:34 +0100359 };
360
361 // DB8500_REGULATOR_SWITCH_SGA
362 db8500_sga_reg: db8500_sga {
Laxman Dewanganda268482012-06-20 17:53:05 +0530363 regulator-compatible = "db8500_sga";
Lee Jonese5999f22012-05-04 13:32:34 +0100364 vin-supply = <&db8500_vape_reg>;
365 };
366
367 // DB8500_REGULATOR_SWITCH_B2R2_MCDE
368 db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
Laxman Dewanganda268482012-06-20 17:53:05 +0530369 regulator-compatible = "db8500_b2r2_mcde";
Lee Jonese5999f22012-05-04 13:32:34 +0100370 vin-supply = <&db8500_vape_reg>;
371 };
372
373 // DB8500_REGULATOR_SWITCH_ESRAM12
374 db8500_esram12_reg: db8500_esram12 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530375 regulator-compatible = "db8500_esram12";
Lee Jonese5999f22012-05-04 13:32:34 +0100376 };
377
378 // DB8500_REGULATOR_SWITCH_ESRAM12RET
379 db8500_esram12_ret_reg: db8500_esram12_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530380 regulator-compatible = "db8500_esram12_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100381 };
382
383 // DB8500_REGULATOR_SWITCH_ESRAM34
384 db8500_esram34_reg: db8500_esram34 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530385 regulator-compatible = "db8500_esram34";
Lee Jonese5999f22012-05-04 13:32:34 +0100386 };
387
388 // DB8500_REGULATOR_SWITCH_ESRAM34RET
389 db8500_esram34_ret_reg: db8500_esram34_ret {
Laxman Dewanganda268482012-06-20 17:53:05 +0530390 regulator-compatible = "db8500_esram34_ret";
Lee Jonese5999f22012-05-04 13:32:34 +0100391 };
392 };
393
Arnd Bergmannd52701d32013-03-12 09:39:01 +0100394 ab8500 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000395 compatible = "stericsson,ab8500";
Lee Jones8d4c6d42012-08-03 20:37:35 +0100396 interrupt-parent = <&intc>;
Linus Walleij90c40252013-05-29 19:15:39 +0200397 interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones732973c2012-05-29 10:49:33 +0800398 interrupt-controller;
399 #interrupt-cells = <2>;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800400
Lee Jones348f3bc2013-06-18 09:51:57 +0100401 ab8500_gpio: ab8500-gpio {
402 gpio-controller;
403 #gpio-cells = <2>;
404 };
405
Lee Jonesd4b29ac2012-05-26 07:03:48 +0100406 ab8500-rtc {
407 compatible = "stericsson,ab8500-rtc";
Linus Walleij90c40252013-05-29 19:15:39 +0200408 interrupts = <17 IRQ_TYPE_LEVEL_HIGH
409 18 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesd4b29ac2012-05-26 07:03:48 +0100410 interrupt-names = "60S", "ALARM";
411 };
412
Lee Jones4eda9122012-05-28 16:59:26 +0800413 ab8500-gpadc {
414 compatible = "stericsson,ab8500-gpadc";
Linus Walleij90c40252013-05-29 19:15:39 +0200415 interrupts = <32 IRQ_TYPE_LEVEL_HIGH
416 39 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones4eda9122012-05-28 16:59:26 +0800417 interrupt-names = "HW_CONV_END", "SW_CONV_END";
418 vddadc-supply = <&ab8500_ldo_tvout_reg>;
419 };
420
Rajanikanth H.Ve0f1abe2012-11-18 18:45:41 -0800421 ab8500_battery: ab8500_battery {
422 stericsson,battery-type = "LIPO";
423 thermistor-on-batctrl;
424 };
425
426 ab8500_fg {
427 compatible = "stericsson,ab8500-fg";
428 battery = <&ab8500_battery>;
429 };
430
Rajanikanth H.Vbd9e8ab2012-11-18 19:16:58 -0800431 ab8500_btemp {
432 compatible = "stericsson,ab8500-btemp";
433 battery = <&ab8500_battery>;
434 };
435
Rajanikanth H.V4aef72d2012-11-18 19:17:47 -0800436 ab8500_charger {
437 compatible = "stericsson,ab8500-charger";
438 battery = <&ab8500_battery>;
439 vddadc-supply = <&ab8500_ldo_tvout_reg>;
440 };
441
Rajanikanth H.Va12810a2012-10-31 15:40:33 +0000442 ab8500_chargalg {
443 compatible = "stericsson,ab8500-chargalg";
444 battery = <&ab8500_battery>;
445 };
446
Rajanikanth H.Ve0f1abe2012-11-18 18:45:41 -0800447 ab8500_usb {
Lee Jonesee189ce2012-05-03 14:40:24 +0100448 compatible = "stericsson,ab8500-usb";
Linus Walleij90c40252013-05-29 19:15:39 +0200449 interrupts = < 90 IRQ_TYPE_LEVEL_HIGH
450 96 IRQ_TYPE_LEVEL_HIGH
451 14 IRQ_TYPE_LEVEL_HIGH
452 15 IRQ_TYPE_LEVEL_HIGH
453 79 IRQ_TYPE_LEVEL_HIGH
454 74 IRQ_TYPE_LEVEL_HIGH
455 75 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesee189ce2012-05-03 14:40:24 +0100456 interrupt-names = "ID_WAKEUP_R",
457 "ID_WAKEUP_F",
458 "VBUS_DET_F",
459 "VBUS_DET_R",
460 "USB_LINK_STATUS",
461 "USB_ADP_PROBE_PLUG",
462 "USB_ADP_PROBE_UNPLUG";
Fabio Baltieri99b38ee2013-04-09 11:16:56 +0200463 vddulpivio18-supply = <&ab8500_ldo_intcore_reg>;
Lee Jonesee189ce2012-05-03 14:40:24 +0100464 v-ape-supply = <&db8500_vape_reg>;
465 musb_1v8-supply = <&db8500_vsmps2_reg>;
466 };
467
Lee Jones12cb7bd2012-05-02 08:45:40 +0100468 ab8500-ponkey {
Lee Jones74630702012-08-09 13:00:12 +0100469 compatible = "stericsson,ab8500-poweron-key";
Linus Walleij90c40252013-05-29 19:15:39 +0200470 interrupts = <6 IRQ_TYPE_LEVEL_HIGH
471 7 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones12cb7bd2012-05-02 08:45:40 +0100472 interrupt-names = "ONKEY_DBF", "ONKEY_DBR";
473 };
474
Lee Jones401cd1b2012-05-03 12:53:55 +0100475 ab8500-sysctrl {
476 compatible = "stericsson,ab8500-sysctrl";
477 };
478
Lee Jones78451de2012-05-03 13:03:59 +0100479 ab8500-pwm {
480 compatible = "stericsson,ab8500-pwm";
481 };
482
Lee Jones215891e2012-05-01 16:11:19 +0100483 ab8500-debugfs {
484 compatible = "stericsson,ab8500-debug";
485 };
Lee Jones4a85c7f2012-05-29 14:29:53 +0800486
Lee Jones9c06af32012-07-25 12:50:13 +0100487 codec: ab8500-codec {
488 compatible = "stericsson,ab8500-codec";
489
Fabio Baltierif99808a2013-05-30 15:27:43 +0200490 V-AUD-supply = <&ab8500_ldo_audio_reg>;
491 V-AMIC1-supply = <&ab8500_ldo_anamic1_reg>;
492 V-AMIC2-supply = <&ab8500_ldo_anamic2_reg>;
493 V-DMIC-supply = <&ab8500_ldo_dmic_reg>;
494
Lee Jones9c06af32012-07-25 12:50:13 +0100495 stericsson,earpeice-cmv = <950>; /* Units in mV. */
496 };
497
Lee Jones62ebfe62013-06-07 17:11:19 +0100498 ext_regulators: ab8500-ext-regulators {
499 compatible = "stericsson,ab8500-ext-regulator";
500
501 ab8500_ext1_reg: ab8500_ext1 {
502 regulator-compatible = "ab8500_ext1";
503 regulator-min-microvolt = <1800000>;
504 regulator-max-microvolt = <1800000>;
505 regulator-boot-on;
506 regulator-always-on;
507 };
508
509 ab8500_ext2_reg: ab8500_ext2 {
510 regulator-compatible = "ab8500_ext2";
511 regulator-min-microvolt = <1360000>;
512 regulator-max-microvolt = <1360000>;
513 regulator-boot-on;
514 regulator-always-on;
515 };
516
517 ab8500_ext3_reg: ab8500_ext3 {
518 regulator-compatible = "ab8500_ext3";
519 regulator-min-microvolt = <3400000>;
520 regulator-max-microvolt = <3400000>;
521 regulator-boot-on;
522 };
523 };
524
Lee Jones4a85c7f2012-05-29 14:29:53 +0800525 ab8500-regulators {
526 compatible = "stericsson,ab8500-regulator";
Lee Jones75f09992013-06-07 17:11:20 +0100527 vin-supply = <&ab8500_ext3_reg>;
Lee Jones4a85c7f2012-05-29 14:29:53 +0800528
529 // supplies to the display/camera
530 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530531 regulator-compatible = "ab8500_ldo_aux1";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800532 regulator-min-microvolt = <2500000>;
533 regulator-max-microvolt = <2900000>;
534 regulator-boot-on;
535 /* BUG: If turned off MMC will be affected. */
536 regulator-always-on;
537 };
538
539 // supplies to the on-board eMMC
540 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530541 regulator-compatible = "ab8500_ldo_aux2";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800542 regulator-min-microvolt = <1100000>;
543 regulator-max-microvolt = <3300000>;
544 };
545
546 // supply for VAUX3; SDcard slots
547 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530548 regulator-compatible = "ab8500_ldo_aux3";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800549 regulator-min-microvolt = <1100000>;
550 regulator-max-microvolt = <3300000>;
551 };
552
553 // supply for v-intcore12; VINTCORE12 LDO
Fabio Baltieri99b38ee2013-04-09 11:16:56 +0200554 ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
555 regulator-compatible = "ab8500_ldo_intcore";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800556 };
557
558 // supply for tvout; gpadc; TVOUT LDO
559 ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
Laxman Dewanganda268482012-06-20 17:53:05 +0530560 regulator-compatible = "ab8500_ldo_tvout";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800561 };
562
563 // supply for ab8500-usb; USB LDO
564 ab8500_ldo_usb_reg: ab8500_ldo_usb {
Laxman Dewanganda268482012-06-20 17:53:05 +0530565 regulator-compatible = "ab8500_ldo_usb";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800566 };
567
568 // supply for ab8500-vaudio; VAUDIO LDO
569 ab8500_ldo_audio_reg: ab8500_ldo_audio {
Laxman Dewanganda268482012-06-20 17:53:05 +0530570 regulator-compatible = "ab8500_ldo_audio";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800571 };
572
Fabio Baltieri4aa44872013-05-30 15:27:41 +0200573 // supply for v-anamic1 VAMIC1 LDO
Lee Jones4a85c7f2012-05-29 14:29:53 +0800574 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
Laxman Dewanganda268482012-06-20 17:53:05 +0530575 regulator-compatible = "ab8500_ldo_anamic1";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800576 };
577
578 // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1
Fabio Baltieri5510ed92013-05-30 15:27:42 +0200579 ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
580 regulator-compatible = "ab8500_ldo_anamic2";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800581 };
582
583 // supply for v-dmic; VDMIC LDO
584 ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
Laxman Dewanganda268482012-06-20 17:53:05 +0530585 regulator-compatible = "ab8500_ldo_dmic";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800586 };
587
588 // supply for U8500 CSI/DSI; VANA LDO
589 ab8500_ldo_ana_reg: ab8500_ldo_ana {
Laxman Dewanganda268482012-06-20 17:53:05 +0530590 regulator-compatible = "ab8500_ldo_ana";
Lee Jones4a85c7f2012-05-29 14:29:53 +0800591 };
592 };
Lee Jones7e0ce272012-03-15 16:46:17 +0000593 };
594 };
595
596 i2c@80004000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100597 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000598 reg = <0x80004000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200599 interrupts = <0 21 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100600
Lee Jones7e0ce272012-03-15 16:46:17 +0000601 #address-cells = <1>;
602 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100603 v-i2c-supply = <&db8500_vape_reg>;
604
605 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100606 clocks = <&prcc_kclk 3 3>, <&prcc_pclk 3 3>;
607 clock-names = "i2cclk", "apb_pclk";
Lee Jones7e0ce272012-03-15 16:46:17 +0000608 };
609
610 i2c@80122000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100611 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000612 reg = <0x80122000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200613 interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100614
Lee Jones7e0ce272012-03-15 16:46:17 +0000615 #address-cells = <1>;
616 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100617 v-i2c-supply = <&db8500_vape_reg>;
618
619 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100620
621 clocks = <&prcc_kclk 1 2>, <&prcc_pclk 1 2>;
622 clock-names = "i2cclk", "apb_pclk";
Lee Jones7e0ce272012-03-15 16:46:17 +0000623 };
624
625 i2c@80128000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100626 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000627 reg = <0x80128000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200628 interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100629
Lee Jones7e0ce272012-03-15 16:46:17 +0000630 #address-cells = <1>;
631 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100632 v-i2c-supply = <&db8500_vape_reg>;
633
634 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100635
636 clocks = <&prcc_kclk 1 6>, <&prcc_pclk 1 6>;
637 clock-names = "i2cclk", "apb_pclk";
Lee Jones7e0ce272012-03-15 16:46:17 +0000638 };
639
640 i2c@80110000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100641 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000642 reg = <0x80110000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200643 interrupts = <0 12 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100644
Lee Jones7e0ce272012-03-15 16:46:17 +0000645 #address-cells = <1>;
646 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100647 v-i2c-supply = <&db8500_vape_reg>;
648
649 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100650
651 clocks = <&prcc_kclk 2 0>, <&prcc_pclk 2 0>;
652 clock-names = "i2cclk", "apb_pclk";
Lee Jones7e0ce272012-03-15 16:46:17 +0000653 };
654
655 i2c@8012a000 {
Lee Jonesd524fa72012-06-18 09:55:44 +0100656 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
Lee Jones7e0ce272012-03-15 16:46:17 +0000657 reg = <0x8012a000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200658 interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones35b33d22012-10-24 11:07:02 +0100659
Lee Jones7e0ce272012-03-15 16:46:17 +0000660 #address-cells = <1>;
661 #size-cells = <0>;
Lee Jonesd524fa72012-06-18 09:55:44 +0100662 v-i2c-supply = <&db8500_vape_reg>;
663
664 clock-frequency = <400000>;
Lee Jonesafd653e2013-06-03 13:15:22 +0100665
666 clocks = <&prcc_kclk 1 9>, <&prcc_pclk 1 9>;
667 clock-names = "i2cclk", "apb_pclk";
Lee Jones7e0ce272012-03-15 16:46:17 +0000668 };
669
670 ssp@80002000 {
671 compatible = "arm,pl022", "arm,primecell";
Lee Jonesc164fa62012-09-07 12:09:34 +0100672 reg = <0x80002000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200673 interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000674 #address-cells = <1>;
675 #size-cells = <0>;
676 status = "disabled";
Lee Jones7e0ce272012-03-15 16:46:17 +0000677 };
678
679 uart@80120000 {
680 compatible = "arm,pl011", "arm,primecell";
681 reg = <0x80120000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200682 interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfbff01c2013-05-03 15:31:49 +0100683
684 dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
685 <&dma 13 0 0x0>; /* Logical - MemToDev */
686 dma-names = "rx", "tx";
687
Lee Jones7e0ce272012-03-15 16:46:17 +0000688 status = "disabled";
689 };
Lee Jonesfbff01c2013-05-03 15:31:49 +0100690
Lee Jones7e0ce272012-03-15 16:46:17 +0000691 uart@80121000 {
692 compatible = "arm,pl011", "arm,primecell";
693 reg = <0x80121000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200694 interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfbff01c2013-05-03 15:31:49 +0100695
696 dmas = <&dma 12 0 0x2>, /* Logical - DevToMem */
697 <&dma 12 0 0x0>; /* Logical - MemToDev */
698 dma-names = "rx", "tx";
699
Lee Jones7e0ce272012-03-15 16:46:17 +0000700 status = "disabled";
701 };
Lee Jonesfbff01c2013-05-03 15:31:49 +0100702
Lee Jones7e0ce272012-03-15 16:46:17 +0000703 uart@80007000 {
704 compatible = "arm,pl011", "arm,primecell";
705 reg = <0x80007000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200706 interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfbff01c2013-05-03 15:31:49 +0100707
708 dmas = <&dma 11 0 0x2>, /* Logical - DevToMem */
709 <&dma 11 0 0x0>; /* Logical - MemToDev */
710 dma-names = "rx", "tx";
711
Lee Jones7e0ce272012-03-15 16:46:17 +0000712 status = "disabled";
713 };
714
Lee Jones81bf8c22012-09-26 12:55:56 +0100715 sdi0_per1@80126000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000716 compatible = "arm,pl18x", "arm,primecell";
717 reg = <0x80126000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200718 interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +0100719
720 dmas = <&dma 29 0 0x2>, /* Logical - DevToMem */
721 <&dma 29 0 0x0>; /* Logical - MemToDev */
722 dma-names = "rx", "tx";
723
Lee Jones7e0ce272012-03-15 16:46:17 +0000724 status = "disabled";
725 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100726
Lee Jones81bf8c22012-09-26 12:55:56 +0100727 sdi1_per2@80118000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000728 compatible = "arm,pl18x", "arm,primecell";
729 reg = <0x80118000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200730 interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +0100731
732 dmas = <&dma 32 0 0x2>, /* Logical - DevToMem */
733 <&dma 32 0 0x0>; /* Logical - MemToDev */
734 dma-names = "rx", "tx";
735
Lee Jones7e0ce272012-03-15 16:46:17 +0000736 status = "disabled";
737 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100738
Lee Jones81bf8c22012-09-26 12:55:56 +0100739 sdi2_per3@80005000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000740 compatible = "arm,pl18x", "arm,primecell";
741 reg = <0x80005000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200742 interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +0100743
744 dmas = <&dma 28 0 0x2>, /* Logical - DevToMem */
745 <&dma 28 0 0x0>; /* Logical - MemToDev */
746 dma-names = "rx", "tx";
747
Lee Jones7e0ce272012-03-15 16:46:17 +0000748 status = "disabled";
749 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100750
Lee Jones81bf8c22012-09-26 12:55:56 +0100751 sdi3_per2@80119000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000752 compatible = "arm,pl18x", "arm,primecell";
753 reg = <0x80119000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200754 interrupts = <0 59 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000755 status = "disabled";
756 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100757
Lee Jones81bf8c22012-09-26 12:55:56 +0100758 sdi4_per2@80114000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000759 compatible = "arm,pl18x", "arm,primecell";
760 reg = <0x80114000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200761 interrupts = <0 99 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones498315b92013-05-03 15:31:50 +0100762
763 dmas = <&dma 42 0 0x2>, /* Logical - DevToMem */
764 <&dma 42 0 0x0>; /* Logical - MemToDev */
765 dma-names = "rx", "tx";
766
Lee Jones7e0ce272012-03-15 16:46:17 +0000767 status = "disabled";
768 };
Lee Jones76ff4e42012-10-24 11:10:05 +0100769
Lee Jones81bf8c22012-09-26 12:55:56 +0100770 sdi5_per3@80008000 {
Lee Jones7e0ce272012-03-15 16:46:17 +0000771 compatible = "arm,pl18x", "arm,primecell";
Lee Jones76ff4e42012-10-24 11:10:05 +0100772 reg = <0x80008000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200773 interrupts = <0 100 IRQ_TYPE_LEVEL_HIGH>;
Lee Jones7e0ce272012-03-15 16:46:17 +0000774 status = "disabled";
775 };
Lee Jonesbf76e062012-04-24 10:53:18 +0100776
Lee Jonesfe164522012-07-31 12:37:16 +0100777 msp0: msp@80123000 {
778 compatible = "stericsson,ux500-msp-i2s";
779 reg = <0x80123000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200780 interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +0100781 v-ape-supply = <&db8500_vape_reg>;
782 status = "disabled";
783 };
784
785 msp1: msp@80124000 {
786 compatible = "stericsson,ux500-msp-i2s";
787 reg = <0x80124000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200788 interrupts = <0 62 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +0100789 v-ape-supply = <&db8500_vape_reg>;
790 status = "disabled";
791 };
792
793 // HDMI sound
794 msp2: msp@80117000 {
795 compatible = "stericsson,ux500-msp-i2s";
796 reg = <0x80117000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200797 interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +0100798 v-ape-supply = <&db8500_vape_reg>;
799 status = "disabled";
800 };
801
802 msp3: msp@80125000 {
803 compatible = "stericsson,ux500-msp-i2s";
804 reg = <0x80125000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200805 interrupts = <0 62 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe164522012-07-31 12:37:16 +0100806 v-ape-supply = <&db8500_vape_reg>;
807 status = "disabled";
808 };
809
Lee Jonesbf76e062012-04-24 10:53:18 +0100810 external-bus@50000000 {
811 compatible = "simple-bus";
812 reg = <0x50000000 0x4000000>;
813 #address-cells = <1>;
814 #size-cells = <1>;
815 ranges = <0 0x50000000 0x4000000>;
816 status = "disabled";
817 };
hongbo.zhangdc1956b2012-11-15 18:56:43 +0800818
819 cpufreq-cooling {
820 compatible = "stericsson,db8500-cpufreq-cooling";
821 status = "disabled";
822 };
823
Lee Jones0563f632012-10-24 11:18:14 +0100824 vmmci: regulator-gpio {
825 compatible = "regulator-gpio";
826
827 regulator-min-microvolt = <1800000>;
Lee Jones4f902b42012-12-06 14:00:01 +0000828 regulator-max-microvolt = <2900000>;
Lee Jones0563f632012-10-24 11:18:14 +0100829 regulator-name = "mmci-reg";
830 regulator-type = "voltage";
831
Lee Jones874c9202012-12-07 13:46:01 +0000832 startup-delay-us = <100>;
Lee Jonese7bda302012-12-06 15:00:46 +0000833 enable-active-high;
834
Lee Jones0563f632012-10-24 11:18:14 +0100835 states = <1800000 0x1
836 2900000 0x0>;
Lee Jonesc94a4ab2012-11-15 13:02:16 +0000837
838 status = "disabled";
Lee Jones0563f632012-10-24 11:18:14 +0100839 };
Lee Jonesfe2e9f92013-05-16 12:27:21 +0100840
841 cryp@a03cb000 {
842 compatible = "stericsson,ux500-cryp";
843 reg = <0xa03cb000 0x1000>;
Linus Walleij90c40252013-05-29 19:15:39 +0200844 interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>;
Lee Jonesfe2e9f92013-05-16 12:27:21 +0100845
846 v-ape-supply = <&db8500_vape_reg>;
Lee Jonesfe2e9f92013-05-16 12:27:21 +0100847 };
Lee Jones61122cf2013-05-16 12:27:22 +0100848
849 hash@a03c2000 {
850 compatible = "stericsson,ux500-hash";
851 reg = <0xa03c2000 0x1000>;
852
853 v-ape-supply = <&db8500_vape_reg>;
Lee Jones61122cf2013-05-16 12:27:22 +0100854 };
Arnd Bergmann5d0769f2012-03-02 23:07:21 +0000855 };
856};