]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blame - arch/arm/boot/dts/omap5.dtsi
Merge tag 'powerpc-5.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
[mirror_ubuntu-hirsute-kernel.git] / arch / arm / boot / dts / omap5.dtsi
CommitLineData
6b5de091
S
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
4c387984 10#include <dt-bindings/bus/ti-sysc.h>
6d624eab 11#include <dt-bindings/gpio/gpio.h>
8fea7d5a 12#include <dt-bindings/interrupt-controller/arm-gic.h>
bcd3cca7 13#include <dt-bindings/pinctrl/omap.h>
460c4961 14#include <dt-bindings/clock/omap5.h>
6b5de091 15
6b5de091 16/ {
98cc4544
TL
17 #address-cells = <2>;
18 #size-cells = <2>;
ba1829bc 19
6b5de091 20 compatible = "ti,omap5";
7136d457 21 interrupt-parent = <&wakeupgen>;
c9faa84c 22 chosen { };
6b5de091
S
23
24 aliases {
20b80942
NM
25 i2c0 = &i2c1;
26 i2c1 = &i2c2;
27 i2c2 = &i2c3;
28 i2c3 = &i2c4;
29 i2c4 = &i2c5;
6b5de091
S
30 serial0 = &uart1;
31 serial1 = &uart2;
32 serial2 = &uart3;
33 serial3 = &uart4;
34 serial4 = &uart5;
35 serial5 = &uart6;
36 };
37
38 cpus {
eeb25fd5
LP
39 #address-cells = <1>;
40 #size-cells = <0>;
41
b8981d71 42 cpu0: cpu@0 {
eeb25fd5 43 device_type = "cpu";
6b5de091 44 compatible = "arm,cortex-a15";
eeb25fd5 45 reg = <0x0>;
6c24894d
K
46
47 operating-points = <
48 /* kHz uV */
6c24894d
K
49 1000000 1060000
50 1500000 1250000
51 >;
8d766fa2
NM
52
53 clocks = <&dpll_mpu_ck>;
54 clock-names = "cpu";
55
56 clock-latency = <300000>; /* From omap-cpufreq driver */
57
2cd29f63 58 /* cooling options */
2cd29f63 59 #cooling-cells = <2>; /* min followed by max */
6b5de091
S
60 };
61 cpu@1 {
eeb25fd5 62 device_type = "cpu";
6b5de091 63 compatible = "arm,cortex-a15";
eeb25fd5 64 reg = <0x1>;
484d578b
VK
65
66 operating-points = <
67 /* kHz uV */
68 1000000 1060000
69 1500000 1250000
70 >;
71
72 clocks = <&dpll_mpu_ck>;
73 clock-names = "cpu";
74
75 clock-latency = <300000>; /* From omap-cpufreq driver */
76
77 /* cooling options */
78 #cooling-cells = <2>; /* min followed by max */
6b5de091
S
79 };
80 };
81
1b761fc5
EV
82 thermal-zones {
83 #include "omap4-cpu-thermal.dtsi"
84 #include "omap5-gpu-thermal.dtsi"
85 #include "omap5-core-thermal.dtsi"
86 };
87
b45ccc4e
SS
88 timer {
89 compatible = "arm,armv7-timer";
8fea7d5a
FV
90 /* PPI secure/nonsecure IRQ */
91 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
92 <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
93 <GIC_PPI 11 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
94 <GIC_PPI 10 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>;
7136d457 95 interrupt-parent = <&gic>;
b45ccc4e
SS
96 };
97
69a126cb
NL
98 pmu {
99 compatible = "arm,cortex-a15-pmu";
100 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
101 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
102 };
103
ba1829bc
SS
104 gic: interrupt-controller@48211000 {
105 compatible = "arm,cortex-a15-gic";
106 interrupt-controller;
107 #interrupt-cells = <3>;
98cc4544 108 reg = <0 0x48211000 0 0x1000>,
387720c9 109 <0 0x48212000 0 0x2000>,
98cc4544
TL
110 <0 0x48214000 0 0x2000>,
111 <0 0x48216000 0 0x2000>;
7136d457
MZ
112 interrupt-parent = <&gic>;
113 };
114
115 wakeupgen: interrupt-controller@48281000 {
116 compatible = "ti,omap5-wugen-mpu", "ti,omap4-wugen-mpu";
117 interrupt-controller;
118 #interrupt-cells = <3>;
98cc4544 119 reg = <0 0x48281000 0 0x1000>;
7136d457 120 interrupt-parent = <&gic>;
ba1829bc
SS
121 };
122
6b5de091 123 /*
5c5be9db 124 * The soc node represents the soc top level view. It is used for IPs
6b5de091
S
125 * that are not memory mapped in the MPU view or for the MPU itself.
126 */
127 soc {
128 compatible = "ti,omap-infra";
129 mpu {
1306c08a 130 compatible = "ti,omap4-mpu";
6b5de091 131 ti,hwmods = "mpu";
1306c08a 132 sram = <&ocmcram>;
6b5de091
S
133 };
134 };
135
136 /*
137 * XXX: Use a flat representation of the OMAP3 interconnect.
138 * The real OMAP interconnect network is quite complex.
b7ab524b 139 * Since it will not bring real advantage to represent that in DT for
6b5de091
S
140 * the moment, just use a fake OCP bus entry to represent the whole bus
141 * hierarchy.
142 */
143 ocp {
e7309c26 144 compatible = "ti,omap5-l3-noc", "simple-bus";
6b5de091
S
145 #address-cells = <1>;
146 #size-cells = <1>;
98cc4544 147 ranges = <0 0 0 0xc0000000>;
6b5de091 148 ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
98cc4544
TL
149 reg = <0 0x44000000 0 0x2000>,
150 <0 0x44800000 0 0x3000>,
151 <0 0x45000000 0 0x4000>;
8fea7d5a
FV
152 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
153 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
6b5de091 154
4c387984 155 l4_wkup: interconnect@4ae00000 {
85dc74e9
TK
156 };
157
4c387984
TL
158 l4_cfg: interconnect@4a000000 {
159 };
0b75c042 160
4c387984 161 l4_per: interconnect@48000000 {
cd042fe5
B
162 };
163
b2770b2d
TL
164 l4_abe: interconnect@40100000 {
165 };
166
8b9a2810
RN
167 ocmcram: ocmcram@40300000 {
168 compatible = "mmio-sram";
169 reg = <0x40300000 0x20000>; /* 128k */
170 };
171
1c7dbb55
JH
172 gpmc: gpmc@50000000 {
173 compatible = "ti,omap4430-gpmc";
174 reg = <0x50000000 0x1000>;
175 #address-cells = <2>;
176 #size-cells = <1>;
8fea7d5a 177 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
201c7e33
FCJ
178 dmas = <&sdma 4>;
179 dma-names = "rxtx";
1c7dbb55
JH
180 gpmc,num-cs = <8>;
181 gpmc,num-waitpins = <4>;
182 ti,hwmods = "gpmc";
7b8b6af1
FV
183 clocks = <&l3_iclk_div>;
184 clock-names = "fck";
e99d413f
RQ
185 interrupt-controller;
186 #interrupt-cells = <2>;
187 gpio-controller;
188 #gpio-cells = <2>;
1c7dbb55
JH
189 };
190
2dcfa56e
SA
191 mmu_dsp: mmu@4a066000 {
192 compatible = "ti,omap4-iommu";
193 reg = <0x4a066000 0x100>;
194 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
195 ti,hwmods = "mmu_dsp";
c1b5d0f6 196 #iommu-cells = <0>;
2dcfa56e
SA
197 };
198
199 mmu_ipu: mmu@55082000 {
200 compatible = "ti,omap4-iommu";
201 reg = <0x55082000 0x100>;
202 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
203 ti,hwmods = "mmu_ipu";
c1b5d0f6 204 #iommu-cells = <0>;
2dcfa56e
SA
205 ti,iommu-bus-err-back;
206 };
207
1a5fe3ca
AT
208 dmm@4e000000 {
209 compatible = "ti,omap5-dmm";
210 reg = <0x4e000000 0x800>;
211 interrupts = <0 113 0x4>;
212 ti,hwmods = "dmm";
213 };
214
8906d654 215 emif1: emif@4c000000 {
e6900ddf
LV
216 compatible = "ti,emif-4d5";
217 ti,hwmods = "emif1";
f12ecbe2 218 ti,no-idle-on-init;
e6900ddf
LV
219 phy-type = <2>; /* DDR PHY type: Intelli PHY */
220 reg = <0x4c000000 0x400>;
8fea7d5a 221 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
e6900ddf
LV
222 hw-caps-read-idle-ctrl;
223 hw-caps-ll-interface;
224 hw-caps-temp-alert;
225 };
226
8906d654 227 emif2: emif@4d000000 {
e6900ddf
LV
228 compatible = "ti,emif-4d5";
229 ti,hwmods = "emif2";
f12ecbe2 230 ti,no-idle-on-init;
e6900ddf
LV
231 phy-type = <2>; /* DDR PHY type: Intelli PHY */
232 reg = <0x4d000000 0x400>;
8fea7d5a 233 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
e6900ddf
LV
234 hw-caps-read-idle-ctrl;
235 hw-caps-ll-interface;
236 hw-caps-temp-alert;
237 };
fedc428e 238
1b761fc5 239 bandgap: bandgap@4a0021e0 {
cbad26db
EV
240 reg = <0x4a0021e0 0xc
241 0x4a00232c 0xc
242 0x4a002380 0x2c
243 0x4a0023C0 0x3c>;
244 interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
245 compatible = "ti,omap5430-bandgap";
1b761fc5
EV
246
247 #thermal-sensor-cells = <1>;
cbad26db 248 };
4f82952c 249
4f82952c 250 /* OCP2SCP3 */
4f82952c
B
251 sata: sata@4a141100 {
252 compatible = "snps,dwc-ahci";
253 reg = <0x4a140000 0x1100>, <0x4a141100 0x7>;
254 interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
255 phys = <&sata_phy>;
256 phy-names = "sata-phy";
460c4961 257 clocks = <&l3init_clkctrl OMAP5_SATA_CLKCTRL 8>;
4f82952c 258 ti,hwmods = "sata";
87cb1291 259 ports-implemented = <0x1>;
4f82952c
B
260 };
261
e7585c4f
TV
262 dss: dss@58000000 {
263 compatible = "ti,omap5-dss";
264 reg = <0x58000000 0x80>;
265 status = "disabled";
266 ti,hwmods = "dss_core";
460c4961 267 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
e7585c4f
TV
268 clock-names = "fck";
269 #address-cells = <1>;
270 #size-cells = <1>;
271 ranges;
272
273 dispc@58001000 {
274 compatible = "ti,omap5-dispc";
275 reg = <0x58001000 0x1000>;
276 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
277 ti,hwmods = "dss_dispc";
460c4961 278 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
e7585c4f
TV
279 clock-names = "fck";
280 };
281
84ace674
TV
282 rfbi: encoder@58002000 {
283 compatible = "ti,omap5-rfbi";
284 reg = <0x58002000 0x100>;
285 status = "disabled";
286 ti,hwmods = "dss_rfbi";
460c4961 287 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>, <&l3_iclk_div>;
84ace674
TV
288 clock-names = "fck", "ick";
289 };
290
e7585c4f
TV
291 dsi1: encoder@58004000 {
292 compatible = "ti,omap5-dsi";
293 reg = <0x58004000 0x200>,
294 <0x58004200 0x40>,
295 <0x58004300 0x40>;
296 reg-names = "proto", "phy", "pll";
297 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
298 status = "disabled";
299 ti,hwmods = "dss_dsi1";
460c4961
TK
300 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>,
301 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
e7585c4f
TV
302 clock-names = "fck", "sys_clk";
303 };
304
305 dsi2: encoder@58005000 {
306 compatible = "ti,omap5-dsi";
307 reg = <0x58009000 0x200>,
308 <0x58009200 0x40>,
309 <0x58009300 0x40>;
310 reg-names = "proto", "phy", "pll";
311 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
312 status = "disabled";
313 ti,hwmods = "dss_dsi2";
460c4961
TK
314 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>,
315 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
e7585c4f
TV
316 clock-names = "fck", "sys_clk";
317 };
318
319 hdmi: encoder@58060000 {
320 compatible = "ti,omap5-hdmi";
321 reg = <0x58040000 0x200>,
322 <0x58040200 0x80>,
323 <0x58040300 0x80>,
324 <0x58060000 0x19000>;
325 reg-names = "wp", "pll", "phy", "core";
326 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
327 status = "disabled";
328 ti,hwmods = "dss_hdmi";
460c4961
TK
329 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
330 <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
e7585c4f 331 clock-names = "fck", "sys_clk";
7d0fde39
JS
332 dmas = <&sdma 76>;
333 dma-names = "audio_tx";
e7585c4f
TV
334 };
335 };
07b9b3d9
AT
336
337 abb_mpu: regulator-abb-mpu {
338 compatible = "ti,abb-v2";
339 regulator-name = "abb_mpu";
340 #address-cells = <0>;
341 #size-cells = <0>;
342 clocks = <&sys_clkin>;
343 ti,settling-time = <50>;
344 ti,clock-cycles = <16>;
345
346 reg = <0x4ae07cdc 0x8>, <0x4ae06014 0x4>,
347 <0x4a0021c4 0x8>, <0x4ae0c318 0x4>;
348 reg-names = "base-address", "int-address",
349 "efuse-address", "ldo-address";
350 ti,tranxdone-status-mask = <0x80>;
351 /* LDOVBBMPU_MUX_CTRL */
352 ti,ldovbb-override-mask = <0x400>;
353 /* LDOVBBMPU_VSET_OUT */
354 ti,ldovbb-vset-mask = <0x1F>;
355
356 /*
357 * NOTE: only FBB mode used but actual vset will
358 * determine final biasing
359 */
360 ti,abb_info = <
361 /*uV ABB efuse rbb_m fbb_m vset_m*/
362 1060000 0 0x0 0 0x02000000 0x01F00000
363 1250000 0 0x4 0 0x02000000 0x01F00000
364 >;
365 };
366
367 abb_mm: regulator-abb-mm {
368 compatible = "ti,abb-v2";
369 regulator-name = "abb_mm";
370 #address-cells = <0>;
371 #size-cells = <0>;
372 clocks = <&sys_clkin>;
373 ti,settling-time = <50>;
374 ti,clock-cycles = <16>;
375
376 reg = <0x4ae07ce4 0x8>, <0x4ae06010 0x4>,
377 <0x4a0021a4 0x8>, <0x4ae0c314 0x4>;
378 reg-names = "base-address", "int-address",
379 "efuse-address", "ldo-address";
380 ti,tranxdone-status-mask = <0x80000000>;
381 /* LDOVBBMM_MUX_CTRL */
382 ti,ldovbb-override-mask = <0x400>;
383 /* LDOVBBMM_VSET_OUT */
384 ti,ldovbb-vset-mask = <0x1F>;
385
386 /*
387 * NOTE: only FBB mode used but actual vset will
388 * determine final biasing
389 */
390 ti,abb_info = <
391 /*uV ABB efuse rbb_m fbb_m vset_m*/
392 1025000 0 0x0 0 0x02000000 0x01F00000
393 1120000 0 0x4 0 0x02000000 0x01F00000
394 >;
395 };
6b5de091
S
396 };
397};
85dc74e9 398
38f5c8ba
TK
399&cpu_thermal {
400 polling-delay = <500>; /* milliseconds */
257b1b7c 401 coefficients = <65 (-1791)>;
38f5c8ba
TK
402};
403
4c387984 404#include "omap5-l4.dtsi"
460c4961 405#include "omap54xx-clocks.dtsi"
257b1b7c
K
406
407&gpu_thermal {
408 coefficients = <117 (-2992)>;
409};
410
411&core_thermal {
412 coefficients = <0 2000>;
413};
b2770b2d
TL
414
415#include "omap5-l4-abe.dtsi"
416#include "omap54xx-clocks.dtsi"