Loading...
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/
4 *
5 * Based on "omap4.dtsi"
6 */
7
8#include <dt-bindings/bus/ti-sysc.h>
9#include <dt-bindings/gpio/gpio.h>
10#include <dt-bindings/interrupt-controller/arm-gic.h>
11#include <dt-bindings/pinctrl/omap.h>
12#include <dt-bindings/clock/omap5.h>
13
14/ {
15 #address-cells = <2>;
16 #size-cells = <2>;
17
18 compatible = "ti,omap5";
19 interrupt-parent = <&wakeupgen>;
20 chosen { };
21
22 aliases {
23 i2c0 = &i2c1;
24 i2c1 = &i2c2;
25 i2c2 = &i2c3;
26 i2c3 = &i2c4;
27 i2c4 = &i2c5;
28 mmc0 = &mmc1;
29 mmc1 = &mmc2;
30 mmc2 = &mmc3;
31 mmc3 = &mmc4;
32 mmc4 = &mmc5;
33 serial0 = &uart1;
34 serial1 = &uart2;
35 serial2 = &uart3;
36 serial3 = &uart4;
37 serial4 = &uart5;
38 serial5 = &uart6;
39 rproc0 = &dsp;
40 rproc1 = &ipu;
41 };
42
43 cpus {
44 #address-cells = <1>;
45 #size-cells = <0>;
46
47 cpu0: cpu@0 {
48 device_type = "cpu";
49 compatible = "arm,cortex-a15";
50 reg = <0x0>;
51
52 operating-points = <
53 /* kHz uV */
54 1000000 1060000
55 1500000 1250000
56 >;
57
58 clocks = <&dpll_mpu_ck>;
59 clock-names = "cpu";
60
61 clock-latency = <300000>; /* From omap-cpufreq driver */
62
63 /* cooling options */
64 #cooling-cells = <2>; /* min followed by max */
65 };
66 cpu@1 {
67 device_type = "cpu";
68 compatible = "arm,cortex-a15";
69 reg = <0x1>;
70
71 operating-points = <
72 /* kHz uV */
73 1000000 1060000
74 1500000 1250000
75 >;
76
77 clocks = <&dpll_mpu_ck>;
78 clock-names = "cpu";
79
80 clock-latency = <300000>; /* From omap-cpufreq driver */
81
82 /* cooling options */
83 #cooling-cells = <2>; /* min followed by max */
84 };
85 };
86
87 thermal-zones {
88 #include "omap4-cpu-thermal.dtsi"
89 #include "omap5-gpu-thermal.dtsi"
90 #include "omap5-core-thermal.dtsi"
91 };
92
93 timer {
94 compatible = "arm,armv7-timer";
95 /* PPI secure/nonsecure IRQ */
96 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
97 <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
98 <GIC_PPI 11 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
99 <GIC_PPI 10 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>;
100 interrupt-parent = <&gic>;
101 };
102
103 pmu {
104 compatible = "arm,cortex-a15-pmu";
105 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
106 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
107 };
108
109 /*
110 * Needed early by omap4_sram_init() for barrier, do not move to l3
111 * interconnect as simple-pm-bus probes at module_init() time.
112 */
113 ocmcram: sram@40300000 {
114 compatible = "mmio-sram";
115 reg = <0 0x40300000 0 0x20000>; /* 128k */
116 };
117
118 gic: interrupt-controller@48211000 {
119 compatible = "arm,cortex-a15-gic";
120 interrupt-controller;
121 #interrupt-cells = <3>;
122 reg = <0 0x48211000 0 0x1000>,
123 <0 0x48212000 0 0x2000>,
124 <0 0x48214000 0 0x2000>,
125 <0 0x48216000 0 0x2000>;
126 interrupt-parent = <&gic>;
127 };
128
129 wakeupgen: interrupt-controller@48281000 {
130 compatible = "ti,omap5-wugen-mpu", "ti,omap4-wugen-mpu";
131 interrupt-controller;
132 #interrupt-cells = <3>;
133 reg = <0 0x48281000 0 0x1000>;
134 interrupt-parent = <&gic>;
135 };
136
137 /*
138 * XXX: Use a flat representation of the OMAP3 interconnect.
139 * The real OMAP interconnect network is quite complex.
140 * Since it will not bring real advantage to represent that in DT for
141 * the moment, just use a fake OCP bus entry to represent the whole bus
142 * hierarchy.
143 */
144 ocp {
145 compatible = "simple-pm-bus";
146 power-domains = <&prm_core>;
147 clocks = <&l3main1_clkctrl OMAP5_L3_MAIN_1_CLKCTRL 0>,
148 <&l3main2_clkctrl OMAP5_L3_MAIN_2_CLKCTRL 0>,
149 <&l3instr_clkctrl OMAP5_L3_MAIN_3_CLKCTRL 0>;
150 #address-cells = <1>;
151 #size-cells = <1>;
152 ranges = <0 0 0 0xc0000000>;
153 dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
154
155 l3-noc@44000000 {
156 compatible = "ti,omap5-l3-noc";
157 reg = <0x44000000 0x2000>,
158 <0x44800000 0x3000>,
159 <0x45000000 0x4000>;
160 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
161 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
162 };
163
164 l4_wkup: interconnect@4ae00000 {
165 };
166
167 l4_cfg: interconnect@4a000000 {
168 };
169
170 l4_per: interconnect@48000000 {
171 };
172
173 target-module@48210000 {
174 compatible = "ti,sysc-omap4-simple", "ti,sysc";
175 power-domains = <&prm_mpu>;
176 clocks = <&mpu_clkctrl OMAP5_MPU_CLKCTRL 0>;
177 clock-names = "fck";
178 #address-cells = <1>;
179 #size-cells = <1>;
180 ranges = <0 0x48210000 0x1f0000>;
181
182 mpu {
183 compatible = "ti,omap4-mpu";
184 sram = <&ocmcram>;
185 };
186 };
187
188 l4_abe: interconnect@40100000 {
189 };
190
191 target-module@50000000 {
192 compatible = "ti,sysc-omap2", "ti,sysc";
193 reg = <0x50000000 4>,
194 <0x50000010 4>,
195 <0x50000014 4>;
196 reg-names = "rev", "sysc", "syss";
197 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
198 <SYSC_IDLE_NO>,
199 <SYSC_IDLE_SMART>;
200 ti,syss-mask = <1>;
201 ti,no-idle-on-init;
202 clocks = <&l3main2_clkctrl OMAP5_L3_MAIN_2_GPMC_CLKCTRL 0>;
203 clock-names = "fck";
204 #address-cells = <1>;
205 #size-cells = <1>;
206 ranges = <0x50000000 0x50000000 0x00001000>, /* regs */
207 <0x00000000 0x00000000 0x40000000>; /* data */
208
209 gpmc: gpmc@50000000 {
210 compatible = "ti,omap4430-gpmc";
211 reg = <0x50000000 0x1000>;
212 #address-cells = <2>;
213 #size-cells = <1>;
214 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
215 dmas = <&sdma 4>;
216 dma-names = "rxtx";
217 gpmc,num-cs = <8>;
218 gpmc,num-waitpins = <4>;
219 clock-names = "fck";
220 interrupt-controller;
221 #interrupt-cells = <2>;
222 gpio-controller;
223 #gpio-cells = <2>;
224 };
225 };
226
227 target-module@55082000 {
228 compatible = "ti,sysc-omap2", "ti,sysc";
229 reg = <0x55082000 0x4>,
230 <0x55082010 0x4>,
231 <0x55082014 0x4>;
232 reg-names = "rev", "sysc", "syss";
233 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
234 <SYSC_IDLE_NO>,
235 <SYSC_IDLE_SMART>;
236 ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
237 SYSC_OMAP2_SOFTRESET |
238 SYSC_OMAP2_AUTOIDLE)>;
239 clocks = <&ipu_clkctrl OMAP5_MMU_IPU_CLKCTRL 0>;
240 clock-names = "fck";
241 resets = <&prm_core 2>;
242 reset-names = "rstctrl";
243 ranges = <0x0 0x55082000 0x100>;
244 #size-cells = <1>;
245 #address-cells = <1>;
246
247 mmu_ipu: mmu@0 {
248 compatible = "ti,omap4-iommu";
249 reg = <0x0 0x100>;
250 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
251 #iommu-cells = <0>;
252 ti,iommu-bus-err-back;
253 };
254 };
255
256 dsp: dsp {
257 compatible = "ti,omap5-dsp";
258 ti,bootreg = <&scm_conf 0x304 0>;
259 iommus = <&mmu_dsp>;
260 resets = <&prm_dsp 0>;
261 clocks = <&dsp_clkctrl OMAP5_MMU_DSP_CLKCTRL 0>;
262 firmware-name = "omap5-dsp-fw.xe64T";
263 mboxes = <&mailbox &mbox_dsp>;
264 status = "disabled";
265 };
266
267 ipu: ipu@55020000 {
268 compatible = "ti,omap5-ipu";
269 reg = <0x55020000 0x10000>;
270 reg-names = "l2ram";
271 iommus = <&mmu_ipu>;
272 resets = <&prm_core 0>, <&prm_core 1>;
273 clocks = <&ipu_clkctrl OMAP5_MMU_IPU_CLKCTRL 0>;
274 firmware-name = "omap5-ipu-fw.xem4";
275 mboxes = <&mailbox &mbox_ipu>;
276 status = "disabled";
277 };
278
279 target-module@4e000000 {
280 compatible = "ti,sysc-omap2", "ti,sysc";
281 reg = <0x4e000000 0x4>,
282 <0x4e000010 0x4>;
283 reg-names = "rev", "sysc";
284 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
285 <SYSC_IDLE_NO>,
286 <SYSC_IDLE_SMART>;
287 ranges = <0x0 0x4e000000 0x2000000>;
288 #size-cells = <1>;
289 #address-cells = <1>;
290
291 dmm@0 {
292 compatible = "ti,omap5-dmm";
293 reg = <0 0x800>;
294 interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
295 };
296 };
297
298 target-module@4c000000 {
299 compatible = "ti,sysc-omap4-simple", "ti,sysc";
300 reg = <0x4c000000 0x4>;
301 reg-names = "rev";
302 clocks = <&emif_clkctrl OMAP5_EMIF1_CLKCTRL 0>;
303 clock-names = "fck";
304 ti,no-idle;
305 #address-cells = <1>;
306 #size-cells = <1>;
307 ranges = <0x0 0x4c000000 0x1000000>;
308
309 emif1: emif@0 {
310 compatible = "ti,emif-4d5";
311 reg = <0 0x400>;
312 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
313 phy-type = <2>; /* DDR PHY type: Intelli PHY */
314 hw-caps-read-idle-ctrl;
315 hw-caps-ll-interface;
316 hw-caps-temp-alert;
317 };
318 };
319
320 target-module@4d000000 {
321 compatible = "ti,sysc-omap4-simple", "ti,sysc";
322 reg = <0x4d000000 0x4>;
323 reg-names = "rev";
324 clocks = <&emif_clkctrl OMAP5_EMIF2_CLKCTRL 0>;
325 clock-names = "fck";
326 ti,no-idle;
327 #address-cells = <1>;
328 #size-cells = <1>;
329 ranges = <0x0 0x4d000000 0x1000000>;
330
331 emif2: emif@0 {
332 compatible = "ti,emif-4d5";
333 reg = <0 0x400>;
334 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
335 phy-type = <2>; /* DDR PHY type: Intelli PHY */
336 hw-caps-read-idle-ctrl;
337 hw-caps-ll-interface;
338 hw-caps-temp-alert;
339 };
340 };
341
342 aes1_target: target-module@4b501000 {
343 compatible = "ti,sysc-omap2", "ti,sysc";
344 reg = <0x4b501080 0x4>,
345 <0x4b501084 0x4>,
346 <0x4b501088 0x4>;
347 reg-names = "rev", "sysc", "syss";
348 ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
349 SYSC_OMAP2_AUTOIDLE)>;
350 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
351 <SYSC_IDLE_NO>,
352 <SYSC_IDLE_SMART>,
353 <SYSC_IDLE_SMART_WKUP>;
354 ti,syss-mask = <1>;
355 /* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
356 clocks = <&l4sec_clkctrl OMAP5_AES1_CLKCTRL 0>;
357 clock-names = "fck";
358 #address-cells = <1>;
359 #size-cells = <1>;
360 ranges = <0x0 0x4b501000 0x1000>;
361
362 aes1: aes@0 {
363 compatible = "ti,omap4-aes";
364 reg = <0 0xa0>;
365 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
366 dmas = <&sdma 111>, <&sdma 110>;
367 dma-names = "tx", "rx";
368 };
369 };
370
371 aes2_target: target-module@4b701000 {
372 compatible = "ti,sysc-omap2", "ti,sysc";
373 reg = <0x4b701080 0x4>,
374 <0x4b701084 0x4>,
375 <0x4b701088 0x4>;
376 reg-names = "rev", "sysc", "syss";
377 ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
378 SYSC_OMAP2_AUTOIDLE)>;
379 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
380 <SYSC_IDLE_NO>,
381 <SYSC_IDLE_SMART>,
382 <SYSC_IDLE_SMART_WKUP>;
383 ti,syss-mask = <1>;
384 /* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
385 clocks = <&l4sec_clkctrl OMAP5_AES2_CLKCTRL 0>;
386 clock-names = "fck";
387 #address-cells = <1>;
388 #size-cells = <1>;
389 ranges = <0x0 0x4b701000 0x1000>;
390
391 aes2: aes@0 {
392 compatible = "ti,omap4-aes";
393 reg = <0 0xa0>;
394 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
395 dmas = <&sdma 114>, <&sdma 113>;
396 dma-names = "tx", "rx";
397 };
398 };
399
400 sham_target: target-module@4b100000 {
401 compatible = "ti,sysc-omap3-sham", "ti,sysc";
402 reg = <0x4b100100 0x4>,
403 <0x4b100110 0x4>,
404 <0x4b100114 0x4>;
405 reg-names = "rev", "sysc", "syss";
406 ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
407 SYSC_OMAP2_AUTOIDLE)>;
408 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
409 <SYSC_IDLE_NO>,
410 <SYSC_IDLE_SMART>;
411 ti,syss-mask = <1>;
412 /* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
413 clocks = <&l4sec_clkctrl OMAP5_SHA2MD5_CLKCTRL 0>;
414 clock-names = "fck";
415 #address-cells = <1>;
416 #size-cells = <1>;
417 ranges = <0x0 0x4b100000 0x1000>;
418
419 sham: sham@0 {
420 compatible = "ti,omap4-sham";
421 reg = <0 0x300>;
422 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
423 dmas = <&sdma 119>;
424 dma-names = "rx";
425 };
426 };
427
428 bandgap: bandgap@4a0021e0 {
429 reg = <0x4a0021e0 0xc
430 0x4a00232c 0xc
431 0x4a002380 0x2c
432 0x4a0023C0 0x3c>;
433 interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
434 compatible = "ti,omap5430-bandgap";
435
436 #thermal-sensor-cells = <1>;
437 };
438
439 target-module@56000000 {
440 compatible = "ti,sysc-omap4", "ti,sysc";
441 reg = <0x5600fe00 0x4>,
442 <0x5600fe10 0x4>;
443 reg-names = "rev", "sysc";
444 ti,sysc-midle = <SYSC_IDLE_FORCE>,
445 <SYSC_IDLE_NO>,
446 <SYSC_IDLE_SMART>;
447 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
448 <SYSC_IDLE_NO>,
449 <SYSC_IDLE_SMART>;
450 clocks = <&gpu_clkctrl OMAP5_GPU_CLKCTRL 0>;
451 clock-names = "fck";
452 #address-cells = <1>;
453 #size-cells = <1>;
454 ranges = <0 0x56000000 0x2000000>;
455
456 /*
457 * Closed source PowerVR driver, no child device
458 * binding or driver in mainline
459 */
460 };
461
462 target-module@58000000 {
463 compatible = "ti,sysc-omap2", "ti,sysc";
464 reg = <0x58000000 4>,
465 <0x58000014 4>;
466 reg-names = "rev", "syss";
467 ti,syss-mask = <1>;
468 power-domains = <&prm_dss>;
469 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 0>,
470 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
471 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>,
472 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 11>;
473 clock-names = "fck", "hdmi_clk", "sys_clk", "tv_clk";
474 #address-cells = <1>;
475 #size-cells = <1>;
476 ranges = <0 0x58000000 0x1000000>;
477
478 dss: dss@0 {
479 compatible = "ti,omap5-dss";
480 reg = <0 0x80>;
481 status = "disabled";
482 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
483 clock-names = "fck";
484 #address-cells = <1>;
485 #size-cells = <1>;
486 ranges = <0 0 0x1000000>;
487
488 target-module@1000 {
489 compatible = "ti,sysc-omap2", "ti,sysc";
490 reg = <0x1000 0x4>,
491 <0x1010 0x4>,
492 <0x1014 0x4>;
493 reg-names = "rev", "sysc", "syss";
494 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
495 <SYSC_IDLE_NO>,
496 <SYSC_IDLE_SMART>;
497 ti,sysc-midle = <SYSC_IDLE_FORCE>,
498 <SYSC_IDLE_NO>,
499 <SYSC_IDLE_SMART>;
500 ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
501 SYSC_OMAP2_ENAWAKEUP |
502 SYSC_OMAP2_SOFTRESET |
503 SYSC_OMAP2_AUTOIDLE)>;
504 ti,syss-mask = <1>;
505 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
506 clock-names = "fck";
507 #address-cells = <1>;
508 #size-cells = <1>;
509 ranges = <0 0x1000 0x1000>;
510
511 dispc@0 {
512 compatible = "ti,omap5-dispc";
513 reg = <0 0x1000>;
514 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
515 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
516 clock-names = "fck";
517 };
518 };
519
520 target-module@2000 {
521 compatible = "ti,sysc-omap2", "ti,sysc";
522 reg = <0x2000 0x4>,
523 <0x2010 0x4>,
524 <0x2014 0x4>;
525 reg-names = "rev", "sysc", "syss";
526 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
527 <SYSC_IDLE_NO>,
528 <SYSC_IDLE_SMART>;
529 ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
530 SYSC_OMAP2_AUTOIDLE)>;
531 ti,syss-mask = <1>;
532 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
533 clock-names = "fck";
534 #address-cells = <1>;
535 #size-cells = <1>;
536 ranges = <0 0x2000 0x1000>;
537
538 rfbi: encoder@0 {
539 compatible = "ti,omap5-rfbi";
540 reg = <0 0x100>;
541 status = "disabled";
542 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>, <&l3_iclk_div>;
543 clock-names = "fck", "ick";
544 };
545 };
546
547 target-module@4000 {
548 compatible = "ti,sysc-omap2", "ti,sysc";
549 reg = <0x4000 0x4>,
550 <0x4010 0x4>,
551 <0x4014 0x4>;
552 reg-names = "rev", "sysc", "syss";
553 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
554 <SYSC_IDLE_NO>,
555 <SYSC_IDLE_SMART>;
556 ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
557 SYSC_OMAP2_ENAWAKEUP |
558 SYSC_OMAP2_SOFTRESET |
559 SYSC_OMAP2_AUTOIDLE)>;
560 ti,syss-mask = <1>;
561 #address-cells = <1>;
562 #size-cells = <1>;
563 ranges = <0 0x4000 0x1000>;
564
565 dsi1: encoder@0 {
566 compatible = "ti,omap5-dsi";
567 reg = <0 0x200>,
568 <0x200 0x40>,
569 <0x300 0x40>;
570 reg-names = "proto", "phy", "pll";
571 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
572 status = "disabled";
573 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>,
574 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
575 clock-names = "fck", "sys_clk";
576
577 #address-cells = <1>;
578 #size-cells = <0>;
579 };
580 };
581
582 target-module@9000 {
583 compatible = "ti,sysc-omap2", "ti,sysc";
584 reg = <0x9000 0x4>,
585 <0x9010 0x4>,
586 <0x9014 0x4>;
587 reg-names = "rev", "sysc", "syss";
588 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
589 <SYSC_IDLE_NO>,
590 <SYSC_IDLE_SMART>;
591 ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
592 SYSC_OMAP2_ENAWAKEUP |
593 SYSC_OMAP2_SOFTRESET |
594 SYSC_OMAP2_AUTOIDLE)>;
595 ti,syss-mask = <1>;
596 #address-cells = <1>;
597 #size-cells = <1>;
598 ranges = <0 0x9000 0x1000>;
599
600 dsi2: encoder@0 {
601 compatible = "ti,omap5-dsi";
602 reg = <0 0x200>,
603 <0x200 0x40>,
604 <0x300 0x40>;
605 reg-names = "proto", "phy", "pll";
606 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
607 status = "disabled";
608 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>,
609 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
610 clock-names = "fck", "sys_clk";
611
612 #address-cells = <1>;
613 #size-cells = <0>;
614 };
615 };
616
617 target-module@40000 {
618 compatible = "ti,sysc-omap4", "ti,sysc";
619 reg = <0x40000 0x4>,
620 <0x40010 0x4>;
621 reg-names = "rev", "sysc";
622 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
623 <SYSC_IDLE_NO>,
624 <SYSC_IDLE_SMART>,
625 <SYSC_IDLE_SMART_WKUP>;
626 ti,sysc-mask = <(SYSC_OMAP4_SOFTRESET)>;
627 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
628 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
629 clock-names = "fck", "dss_clk";
630 #address-cells = <1>;
631 #size-cells = <1>;
632 ranges = <0 0x40000 0x40000>;
633
634 hdmi: encoder@0 {
635 compatible = "ti,omap5-hdmi";
636 reg = <0 0x200>,
637 <0x200 0x80>,
638 <0x300 0x80>,
639 <0x20000 0x19000>;
640 reg-names = "wp", "pll", "phy", "core";
641 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
642 status = "disabled";
643 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
644 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
645 clock-names = "fck", "sys_clk";
646 dmas = <&sdma 76>;
647 dma-names = "audio_tx";
648 };
649 };
650 };
651 };
652
653 abb_mpu: regulator-abb-mpu {
654 compatible = "ti,abb-v2";
655 regulator-name = "abb_mpu";
656 #address-cells = <0>;
657 #size-cells = <0>;
658 clocks = <&sys_clkin>;
659 ti,settling-time = <50>;
660 ti,clock-cycles = <16>;
661
662 reg = <0x4ae07cdc 0x8>, <0x4ae06014 0x4>,
663 <0x4a0021c4 0x8>, <0x4ae0c318 0x4>;
664 reg-names = "base-address", "int-address",
665 "efuse-address", "ldo-address";
666 ti,tranxdone-status-mask = <0x80>;
667 /* LDOVBBMPU_MUX_CTRL */
668 ti,ldovbb-override-mask = <0x400>;
669 /* LDOVBBMPU_VSET_OUT */
670 ti,ldovbb-vset-mask = <0x1F>;
671
672 /*
673 * NOTE: only FBB mode used but actual vset will
674 * determine final biasing
675 */
676 ti,abb_info = <
677 /*uV ABB efuse rbb_m fbb_m vset_m*/
678 1060000 0 0x0 0 0x02000000 0x01F00000
679 1250000 0 0x4 0 0x02000000 0x01F00000
680 >;
681 };
682
683 abb_mm: regulator-abb-mm {
684 compatible = "ti,abb-v2";
685 regulator-name = "abb_mm";
686 #address-cells = <0>;
687 #size-cells = <0>;
688 clocks = <&sys_clkin>;
689 ti,settling-time = <50>;
690 ti,clock-cycles = <16>;
691
692 reg = <0x4ae07ce4 0x8>, <0x4ae06010 0x4>,
693 <0x4a0021a4 0x8>, <0x4ae0c314 0x4>;
694 reg-names = "base-address", "int-address",
695 "efuse-address", "ldo-address";
696 ti,tranxdone-status-mask = <0x80000000>;
697 /* LDOVBBMM_MUX_CTRL */
698 ti,ldovbb-override-mask = <0x400>;
699 /* LDOVBBMM_VSET_OUT */
700 ti,ldovbb-vset-mask = <0x1F>;
701
702 /*
703 * NOTE: only FBB mode used but actual vset will
704 * determine final biasing
705 */
706 ti,abb_info = <
707 /*uV ABB efuse rbb_m fbb_m vset_m*/
708 1025000 0 0x0 0 0x02000000 0x01F00000
709 1120000 0 0x4 0 0x02000000 0x01F00000
710 >;
711 };
712 };
713};
714
715&cpu_thermal {
716 polling-delay = <500>; /* milliseconds */
717 coefficients = <65 (-1791)>;
718};
719
720#include "omap5-l4.dtsi"
721#include "omap54xx-clocks.dtsi"
722
723&gpu_thermal {
724 coefficients = <117 (-2992)>;
725};
726
727&core_thermal {
728 coefficients = <0 2000>;
729};
730
731#include "omap5-l4-abe.dtsi"
732#include "omap54xx-clocks.dtsi"
733
734&prm {
735 prm_mpu: prm@300 {
736 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
737 reg = <0x300 0x100>;
738 #power-domain-cells = <0>;
739 };
740
741 prm_dsp: prm@400 {
742 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
743 reg = <0x400 0x100>;
744 #reset-cells = <1>;
745 #power-domain-cells = <0>;
746 };
747
748 prm_abe: prm@500 {
749 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
750 reg = <0x500 0x100>;
751 #power-domain-cells = <0>;
752 };
753
754 prm_coreaon: prm@600 {
755 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
756 reg = <0x600 0x100>;
757 #power-domain-cells = <0>;
758 };
759
760 prm_core: prm@700 {
761 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
762 reg = <0x700 0x100>;
763 #reset-cells = <1>;
764 #power-domain-cells = <0>;
765 };
766
767 prm_iva: prm@1200 {
768 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
769 reg = <0x1200 0x100>;
770 #reset-cells = <1>;
771 #power-domain-cells = <0>;
772 };
773
774 prm_cam: prm@1300 {
775 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
776 reg = <0x1300 0x100>;
777 #power-domain-cells = <0>;
778 };
779
780 prm_dss: prm@1400 {
781 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
782 reg = <0x1400 0x100>;
783 #power-domain-cells = <0>;
784 };
785
786 prm_gpu: prm@1500 {
787 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
788 reg = <0x1500 0x100>;
789 #power-domain-cells = <0>;
790 };
791
792 prm_l3init: prm@1600 {
793 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
794 reg = <0x1600 0x100>;
795 #power-domain-cells = <0>;
796 };
797
798 prm_custefuse: prm@1700 {
799 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
800 reg = <0x1700 0x100>;
801 #power-domain-cells = <0>;
802 };
803
804 prm_wkupaon: prm@1800 {
805 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
806 reg = <0x1800 0x100>;
807 #power-domain-cells = <0>;
808 };
809
810 prm_emu: prm@1a00 {
811 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
812 reg = <0x1a00 0x100>;
813 #power-domain-cells = <0>;
814 };
815
816 prm_device: prm@1c00 {
817 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
818 reg = <0x1c00 0x100>;
819 #reset-cells = <1>;
820 };
821};
822
823/* Preferred always-on timer for clockevent */
824&timer1_target {
825 ti,no-reset-on-init;
826 ti,no-idle;
827 timer@0 {
828 assigned-clocks = <&wkupaon_clkctrl OMAP5_TIMER1_CLKCTRL 24>;
829 assigned-clock-parents = <&sys_32k_ck>;
830 };
831};
1/*
2 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 * Based on "omap4.dtsi"
8 */
9
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/interrupt-controller/arm-gic.h>
12#include <dt-bindings/pinctrl/omap.h>
13
14#include "skeleton.dtsi"
15
16/ {
17 #address-cells = <1>;
18 #size-cells = <1>;
19
20 compatible = "ti,omap5";
21 interrupt-parent = <&gic>;
22
23 aliases {
24 i2c0 = &i2c1;
25 i2c1 = &i2c2;
26 i2c2 = &i2c3;
27 i2c3 = &i2c4;
28 i2c4 = &i2c5;
29 serial0 = &uart1;
30 serial1 = &uart2;
31 serial2 = &uart3;
32 serial3 = &uart4;
33 serial4 = &uart5;
34 serial5 = &uart6;
35 };
36
37 cpus {
38 #address-cells = <1>;
39 #size-cells = <0>;
40
41 cpu0: cpu@0 {
42 device_type = "cpu";
43 compatible = "arm,cortex-a15";
44 reg = <0x0>;
45
46 operating-points = <
47 /* kHz uV */
48 500000 880000
49 1000000 1060000
50 1500000 1250000
51 >;
52
53 clocks = <&dpll_mpu_ck>;
54 clock-names = "cpu";
55
56 clock-latency = <300000>; /* From omap-cpufreq driver */
57
58 /* cooling options */
59 cooling-min-level = <0>;
60 cooling-max-level = <2>;
61 #cooling-cells = <2>; /* min followed by max */
62 };
63 cpu@1 {
64 device_type = "cpu";
65 compatible = "arm,cortex-a15";
66 reg = <0x1>;
67 };
68 };
69
70 thermal-zones {
71 #include "omap4-cpu-thermal.dtsi"
72 #include "omap5-gpu-thermal.dtsi"
73 #include "omap5-core-thermal.dtsi"
74 };
75
76 timer {
77 compatible = "arm,armv7-timer";
78 /* PPI secure/nonsecure IRQ */
79 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
80 <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
81 <GIC_PPI 11 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
82 <GIC_PPI 10 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>;
83 };
84
85 gic: interrupt-controller@48211000 {
86 compatible = "arm,cortex-a15-gic";
87 interrupt-controller;
88 #interrupt-cells = <3>;
89 reg = <0x48211000 0x1000>,
90 <0x48212000 0x1000>,
91 <0x48214000 0x2000>,
92 <0x48216000 0x2000>;
93 };
94
95 /*
96 * The soc node represents the soc top level view. It is used for IPs
97 * that are not memory mapped in the MPU view or for the MPU itself.
98 */
99 soc {
100 compatible = "ti,omap-infra";
101 mpu {
102 compatible = "ti,omap5-mpu";
103 ti,hwmods = "mpu";
104 };
105 };
106
107 /*
108 * XXX: Use a flat representation of the OMAP3 interconnect.
109 * The real OMAP interconnect network is quite complex.
110 * Since it will not bring real advantage to represent that in DT for
111 * the moment, just use a fake OCP bus entry to represent the whole bus
112 * hierarchy.
113 */
114 ocp {
115 compatible = "ti,omap4-l3-noc", "simple-bus";
116 #address-cells = <1>;
117 #size-cells = <1>;
118 ranges;
119 ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
120 reg = <0x44000000 0x2000>,
121 <0x44800000 0x3000>,
122 <0x45000000 0x4000>;
123 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
124 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
125
126 prm: prm@4ae06000 {
127 compatible = "ti,omap5-prm";
128 reg = <0x4ae06000 0x3000>;
129
130 prm_clocks: clocks {
131 #address-cells = <1>;
132 #size-cells = <0>;
133 };
134
135 prm_clockdomains: clockdomains {
136 };
137 };
138
139 cm_core_aon: cm_core_aon@4a004000 {
140 compatible = "ti,omap5-cm-core-aon";
141 reg = <0x4a004000 0x2000>;
142
143 cm_core_aon_clocks: clocks {
144 #address-cells = <1>;
145 #size-cells = <0>;
146 };
147
148 cm_core_aon_clockdomains: clockdomains {
149 };
150 };
151
152 scrm: scrm@4ae0a000 {
153 compatible = "ti,omap5-scrm";
154 reg = <0x4ae0a000 0x2000>;
155
156 scrm_clocks: clocks {
157 #address-cells = <1>;
158 #size-cells = <0>;
159 };
160
161 scrm_clockdomains: clockdomains {
162 };
163 };
164
165 cm_core: cm_core@4a008000 {
166 compatible = "ti,omap5-cm-core";
167 reg = <0x4a008000 0x3000>;
168
169 cm_core_clocks: clocks {
170 #address-cells = <1>;
171 #size-cells = <0>;
172 };
173
174 cm_core_clockdomains: clockdomains {
175 };
176 };
177
178 counter32k: counter@4ae04000 {
179 compatible = "ti,omap-counter32k";
180 reg = <0x4ae04000 0x40>;
181 ti,hwmods = "counter_32k";
182 };
183
184 omap5_pmx_core: pinmux@4a002840 {
185 compatible = "ti,omap4-padconf", "pinctrl-single";
186 reg = <0x4a002840 0x01b6>;
187 #address-cells = <1>;
188 #size-cells = <0>;
189 pinctrl-single,register-width = <16>;
190 pinctrl-single,function-mask = <0x7fff>;
191 };
192 omap5_pmx_wkup: pinmux@4ae0c840 {
193 compatible = "ti,omap4-padconf", "pinctrl-single";
194 reg = <0x4ae0c840 0x0038>;
195 #address-cells = <1>;
196 #size-cells = <0>;
197 pinctrl-single,register-width = <16>;
198 pinctrl-single,function-mask = <0x7fff>;
199 };
200
201 omap5_padconf_global: tisyscon@4a002da0 {
202 compatible = "syscon";
203 reg = <0x4A002da0 0xec>;
204 };
205
206 pbias_regulator: pbias_regulator {
207 compatible = "ti,pbias-omap";
208 reg = <0x60 0x4>;
209 syscon = <&omap5_padconf_global>;
210 pbias_mmc_reg: pbias_mmc_omap5 {
211 regulator-name = "pbias_mmc_omap5";
212 regulator-min-microvolt = <1800000>;
213 regulator-max-microvolt = <3000000>;
214 };
215 };
216
217 sdma: dma-controller@4a056000 {
218 compatible = "ti,omap4430-sdma";
219 reg = <0x4a056000 0x1000>;
220 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
221 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
222 <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
223 <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
224 #dma-cells = <1>;
225 #dma-channels = <32>;
226 #dma-requests = <127>;
227 };
228
229 gpio1: gpio@4ae10000 {
230 compatible = "ti,omap4-gpio";
231 reg = <0x4ae10000 0x200>;
232 interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
233 ti,hwmods = "gpio1";
234 ti,gpio-always-on;
235 gpio-controller;
236 #gpio-cells = <2>;
237 interrupt-controller;
238 #interrupt-cells = <2>;
239 };
240
241 gpio2: gpio@48055000 {
242 compatible = "ti,omap4-gpio";
243 reg = <0x48055000 0x200>;
244 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
245 ti,hwmods = "gpio2";
246 gpio-controller;
247 #gpio-cells = <2>;
248 interrupt-controller;
249 #interrupt-cells = <2>;
250 };
251
252 gpio3: gpio@48057000 {
253 compatible = "ti,omap4-gpio";
254 reg = <0x48057000 0x200>;
255 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
256 ti,hwmods = "gpio3";
257 gpio-controller;
258 #gpio-cells = <2>;
259 interrupt-controller;
260 #interrupt-cells = <2>;
261 };
262
263 gpio4: gpio@48059000 {
264 compatible = "ti,omap4-gpio";
265 reg = <0x48059000 0x200>;
266 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
267 ti,hwmods = "gpio4";
268 gpio-controller;
269 #gpio-cells = <2>;
270 interrupt-controller;
271 #interrupt-cells = <2>;
272 };
273
274 gpio5: gpio@4805b000 {
275 compatible = "ti,omap4-gpio";
276 reg = <0x4805b000 0x200>;
277 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
278 ti,hwmods = "gpio5";
279 gpio-controller;
280 #gpio-cells = <2>;
281 interrupt-controller;
282 #interrupt-cells = <2>;
283 };
284
285 gpio6: gpio@4805d000 {
286 compatible = "ti,omap4-gpio";
287 reg = <0x4805d000 0x200>;
288 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
289 ti,hwmods = "gpio6";
290 gpio-controller;
291 #gpio-cells = <2>;
292 interrupt-controller;
293 #interrupt-cells = <2>;
294 };
295
296 gpio7: gpio@48051000 {
297 compatible = "ti,omap4-gpio";
298 reg = <0x48051000 0x200>;
299 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
300 ti,hwmods = "gpio7";
301 gpio-controller;
302 #gpio-cells = <2>;
303 interrupt-controller;
304 #interrupt-cells = <2>;
305 };
306
307 gpio8: gpio@48053000 {
308 compatible = "ti,omap4-gpio";
309 reg = <0x48053000 0x200>;
310 interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
311 ti,hwmods = "gpio8";
312 gpio-controller;
313 #gpio-cells = <2>;
314 interrupt-controller;
315 #interrupt-cells = <2>;
316 };
317
318 gpmc: gpmc@50000000 {
319 compatible = "ti,omap4430-gpmc";
320 reg = <0x50000000 0x1000>;
321 #address-cells = <2>;
322 #size-cells = <1>;
323 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
324 gpmc,num-cs = <8>;
325 gpmc,num-waitpins = <4>;
326 ti,hwmods = "gpmc";
327 clocks = <&l3_iclk_div>;
328 clock-names = "fck";
329 };
330
331 i2c1: i2c@48070000 {
332 compatible = "ti,omap4-i2c";
333 reg = <0x48070000 0x100>;
334 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
335 #address-cells = <1>;
336 #size-cells = <0>;
337 ti,hwmods = "i2c1";
338 };
339
340 i2c2: i2c@48072000 {
341 compatible = "ti,omap4-i2c";
342 reg = <0x48072000 0x100>;
343 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
344 #address-cells = <1>;
345 #size-cells = <0>;
346 ti,hwmods = "i2c2";
347 };
348
349 i2c3: i2c@48060000 {
350 compatible = "ti,omap4-i2c";
351 reg = <0x48060000 0x100>;
352 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
353 #address-cells = <1>;
354 #size-cells = <0>;
355 ti,hwmods = "i2c3";
356 };
357
358 i2c4: i2c@4807a000 {
359 compatible = "ti,omap4-i2c";
360 reg = <0x4807a000 0x100>;
361 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
362 #address-cells = <1>;
363 #size-cells = <0>;
364 ti,hwmods = "i2c4";
365 };
366
367 i2c5: i2c@4807c000 {
368 compatible = "ti,omap4-i2c";
369 reg = <0x4807c000 0x100>;
370 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
371 #address-cells = <1>;
372 #size-cells = <0>;
373 ti,hwmods = "i2c5";
374 };
375
376 hwspinlock: spinlock@4a0f6000 {
377 compatible = "ti,omap4-hwspinlock";
378 reg = <0x4a0f6000 0x1000>;
379 ti,hwmods = "spinlock";
380 #hwlock-cells = <1>;
381 };
382
383 mcspi1: spi@48098000 {
384 compatible = "ti,omap4-mcspi";
385 reg = <0x48098000 0x200>;
386 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
387 #address-cells = <1>;
388 #size-cells = <0>;
389 ti,hwmods = "mcspi1";
390 ti,spi-num-cs = <4>;
391 dmas = <&sdma 35>,
392 <&sdma 36>,
393 <&sdma 37>,
394 <&sdma 38>,
395 <&sdma 39>,
396 <&sdma 40>,
397 <&sdma 41>,
398 <&sdma 42>;
399 dma-names = "tx0", "rx0", "tx1", "rx1",
400 "tx2", "rx2", "tx3", "rx3";
401 };
402
403 mcspi2: spi@4809a000 {
404 compatible = "ti,omap4-mcspi";
405 reg = <0x4809a000 0x200>;
406 interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
407 #address-cells = <1>;
408 #size-cells = <0>;
409 ti,hwmods = "mcspi2";
410 ti,spi-num-cs = <2>;
411 dmas = <&sdma 43>,
412 <&sdma 44>,
413 <&sdma 45>,
414 <&sdma 46>;
415 dma-names = "tx0", "rx0", "tx1", "rx1";
416 };
417
418 mcspi3: spi@480b8000 {
419 compatible = "ti,omap4-mcspi";
420 reg = <0x480b8000 0x200>;
421 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
422 #address-cells = <1>;
423 #size-cells = <0>;
424 ti,hwmods = "mcspi3";
425 ti,spi-num-cs = <2>;
426 dmas = <&sdma 15>, <&sdma 16>;
427 dma-names = "tx0", "rx0";
428 };
429
430 mcspi4: spi@480ba000 {
431 compatible = "ti,omap4-mcspi";
432 reg = <0x480ba000 0x200>;
433 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
434 #address-cells = <1>;
435 #size-cells = <0>;
436 ti,hwmods = "mcspi4";
437 ti,spi-num-cs = <1>;
438 dmas = <&sdma 70>, <&sdma 71>;
439 dma-names = "tx0", "rx0";
440 };
441
442 uart1: serial@4806a000 {
443 compatible = "ti,omap4-uart";
444 reg = <0x4806a000 0x100>;
445 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
446 ti,hwmods = "uart1";
447 clock-frequency = <48000000>;
448 };
449
450 uart2: serial@4806c000 {
451 compatible = "ti,omap4-uart";
452 reg = <0x4806c000 0x100>;
453 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
454 ti,hwmods = "uart2";
455 clock-frequency = <48000000>;
456 };
457
458 uart3: serial@48020000 {
459 compatible = "ti,omap4-uart";
460 reg = <0x48020000 0x100>;
461 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
462 ti,hwmods = "uart3";
463 clock-frequency = <48000000>;
464 };
465
466 uart4: serial@4806e000 {
467 compatible = "ti,omap4-uart";
468 reg = <0x4806e000 0x100>;
469 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
470 ti,hwmods = "uart4";
471 clock-frequency = <48000000>;
472 };
473
474 uart5: serial@48066000 {
475 compatible = "ti,omap4-uart";
476 reg = <0x48066000 0x100>;
477 interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
478 ti,hwmods = "uart5";
479 clock-frequency = <48000000>;
480 };
481
482 uart6: serial@48068000 {
483 compatible = "ti,omap4-uart";
484 reg = <0x48068000 0x100>;
485 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
486 ti,hwmods = "uart6";
487 clock-frequency = <48000000>;
488 };
489
490 mmc1: mmc@4809c000 {
491 compatible = "ti,omap4-hsmmc";
492 reg = <0x4809c000 0x400>;
493 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
494 ti,hwmods = "mmc1";
495 ti,dual-volt;
496 ti,needs-special-reset;
497 dmas = <&sdma 61>, <&sdma 62>;
498 dma-names = "tx", "rx";
499 pbias-supply = <&pbias_mmc_reg>;
500 };
501
502 mmc2: mmc@480b4000 {
503 compatible = "ti,omap4-hsmmc";
504 reg = <0x480b4000 0x400>;
505 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
506 ti,hwmods = "mmc2";
507 ti,needs-special-reset;
508 dmas = <&sdma 47>, <&sdma 48>;
509 dma-names = "tx", "rx";
510 };
511
512 mmc3: mmc@480ad000 {
513 compatible = "ti,omap4-hsmmc";
514 reg = <0x480ad000 0x400>;
515 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
516 ti,hwmods = "mmc3";
517 ti,needs-special-reset;
518 dmas = <&sdma 77>, <&sdma 78>;
519 dma-names = "tx", "rx";
520 };
521
522 mmc4: mmc@480d1000 {
523 compatible = "ti,omap4-hsmmc";
524 reg = <0x480d1000 0x400>;
525 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
526 ti,hwmods = "mmc4";
527 ti,needs-special-reset;
528 dmas = <&sdma 57>, <&sdma 58>;
529 dma-names = "tx", "rx";
530 };
531
532 mmc5: mmc@480d5000 {
533 compatible = "ti,omap4-hsmmc";
534 reg = <0x480d5000 0x400>;
535 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
536 ti,hwmods = "mmc5";
537 ti,needs-special-reset;
538 dmas = <&sdma 59>, <&sdma 60>;
539 dma-names = "tx", "rx";
540 };
541
542 mmu_dsp: mmu@4a066000 {
543 compatible = "ti,omap4-iommu";
544 reg = <0x4a066000 0x100>;
545 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
546 ti,hwmods = "mmu_dsp";
547 };
548
549 mmu_ipu: mmu@55082000 {
550 compatible = "ti,omap4-iommu";
551 reg = <0x55082000 0x100>;
552 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
553 ti,hwmods = "mmu_ipu";
554 ti,iommu-bus-err-back;
555 };
556
557 keypad: keypad@4ae1c000 {
558 compatible = "ti,omap4-keypad";
559 reg = <0x4ae1c000 0x400>;
560 ti,hwmods = "kbd";
561 };
562
563 mcpdm: mcpdm@40132000 {
564 compatible = "ti,omap4-mcpdm";
565 reg = <0x40132000 0x7f>, /* MPU private access */
566 <0x49032000 0x7f>; /* L3 Interconnect */
567 reg-names = "mpu", "dma";
568 interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
569 ti,hwmods = "mcpdm";
570 dmas = <&sdma 65>,
571 <&sdma 66>;
572 dma-names = "up_link", "dn_link";
573 status = "disabled";
574 };
575
576 dmic: dmic@4012e000 {
577 compatible = "ti,omap4-dmic";
578 reg = <0x4012e000 0x7f>, /* MPU private access */
579 <0x4902e000 0x7f>; /* L3 Interconnect */
580 reg-names = "mpu", "dma";
581 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
582 ti,hwmods = "dmic";
583 dmas = <&sdma 67>;
584 dma-names = "up_link";
585 status = "disabled";
586 };
587
588 mcbsp1: mcbsp@40122000 {
589 compatible = "ti,omap4-mcbsp";
590 reg = <0x40122000 0xff>, /* MPU private access */
591 <0x49022000 0xff>; /* L3 Interconnect */
592 reg-names = "mpu", "dma";
593 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
594 interrupt-names = "common";
595 ti,buffer-size = <128>;
596 ti,hwmods = "mcbsp1";
597 dmas = <&sdma 33>,
598 <&sdma 34>;
599 dma-names = "tx", "rx";
600 status = "disabled";
601 };
602
603 mcbsp2: mcbsp@40124000 {
604 compatible = "ti,omap4-mcbsp";
605 reg = <0x40124000 0xff>, /* MPU private access */
606 <0x49024000 0xff>; /* L3 Interconnect */
607 reg-names = "mpu", "dma";
608 interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
609 interrupt-names = "common";
610 ti,buffer-size = <128>;
611 ti,hwmods = "mcbsp2";
612 dmas = <&sdma 17>,
613 <&sdma 18>;
614 dma-names = "tx", "rx";
615 status = "disabled";
616 };
617
618 mcbsp3: mcbsp@40126000 {
619 compatible = "ti,omap4-mcbsp";
620 reg = <0x40126000 0xff>, /* MPU private access */
621 <0x49026000 0xff>; /* L3 Interconnect */
622 reg-names = "mpu", "dma";
623 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
624 interrupt-names = "common";
625 ti,buffer-size = <128>;
626 ti,hwmods = "mcbsp3";
627 dmas = <&sdma 19>,
628 <&sdma 20>;
629 dma-names = "tx", "rx";
630 status = "disabled";
631 };
632
633 mailbox: mailbox@4a0f4000 {
634 compatible = "ti,omap4-mailbox";
635 reg = <0x4a0f4000 0x200>;
636 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
637 ti,hwmods = "mailbox";
638 };
639
640 timer1: timer@4ae18000 {
641 compatible = "ti,omap5430-timer";
642 reg = <0x4ae18000 0x80>;
643 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
644 ti,hwmods = "timer1";
645 ti,timer-alwon;
646 };
647
648 timer2: timer@48032000 {
649 compatible = "ti,omap5430-timer";
650 reg = <0x48032000 0x80>;
651 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
652 ti,hwmods = "timer2";
653 };
654
655 timer3: timer@48034000 {
656 compatible = "ti,omap5430-timer";
657 reg = <0x48034000 0x80>;
658 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
659 ti,hwmods = "timer3";
660 };
661
662 timer4: timer@48036000 {
663 compatible = "ti,omap5430-timer";
664 reg = <0x48036000 0x80>;
665 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
666 ti,hwmods = "timer4";
667 };
668
669 timer5: timer@40138000 {
670 compatible = "ti,omap5430-timer";
671 reg = <0x40138000 0x80>,
672 <0x49038000 0x80>;
673 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
674 ti,hwmods = "timer5";
675 ti,timer-dsp;
676 ti,timer-pwm;
677 };
678
679 timer6: timer@4013a000 {
680 compatible = "ti,omap5430-timer";
681 reg = <0x4013a000 0x80>,
682 <0x4903a000 0x80>;
683 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
684 ti,hwmods = "timer6";
685 ti,timer-dsp;
686 ti,timer-pwm;
687 };
688
689 timer7: timer@4013c000 {
690 compatible = "ti,omap5430-timer";
691 reg = <0x4013c000 0x80>,
692 <0x4903c000 0x80>;
693 interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
694 ti,hwmods = "timer7";
695 ti,timer-dsp;
696 };
697
698 timer8: timer@4013e000 {
699 compatible = "ti,omap5430-timer";
700 reg = <0x4013e000 0x80>,
701 <0x4903e000 0x80>;
702 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
703 ti,hwmods = "timer8";
704 ti,timer-dsp;
705 ti,timer-pwm;
706 };
707
708 timer9: timer@4803e000 {
709 compatible = "ti,omap5430-timer";
710 reg = <0x4803e000 0x80>;
711 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
712 ti,hwmods = "timer9";
713 ti,timer-pwm;
714 };
715
716 timer10: timer@48086000 {
717 compatible = "ti,omap5430-timer";
718 reg = <0x48086000 0x80>;
719 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
720 ti,hwmods = "timer10";
721 ti,timer-pwm;
722 };
723
724 timer11: timer@48088000 {
725 compatible = "ti,omap5430-timer";
726 reg = <0x48088000 0x80>;
727 interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
728 ti,hwmods = "timer11";
729 ti,timer-pwm;
730 };
731
732 wdt2: wdt@4ae14000 {
733 compatible = "ti,omap5-wdt", "ti,omap3-wdt";
734 reg = <0x4ae14000 0x80>;
735 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
736 ti,hwmods = "wd_timer2";
737 };
738
739 dmm@4e000000 {
740 compatible = "ti,omap5-dmm";
741 reg = <0x4e000000 0x800>;
742 interrupts = <0 113 0x4>;
743 ti,hwmods = "dmm";
744 };
745
746 emif1: emif@4c000000 {
747 compatible = "ti,emif-4d5";
748 ti,hwmods = "emif1";
749 ti,no-idle-on-init;
750 phy-type = <2>; /* DDR PHY type: Intelli PHY */
751 reg = <0x4c000000 0x400>;
752 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
753 hw-caps-read-idle-ctrl;
754 hw-caps-ll-interface;
755 hw-caps-temp-alert;
756 };
757
758 emif2: emif@4d000000 {
759 compatible = "ti,emif-4d5";
760 ti,hwmods = "emif2";
761 ti,no-idle-on-init;
762 phy-type = <2>; /* DDR PHY type: Intelli PHY */
763 reg = <0x4d000000 0x400>;
764 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
765 hw-caps-read-idle-ctrl;
766 hw-caps-ll-interface;
767 hw-caps-temp-alert;
768 };
769
770 omap_control_usb2phy: control-phy@4a002300 {
771 compatible = "ti,control-phy-usb2";
772 reg = <0x4a002300 0x4>;
773 reg-names = "power";
774 };
775
776 omap_control_usb3phy: control-phy@4a002370 {
777 compatible = "ti,control-phy-pipe3";
778 reg = <0x4a002370 0x4>;
779 reg-names = "power";
780 };
781
782 usb3: omap_dwc3@4a020000 {
783 compatible = "ti,dwc3";
784 ti,hwmods = "usb_otg_ss";
785 reg = <0x4a020000 0x10000>;
786 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
787 #address-cells = <1>;
788 #size-cells = <1>;
789 utmi-mode = <2>;
790 ranges;
791 dwc3@4a030000 {
792 compatible = "snps,dwc3";
793 reg = <0x4a030000 0x10000>;
794 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
795 phys = <&usb2_phy>, <&usb3_phy>;
796 phy-names = "usb2-phy", "usb3-phy";
797 dr_mode = "peripheral";
798 tx-fifo-resize;
799 };
800 };
801
802 ocp2scp@4a080000 {
803 compatible = "ti,omap-ocp2scp";
804 #address-cells = <1>;
805 #size-cells = <1>;
806 reg = <0x4a080000 0x20>;
807 ranges;
808 ti,hwmods = "ocp2scp1";
809 usb2_phy: usb2phy@4a084000 {
810 compatible = "ti,omap-usb2";
811 reg = <0x4a084000 0x7c>;
812 ctrl-module = <&omap_control_usb2phy>;
813 #phy-cells = <0>;
814 };
815
816 usb3_phy: usb3phy@4a084400 {
817 compatible = "ti,omap-usb3";
818 reg = <0x4a084400 0x80>,
819 <0x4a084800 0x64>,
820 <0x4a084c00 0x40>;
821 reg-names = "phy_rx", "phy_tx", "pll_ctrl";
822 ctrl-module = <&omap_control_usb3phy>;
823 clocks = <&usb_phy_cm_clk32k>,
824 <&sys_clkin>,
825 <&usb_otg_ss_refclk960m>;
826 clock-names = "wkupclk",
827 "sysclk",
828 "refclk";
829 #phy-cells = <0>;
830 };
831 };
832
833 usbhstll: usbhstll@4a062000 {
834 compatible = "ti,usbhs-tll";
835 reg = <0x4a062000 0x1000>;
836 interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
837 ti,hwmods = "usb_tll_hs";
838 };
839
840 usbhshost: usbhshost@4a064000 {
841 compatible = "ti,usbhs-host";
842 reg = <0x4a064000 0x800>;
843 ti,hwmods = "usb_host_hs";
844 #address-cells = <1>;
845 #size-cells = <1>;
846 ranges;
847 clocks = <&l3init_60m_fclk>,
848 <&xclk60mhsp1_ck>,
849 <&xclk60mhsp2_ck>;
850 clock-names = "refclk_60m_int",
851 "refclk_60m_ext_p1",
852 "refclk_60m_ext_p2";
853
854 usbhsohci: ohci@4a064800 {
855 compatible = "ti,ohci-omap3";
856 reg = <0x4a064800 0x400>;
857 interrupt-parent = <&gic>;
858 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
859 };
860
861 usbhsehci: ehci@4a064c00 {
862 compatible = "ti,ehci-omap";
863 reg = <0x4a064c00 0x400>;
864 interrupt-parent = <&gic>;
865 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
866 };
867 };
868
869 bandgap: bandgap@4a0021e0 {
870 reg = <0x4a0021e0 0xc
871 0x4a00232c 0xc
872 0x4a002380 0x2c
873 0x4a0023C0 0x3c>;
874 interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
875 compatible = "ti,omap5430-bandgap";
876
877 #thermal-sensor-cells = <1>;
878 };
879 };
880};
881
882/include/ "omap54xx-clocks.dtsi"