~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/synaptics/berlin4ct.dtsi

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
  2 /*
  3  * Copyright (C) 2015 Marvell Technology Group Ltd.
  4  *
  5  * Author: Jisheng Zhang <jszhang@marvell.com>
  6  */
  7 
  8 #include <dt-bindings/interrupt-controller/arm-gic.h>
  9 
 10 / {
 11         compatible = "marvell,berlin4ct", "marvell,berlin";
 12         interrupt-parent = <&gic>;
 13         #address-cells = <2>;
 14         #size-cells = <2>;
 15 
 16         aliases {
 17                 serial0 = &uart0;
 18         };
 19 
 20         psci {
 21                 compatible = "arm,psci-1.0", "arm,psci-0.2";
 22                 method = "smc";
 23         };
 24 
 25         cpus {
 26                 #address-cells = <1>;
 27                 #size-cells = <0>;
 28 
 29                 cpu0: cpu@0 {
 30                         compatible = "arm,cortex-a53";
 31                         device_type = "cpu";
 32                         reg = <0x0>;
 33                         enable-method = "psci";
 34                         next-level-cache = <&l2>;
 35                         cpu-idle-states = <&CPU_SLEEP_0>;
 36                 };
 37 
 38                 cpu1: cpu@1 {
 39                         compatible = "arm,cortex-a53";
 40                         device_type = "cpu";
 41                         reg = <0x1>;
 42                         enable-method = "psci";
 43                         next-level-cache = <&l2>;
 44                         cpu-idle-states = <&CPU_SLEEP_0>;
 45                 };
 46 
 47                 cpu2: cpu@2 {
 48                         compatible = "arm,cortex-a53";
 49                         device_type = "cpu";
 50                         reg = <0x2>;
 51                         enable-method = "psci";
 52                         next-level-cache = <&l2>;
 53                         cpu-idle-states = <&CPU_SLEEP_0>;
 54                 };
 55 
 56                 cpu3: cpu@3 {
 57                         compatible = "arm,cortex-a53";
 58                         device_type = "cpu";
 59                         reg = <0x3>;
 60                         enable-method = "psci";
 61                         next-level-cache = <&l2>;
 62                         cpu-idle-states = <&CPU_SLEEP_0>;
 63                 };
 64 
 65                 l2: cache {
 66                         compatible = "cache";
 67                         cache-level = <2>;
 68                         cache-unified;
 69                 };
 70 
 71                 idle-states {
 72                         entry-method = "psci";
 73                         CPU_SLEEP_0: cpu-sleep-0 {
 74                                 compatible = "arm,idle-state";
 75                                 local-timer-stop;
 76                                 arm,psci-suspend-param = <0x0010000>;
 77                                 entry-latency-us = <75>;
 78                                 exit-latency-us = <155>;
 79                                 min-residency-us = <1000>;
 80                         };
 81                 };
 82         };
 83 
 84         osc: osc {
 85                 compatible = "fixed-clock";
 86                 #clock-cells = <0>;
 87                 clock-frequency = <25000000>;
 88         };
 89 
 90         pmu {
 91                 compatible = "arm,cortex-a53-pmu";
 92                 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
 93                              <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
 94                              <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
 95                              <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
 96                 interrupt-affinity = <&cpu0>,
 97                                      <&cpu1>,
 98                                      <&cpu2>,
 99                                      <&cpu3>;
100         };
101 
102         timer {
103                 compatible = "arm,armv8-timer";
104                 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
105                              <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
106                              <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
107                              <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
108         };
109 
110         soc@f7000000 {
111                 compatible = "simple-bus";
112                 #address-cells = <1>;
113                 #size-cells = <1>;
114                 ranges = <0 0 0xf7000000 0x1000000>;
115 
116                 gic: interrupt-controller@901000 {
117                         compatible = "arm,gic-400";
118                         #interrupt-cells = <3>;
119                         interrupt-controller;
120                         reg = <0x901000 0x1000>,
121                               <0x902000 0x2000>,
122                               <0x904000 0x2000>,
123                               <0x906000 0x2000>;
124                         interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
125                 };
126 
127                 apb@e80000 {
128                         compatible = "simple-bus";
129                         #address-cells = <1>;
130                         #size-cells = <1>;
131 
132                         ranges = <0 0xe80000 0x10000>;
133                         interrupt-parent = <&aic>;
134 
135                         gpio0: gpio@400 {
136                                 compatible = "snps,dw-apb-gpio";
137                                 reg = <0x0400 0x400>;
138                                 #address-cells = <1>;
139                                 #size-cells = <0>;
140 
141                                 porta: gpio-port@0 {
142                                         compatible = "snps,dw-apb-gpio-port";
143                                         gpio-controller;
144                                         #gpio-cells = <2>;
145                                         ngpios = <32>;
146                                         reg = <0>;
147                                         interrupt-controller;
148                                         #interrupt-cells = <2>;
149                                         interrupts = <0>;
150                                 };
151                         };
152 
153                         gpio1: gpio@800 {
154                                 compatible = "snps,dw-apb-gpio";
155                                 reg = <0x0800 0x400>;
156                                 #address-cells = <1>;
157                                 #size-cells = <0>;
158 
159                                 portb: gpio-port@1 {
160                                         compatible = "snps,dw-apb-gpio-port";
161                                         gpio-controller;
162                                         #gpio-cells = <2>;
163                                         ngpios = <32>;
164                                         reg = <0>;
165                                         interrupt-controller;
166                                         #interrupt-cells = <2>;
167                                         interrupts = <1>;
168                                 };
169                         };
170 
171                         gpio2: gpio@c00 {
172                                 compatible = "snps,dw-apb-gpio";
173                                 reg = <0x0c00 0x400>;
174                                 #address-cells = <1>;
175                                 #size-cells = <0>;
176 
177                                 portc: gpio-port@2 {
178                                         compatible = "snps,dw-apb-gpio-port";
179                                         gpio-controller;
180                                         #gpio-cells = <2>;
181                                         ngpios = <32>;
182                                         reg = <0>;
183                                         interrupt-controller;
184                                         #interrupt-cells = <2>;
185                                         interrupts = <2>;
186                                 };
187                         };
188 
189                         gpio3: gpio@1000 {
190                                 compatible = "snps,dw-apb-gpio";
191                                 reg = <0x1000 0x400>;
192                                 #address-cells = <1>;
193                                 #size-cells = <0>;
194 
195                                 portd: gpio-port@3 {
196                                         compatible = "snps,dw-apb-gpio-port";
197                                         gpio-controller;
198                                         #gpio-cells = <2>;
199                                         ngpios = <32>;
200                                         reg = <0>;
201                                         interrupt-controller;
202                                         #interrupt-cells = <2>;
203                                         interrupts = <3>;
204                                 };
205                         };
206 
207                         aic: interrupt-controller@3800 {
208                                 compatible = "snps,dw-apb-ictl";
209                                 reg = <0x3800 0x30>;
210                                 interrupt-controller;
211                                 #interrupt-cells = <1>;
212                                 interrupt-parent = <&gic>;
213                                 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
214                         };
215                 };
216 
217                 soc_pinctrl: pin-controller@ea8000 {
218                         compatible = "marvell,berlin4ct-soc-pinctrl";
219                         reg = <0xea8000 0x14>;
220                 };
221 
222                 avio_pinctrl: pin-controller@ea8400 {
223                         compatible = "marvell,berlin4ct-avio-pinctrl";
224                         reg = <0xea8400 0x8>;
225                 };
226 
227                 apb@fc0000 {
228                         compatible = "simple-bus";
229                         #address-cells = <1>;
230                         #size-cells = <1>;
231                         ranges = <0 0xfc0000 0x10000>;
232                         interrupt-parent = <&sic>;
233 
234                         sic: interrupt-controller@1000 {
235                                 compatible = "snps,dw-apb-ictl";
236                                 reg = <0x1000 0x30>;
237                                 interrupt-controller;
238                                 #interrupt-cells = <1>;
239                                 interrupt-parent = <&gic>;
240                                 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
241                         };
242 
243                         wdt0: watchdog@3000 {
244                                 compatible = "snps,dw-wdt";
245                                 reg = <0x3000 0x100>;
246                                 clocks = <&osc>;
247                                 interrupts = <0>;
248                         };
249 
250                         wdt1: watchdog@4000 {
251                                 compatible = "snps,dw-wdt";
252                                 reg = <0x4000 0x100>;
253                                 clocks = <&osc>;
254                                 interrupts = <1>;
255                         };
256 
257                         wdt2: watchdog@5000 {
258                                 compatible = "snps,dw-wdt";
259                                 reg = <0x5000 0x100>;
260                                 clocks = <&osc>;
261                                 interrupts = <2>;
262                         };
263 
264                         sm_gpio0: gpio@8000 {
265                                 compatible = "snps,dw-apb-gpio";
266                                 reg = <0x8000 0x400>;
267                                 #address-cells = <1>;
268                                 #size-cells = <0>;
269 
270                                 porte: gpio-port@4 {
271                                         compatible = "snps,dw-apb-gpio-port";
272                                         gpio-controller;
273                                         #gpio-cells = <2>;
274                                         ngpios = <32>;
275                                         reg = <0>;
276                                 };
277                         };
278 
279                         sm_gpio1: gpio@9000 {
280                                 compatible = "snps,dw-apb-gpio";
281                                 reg = <0x9000 0x400>;
282                                 #address-cells = <1>;
283                                 #size-cells = <0>;
284 
285                                 portf: gpio-port@5 {
286                                         compatible = "snps,dw-apb-gpio-port";
287                                         gpio-controller;
288                                         #gpio-cells = <2>;
289                                         ngpios = <32>;
290                                         reg = <0>;
291                                 };
292                         };
293 
294                         uart0: serial@d000 {
295                                 compatible = "snps,dw-apb-uart";
296                                 reg = <0xd000 0x100>;
297                                 interrupts = <8>;
298                                 clocks = <&osc>;
299                                 reg-shift = <2>;
300                                 status = "disabled";
301                                 pinctrl-0 = <&uart0_pmux>;
302                                 pinctrl-names = "default";
303                         };
304                 };
305 
306                 system_pinctrl: pin-controller@fe2200 {
307                         compatible = "marvell,berlin4ct-system-pinctrl";
308                         reg = <0xfe2200 0xc>;
309 
310                         uart0_pmux: uart0-pmux {
311                                 groups = "SM_URT0_TXD", "SM_URT0_RXD";
312                                 function = "uart0";
313                         };
314                 };
315         };
316 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php