Loading...
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * SoC core Device Tree for the ARM Integrator platforms
4 */
5
6/ {
7 #address-cells = <1>;
8 #size-cells = <1>;
9
10 memory {
11 device_type = "memory";
12 reg = <0x0 0x0>;
13 };
14
15 core-module@10000000 {
16 compatible = "arm,core-module-integrator", "syscon", "simple-mfd";
17 reg = <0x10000000 0x200>;
18
19 /* Use core module LED to indicate CPU load */
20 led@c.0 {
21 compatible = "register-bit-led";
22 offset = <0x0c>;
23 mask = <0x01>;
24 label = "integrator:core_module";
25 linux,default-trigger = "cpu0";
26 default-state = "on";
27 };
28 };
29
30 ebi@12000000 {
31 compatible = "arm,external-bus-interface";
32 reg = <0x12000000 0x100>;
33 };
34
35 timer@13000000 {
36 reg = <0x13000000 0x100>;
37 interrupt-parent = <&pic>;
38 interrupts = <5>;
39 };
40
41 timer@13000100 {
42 reg = <0x13000100 0x100>;
43 interrupt-parent = <&pic>;
44 interrupts = <6>;
45 };
46
47 timer@13000200 {
48 reg = <0x13000200 0x100>;
49 interrupt-parent = <&pic>;
50 interrupts = <7>;
51 };
52
53 pic@14000000 {
54 compatible = "arm,versatile-fpga-irq";
55 #interrupt-cells = <1>;
56 interrupt-controller;
57 reg = <0x14000000 0x100>;
58 clear-mask = <0xffffffff>;
59 };
60
61 flash@24000000 {
62 compatible = "arm,versatile-flash", "cfi-flash";
63 reg = <0x24000000 0x02000000>;
64 bank-width = <4>;
65 partitions {
66 compatible = "arm,arm-firmware-suite";
67 };
68 };
69
70 fpga {
71 compatible = "simple-bus";
72 #address-cells = <1>;
73 #size-cells = <1>;
74 ranges;
75 interrupt-parent = <&pic>;
76
77 /*
78 * These PrimeCells are in the same locations and using the
79 * same interrupts in all Integrators, however the silicon
80 * version deployed is different.
81 */
82 rtc@15000000 {
83 reg = <0x15000000 0x1000>;
84 interrupts = <8>;
85 };
86
87 uart@16000000 {
88 reg = <0x16000000 0x1000>;
89 interrupts = <1>;
90 };
91
92 uart@17000000 {
93 reg = <0x17000000 0x1000>;
94 interrupts = <2>;
95 };
96
97 kmi@18000000 {
98 reg = <0x18000000 0x1000>;
99 interrupts = <3>;
100 };
101
102 kmi@19000000 {
103 reg = <0x19000000 0x1000>;
104 interrupts = <4>;
105 };
106
107 syscon {
108 /* Debug registers mapped as syscon */
109 compatible = "syscon", "simple-mfd";
110 reg = <0x1a000000 0x10>;
111
112 led@4.0 {
113 compatible = "register-bit-led";
114 offset = <0x04>;
115 mask = <0x01>;
116 label = "integrator:green0";
117 linux,default-trigger = "heartbeat";
118 default-state = "on";
119 };
120 led@4.1 {
121 compatible = "register-bit-led";
122 offset = <0x04>;
123 mask = <0x02>;
124 label = "integrator:yellow";
125 default-state = "off";
126 };
127 led@4.2 {
128 compatible = "register-bit-led";
129 offset = <0x04>;
130 mask = <0x04>;
131 label = "integrator:red";
132 default-state = "off";
133 };
134 led@4.3 {
135 compatible = "register-bit-led";
136 offset = <0x04>;
137 mask = <0x08>;
138 label = "integrator:green1";
139 default-state = "off";
140 };
141 };
142 };
143};
1/*
2 * SoC core Device Tree for the ARM Integrator platforms
3 */
4
5/include/ "skeleton.dtsi"
6
7/ {
8 core-module@10000000 {
9 compatible = "arm,core-module-integrator", "syscon", "simple-mfd";
10 reg = <0x10000000 0x200>;
11
12 /* Use core module LED to indicate CPU load */
13 led@0c.0 {
14 compatible = "register-bit-led";
15 offset = <0x0c>;
16 mask = <0x01>;
17 label = "integrator:core_module";
18 linux,default-trigger = "cpu0";
19 default-state = "on";
20 };
21 };
22
23 ebi@12000000 {
24 compatible = "arm,external-bus-interface";
25 reg = <0x12000000 0x100>;
26 };
27
28 timer@13000000 {
29 reg = <0x13000000 0x100>;
30 interrupt-parent = <&pic>;
31 interrupts = <5>;
32 };
33
34 timer@13000100 {
35 reg = <0x13000100 0x100>;
36 interrupt-parent = <&pic>;
37 interrupts = <6>;
38 };
39
40 timer@13000200 {
41 reg = <0x13000200 0x100>;
42 interrupt-parent = <&pic>;
43 interrupts = <7>;
44 };
45
46 pic@14000000 {
47 compatible = "arm,versatile-fpga-irq";
48 #interrupt-cells = <1>;
49 interrupt-controller;
50 reg = <0x14000000 0x100>;
51 clear-mask = <0xffffffff>;
52 };
53
54 flash@24000000 {
55 compatible = "arm,versatile-flash", "cfi-flash";
56 reg = <0x24000000 0x02000000>;
57 bank-width = <4>;
58 };
59
60 fpga {
61 compatible = "simple-bus";
62 #address-cells = <1>;
63 #size-cells = <1>;
64 ranges;
65 interrupt-parent = <&pic>;
66
67 /*
68 * These PrimeCells are in the same locations and using the
69 * same interrupts in all Integrators, however the silicon
70 * version deployed is different.
71 */
72 rtc@15000000 {
73 reg = <0x15000000 0x1000>;
74 interrupts = <8>;
75 };
76
77 uart@16000000 {
78 reg = <0x16000000 0x1000>;
79 interrupts = <1>;
80 };
81
82 uart@17000000 {
83 reg = <0x17000000 0x1000>;
84 interrupts = <2>;
85 };
86
87 kmi@18000000 {
88 reg = <0x18000000 0x1000>;
89 interrupts = <3>;
90 };
91
92 kmi@19000000 {
93 reg = <0x19000000 0x1000>;
94 interrupts = <4>;
95 };
96
97 syscon {
98 /* Debug registers mapped as syscon */
99 compatible = "syscon", "simple-mfd";
100 reg = <0x1a000000 0x10>;
101
102 led@04.0 {
103 compatible = "register-bit-led";
104 offset = <0x04>;
105 mask = <0x01>;
106 label = "integrator:green0";
107 linux,default-trigger = "heartbeat";
108 default-state = "on";
109 };
110 led@04.1 {
111 compatible = "register-bit-led";
112 offset = <0x04>;
113 mask = <0x02>;
114 label = "integrator:yellow";
115 default-state = "off";
116 };
117 led@04.2 {
118 compatible = "register-bit-led";
119 offset = <0x04>;
120 mask = <0x04>;
121 label = "integrator:red";
122 default-state = "off";
123 };
124 led@04.3 {
125 compatible = "register-bit-led";
126 offset = <0x04>;
127 mask = <0x08>;
128 label = "integrator:green1";
129 default-state = "off";
130 };
131 };
132 };
133};