Merge tag 'edac_for_4.20_2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / actions / s700.dtsi
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Copyright (c) 2017 Andreas Färber
4  */
5
6 #include <dt-bindings/clock/actions,s700-cmu.h>
7 #include <dt-bindings/interrupt-controller/arm-gic.h>
8
9 / {
10         compatible = "actions,s700";
11         interrupt-parent = <&gic>;
12         #address-cells = <2>;
13         #size-cells = <2>;
14
15         cpus {
16                 #address-cells = <2>;
17                 #size-cells = <0>;
18
19                 cpu0: cpu@0 {
20                         device_type = "cpu";
21                         compatible = "arm,cortex-a53", "arm,armv8";
22                         reg = <0x0 0x0>;
23                         enable-method = "psci";
24                 };
25
26                 cpu1: cpu@1 {
27                         device_type = "cpu";
28                         compatible = "arm,cortex-a53", "arm,armv8";
29                         reg = <0x0 0x1>;
30                         enable-method = "psci";
31                 };
32
33                 cpu2: cpu@2 {
34                         device_type = "cpu";
35                         compatible = "arm,cortex-a53", "arm,armv8";
36                         reg = <0x0 0x2>;
37                         enable-method = "psci";
38                 };
39
40                 cpu3: cpu@3 {
41                         device_type = "cpu";
42                         compatible = "arm,cortex-a53", "arm,armv8";
43                         reg = <0x0 0x3>;
44                         enable-method = "psci";
45                 };
46         };
47
48         reserved-memory {
49                 #address-cells = <2>;
50                 #size-cells = <2>;
51                 ranges;
52
53                 secmon@1f000000 {
54                         reg = <0x0 0x1f000000 0x0 0x1000000>;
55                         no-map;
56                 };
57         };
58
59         psci {
60                 compatible = "arm,psci-0.2";
61                 method = "smc";
62         };
63
64         arm-pmu {
65                 compatible = "arm,cortex-a53-pmu";
66                 interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
67                              <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
68                              <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
69                              <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
70                 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
71         };
72
73         timer {
74                 compatible = "arm,armv8-timer";
75                 interrupts = <GIC_PPI 13
76                         (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
77                              <GIC_PPI 14
78                         (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
79                              <GIC_PPI 11
80                         (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
81                              <GIC_PPI 10
82                         (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
83         };
84
85         hosc: hosc {
86                 compatible = "fixed-clock";
87                 clock-frequency = <24000000>;
88                 #clock-cells = <0>;
89         };
90
91         losc: losc {
92                 compatible = "fixed-clock";
93                 clock-frequency = <32768>;
94                 #clock-cells = <0>;
95         };
96
97         soc {
98                 compatible = "simple-bus";
99                 #address-cells = <2>;
100                 #size-cells = <2>;
101                 ranges;
102
103                 gic: interrupt-controller@e00f1000 {
104                         compatible = "arm,gic-400";
105                         reg = <0x0 0xe00f1000 0x0 0x1000>,
106                               <0x0 0xe00f2000 0x0 0x2000>,
107                               <0x0 0xe00f4000 0x0 0x2000>,
108                               <0x0 0xe00f6000 0x0 0x2000>;
109                         interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
110                         interrupt-controller;
111                         #interrupt-cells = <3>;
112                 };
113
114                 uart0: serial@e0120000 {
115                         compatible = "actions,s900-uart", "actions,owl-uart";
116                         reg = <0x0 0xe0120000 0x0 0x2000>;
117                         clocks = <&cmu CLK_UART0>;
118                         interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
119                         status = "disabled";
120                 };
121
122                 uart1: serial@e0122000 {
123                         compatible = "actions,s900-uart", "actions,owl-uart";
124                         reg = <0x0 0xe0122000 0x0 0x2000>;
125                         clocks = <&cmu CLK_UART1>;
126                         interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
127                         status = "disabled";
128                 };
129
130                 uart2: serial@e0124000 {
131                         compatible = "actions,s900-uart", "actions,owl-uart";
132                         reg = <0x0 0xe0124000 0x0 0x2000>;
133                         clocks = <&cmu CLK_UART2>;
134                         interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
135                         status = "disabled";
136                 };
137
138                 uart3: serial@e0126000 {
139                         compatible = "actions,s900-uart", "actions,owl-uart";
140                         reg = <0x0 0xe0126000 0x0 0x2000>;
141                         clocks = <&cmu CLK_UART3>;
142                         interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
143                         status = "disabled";
144                 };
145
146                 uart4: serial@e0128000 {
147                         compatible = "actions,s900-uart", "actions,owl-uart";
148                         reg = <0x0 0xe0128000 0x0 0x2000>;
149                         clocks = <&cmu CLK_UART4>;
150                         interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
151                         status = "disabled";
152                 };
153
154                 uart5: serial@e012a000 {
155                         compatible = "actions,s900-uart", "actions,owl-uart";
156                         reg = <0x0 0xe012a000 0x0 0x2000>;
157                         clocks = <&cmu CLK_UART5>;
158                         interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
159                         status = "disabled";
160                 };
161
162                 uart6: serial@e012c000 {
163                         compatible = "actions,s900-uart", "actions,owl-uart";
164                         reg = <0x0 0xe012c000 0x0 0x2000>;
165                         clocks = <&cmu CLK_UART6>;
166                         interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
167                         status = "disabled";
168                 };
169
170                 cmu: clock-controller@e0168000 {
171                         compatible = "actions,s700-cmu";
172                         reg = <0x0 0xe0168000 0x0 0x1000>;
173                         clocks = <&hosc>, <&losc>;
174                         #clock-cells = <1>;
175                 };
176
177                 sps: power-controller@e01b0100 {
178                         compatible = "actions,s700-sps";
179                         reg = <0x0 0xe01b0100 0x0 0x100>;
180                         #power-domain-cells = <1>;
181                 };
182
183                 timer: timer@e024c000 {
184                         compatible = "actions,s700-timer";
185                         reg = <0x0 0xe024c000 0x0 0x4000>;
186                         interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
187                         interrupt-names = "timer1";
188                 };
189         };
190 };