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