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

TOMOYO Linux Cross Reference
Linux/scripts/dtc/include-prefixes/arm64/sprd/sc9863a.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-only
  2 /*
  3  * Unisoc SC9863A SoC DTS file
  4  *
  5  * Copyright (C) 2019, Unisoc Inc.
  6  */
  7 
  8 #include <dt-bindings/clock/sprd,sc9863a-clk.h>
  9 #include <dt-bindings/interrupt-controller/arm-gic.h>
 10 #include "sharkl3.dtsi"
 11 
 12 / {
 13         cpus {
 14                 #address-cells = <2>;
 15                 #size-cells = <0>;
 16 
 17                 cpu-map {
 18                         cluster0 {
 19                                 core0 {
 20                                         cpu = <&CPU0>;
 21                                 };
 22                                 core1 {
 23                                         cpu = <&CPU1>;
 24                                 };
 25                                 core2 {
 26                                         cpu = <&CPU2>;
 27                                 };
 28                                 core3 {
 29                                         cpu = <&CPU3>;
 30                                 };
 31                                 core4 {
 32                                         cpu = <&CPU4>;
 33                                 };
 34                                 core5 {
 35                                         cpu = <&CPU5>;
 36                                 };
 37                                 core6 {
 38                                         cpu = <&CPU6>;
 39                                 };
 40                                 core7 {
 41                                         cpu = <&CPU7>;
 42                                 };
 43                         };
 44                 };
 45 
 46                 CPU0: cpu@0 {
 47                         device_type = "cpu";
 48                         compatible = "arm,cortex-a55";
 49                         reg = <0x0 0x0>;
 50                         enable-method = "psci";
 51                         cpu-idle-states = <&CORE_PD>;
 52                 };
 53 
 54                 CPU1: cpu@100 {
 55                         device_type = "cpu";
 56                         compatible = "arm,cortex-a55";
 57                         reg = <0x0 0x100>;
 58                         enable-method = "psci";
 59                         cpu-idle-states = <&CORE_PD>;
 60                 };
 61 
 62                 CPU2: cpu@200 {
 63                         device_type = "cpu";
 64                         compatible = "arm,cortex-a55";
 65                         reg = <0x0 0x200>;
 66                         enable-method = "psci";
 67                         cpu-idle-states = <&CORE_PD>;
 68                 };
 69 
 70                 CPU3: cpu@300 {
 71                         device_type = "cpu";
 72                         compatible = "arm,cortex-a55";
 73                         reg = <0x0 0x300>;
 74                         enable-method = "psci";
 75                         cpu-idle-states = <&CORE_PD>;
 76                 };
 77 
 78                 CPU4: cpu@400 {
 79                         device_type = "cpu";
 80                         compatible = "arm,cortex-a55";
 81                         reg = <0x0 0x400>;
 82                         enable-method = "psci";
 83                         cpu-idle-states = <&CORE_PD>;
 84                 };
 85 
 86                 CPU5: cpu@500 {
 87                         device_type = "cpu";
 88                         compatible = "arm,cortex-a55";
 89                         reg = <0x0 0x500>;
 90                         enable-method = "psci";
 91                         cpu-idle-states = <&CORE_PD>;
 92                 };
 93 
 94                 CPU6: cpu@600 {
 95                         device_type = "cpu";
 96                         compatible = "arm,cortex-a55";
 97                         reg = <0x0 0x600>;
 98                         enable-method = "psci";
 99                         cpu-idle-states = <&CORE_PD>;
100                 };
101 
102                 CPU7: cpu@700 {
103                         device_type = "cpu";
104                         compatible = "arm,cortex-a55";
105                         reg = <0x0 0x700>;
106                         enable-method = "psci";
107                         cpu-idle-states = <&CORE_PD>;
108                 };
109         };
110 
111         idle-states {
112                 entry-method = "psci";
113                 CORE_PD: core-pd {
114                         compatible = "arm,idle-state";
115                         entry-latency-us = <4000>;
116                         exit-latency-us = <4000>;
117                         min-residency-us = <10000>;
118                         local-timer-stop;
119                         arm,psci-suspend-param = <0x00010000>;
120                 };
121         };
122 
123         psci {
124                 compatible = "arm,psci-0.2";
125                 method = "smc";
126         };
127 
128         timer {
129                 compatible = "arm,armv8-timer";
130                 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, /* Physical Secure PPI */
131                              <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, /* Physical Non-Secure PPI */
132                              <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, /* Virtual PPI */
133                              <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; /* Hipervisor PPI */
134         };
135 
136         pmu {
137                 compatible = "arm,cortex-a55-pmu";
138                 interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
139                              <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
140                              <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
141                              <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
142                              <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
143                              <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
144                              <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>,
145                              <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
146         };
147 
148         soc {
149                 gic: interrupt-controller@14000000 {
150                         compatible = "arm,gic-v3";
151                         #interrupt-cells = <3>;
152                         #address-cells = <2>;
153                         #size-cells = <2>;
154                         ranges;
155                         redistributor-stride = <0x0 0x20000>;   /* 128KB stride */
156                         #redistributor-regions = <1>;
157                         interrupt-controller;
158                         reg = <0x0 0x14000000 0 0x20000>,       /* GICD */
159                               <0x0 0x14040000 0 0x100000>;      /* GICR */
160                         interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
161                 };
162 
163                 ap_clk: clock-controller@21500000 {
164                         compatible = "sprd,sc9863a-ap-clk";
165                         reg = <0 0x21500000 0 0x1000>;
166                         clocks = <&ext_32k>, <&ext_26m>;
167                         clock-names = "ext-32k", "ext-26m";
168                         #clock-cells = <1>;
169                 };
170 
171                 aon_clk: clock-controller@402d0000 {
172                         compatible = "sprd,sc9863a-aon-clk";
173                         reg = <0 0x402d0000 0 0x1000>;
174                         clocks = <&ext_26m>, <&rco_100m>,
175                                  <&ext_32k>, <&ext_4m>;
176                         clock-names = "ext-26m", "rco-100m",
177                                       "ext-32k", "ext-4m";
178                         #clock-cells = <1>;
179                 };
180 
181                 mm_clk: clock-controller@60900000 {
182                         compatible = "sprd,sc9863a-mm-clk";
183                         reg = <0 0x60900000 0 0x1000>;
184                         #clock-cells = <1>;
185                 };
186 
187                 funnel@10001000 {
188                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
189                         reg = <0 0x10001000 0 0x1000>;
190                         clocks = <&ext_26m>;
191                         clock-names = "apb_pclk";
192 
193                         out-ports {
194                                 port {
195                                         funnel_soc_out_port: endpoint {
196                                                 remote-endpoint = <&etb_in>;
197                                         };
198                                 };
199                         };
200 
201                         in-ports {
202                                 port {
203                                         funnel_soc_in_port: endpoint {
204                                                 remote-endpoint =
205                                                 <&funnel_ca55_out_port>;
206                                         };
207                                 };
208                         };
209                 };
210 
211                 etb@10003000 {
212                         compatible = "arm,coresight-tmc", "arm,primecell";
213                         reg = <0 0x10003000 0 0x1000>;
214                         clocks = <&ext_26m>;
215                         clock-names = "apb_pclk";
216 
217                         in-ports {
218                                 port {
219                                         etb_in: endpoint {
220                                                 remote-endpoint =
221                                                 <&funnel_soc_out_port>;
222                                         };
223                                 };
224                         };
225                 };
226 
227                 funnel@12001000 {
228                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
229                         reg = <0 0x12001000 0 0x1000>;
230                         clocks = <&ext_26m>;
231                         clock-names = "apb_pclk";
232 
233                         out-ports {
234                                 port {
235                                         funnel_little_out_port: endpoint {
236                                                 remote-endpoint =
237                                                 <&etf_little_in>;
238                                         };
239                                 };
240                         };
241 
242                         in-ports {
243                                 #address-cells = <1>;
244                                 #size-cells = <0>;
245 
246                                 port@0 {
247                                         reg = <0>;
248                                         funnel_little_in_port0: endpoint {
249                                                 remote-endpoint = <&etm0_out>;
250                                         };
251                                 };
252 
253                                 port@1 {
254                                         reg = <1>;
255                                         funnel_little_in_port1: endpoint {
256                                                 remote-endpoint = <&etm1_out>;
257                                         };
258                                 };
259 
260                                 port@2 {
261                                         reg = <2>;
262                                         funnel_little_in_port2: endpoint {
263                                                 remote-endpoint = <&etm2_out>;
264                                         };
265                                 };
266 
267                                 port@3 {
268                                         reg = <3>;
269                                         funnel_little_in_port3: endpoint {
270                                                 remote-endpoint = <&etm3_out>;
271                                         };
272                                 };
273                         };
274                 };
275 
276                 etf@12002000 {
277                         compatible = "arm,coresight-tmc", "arm,primecell";
278                         reg = <0 0x12002000 0 0x1000>;
279                         clocks = <&ext_26m>;
280                         clock-names = "apb_pclk";
281 
282                         out-ports {
283                                 port {
284                                         etf_little_out: endpoint {
285                                                 remote-endpoint =
286                                                 <&funnel_ca55_in_port0>;
287                                         };
288                                 };
289                         };
290 
291                         in-port {
292                                 port {
293                                         etf_little_in: endpoint {
294                                                 remote-endpoint =
295                                                 <&funnel_little_out_port>;
296                                         };
297                                 };
298                         };
299                 };
300 
301                 etf@12003000 {
302                         compatible = "arm,coresight-tmc", "arm,primecell";
303                         reg = <0 0x12003000 0 0x1000>;
304                         clocks = <&ext_26m>;
305                         clock-names = "apb_pclk";
306 
307                         out-ports {
308                                 port {
309                                         etf_big_out: endpoint {
310                                                 remote-endpoint =
311                                                 <&funnel_ca55_in_port1>;
312                                         };
313                                 };
314                         };
315 
316                         in-ports {
317                                 port {
318                                         etf_big_in: endpoint {
319                                                 remote-endpoint =
320                                                 <&funnel_big_out_port>;
321                                         };
322                                 };
323                         };
324                 };
325 
326                 funnel@12004000 {
327                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
328                         reg = <0 0x12004000 0 0x1000>;
329                         clocks = <&ext_26m>;
330                         clock-names = "apb_pclk";
331 
332                         out-ports {
333                                 port {
334                                         funnel_ca55_out_port: endpoint {
335                                                 remote-endpoint =
336                                                 <&funnel_soc_in_port>;
337                                         };
338                                 };
339                         };
340 
341                         in-ports {
342                                 #address-cells = <1>;
343                                 #size-cells = <0>;
344 
345                                 port@0 {
346                                         reg = <0>;
347                                         funnel_ca55_in_port0: endpoint {
348                                                 remote-endpoint =
349                                                 <&etf_little_out>;
350                                         };
351                                 };
352 
353                                 port@1 {
354                                         reg = <1>;
355                                         funnel_ca55_in_port1: endpoint {
356                                                 remote-endpoint =
357                                                 <&etf_big_out>;
358                                         };
359                                 };
360                         };
361                 };
362 
363                 funnel@12005000 {
364                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
365                         reg = <0 0x12005000 0 0x1000>;
366                         clocks = <&ext_26m>;
367                         clock-names = "apb_pclk";
368 
369                         out-ports {
370                                 port {
371                                         funnel_big_out_port: endpoint {
372                                                 remote-endpoint =
373                                                 <&etf_big_in>;
374                                         };
375                                 };
376                         };
377 
378                         in-ports {
379                                 #address-cells = <1>;
380                                 #size-cells = <0>;
381 
382                                 port@0 {
383                                         reg = <0>;
384                                         funnel_big_in_port0: endpoint {
385                                                 remote-endpoint = <&etm4_out>;
386                                         };
387                                 };
388 
389                                 port@1 {
390                                         reg = <1>;
391                                         funnel_big_in_port1: endpoint {
392                                                 remote-endpoint = <&etm5_out>;
393                                         };
394                                 };
395 
396                                 port@2 {
397                                         reg = <2>;
398                                         funnel_big_in_port2: endpoint {
399                                                 remote-endpoint = <&etm6_out>;
400                                         };
401                                 };
402 
403                                 port@3 {
404                                         reg = <3>;
405                                         funnel_big_in_port3: endpoint {
406                                                 remote-endpoint = <&etm7_out>;
407                                         };
408                                 };
409                         };
410                 };
411 
412                 etm@13040000 {
413                         compatible = "arm,coresight-etm4x", "arm,primecell";
414                         reg = <0 0x13040000 0 0x1000>;
415                         cpu = <&CPU0>;
416                         clocks = <&ext_26m>;
417                         clock-names = "apb_pclk";
418 
419                         out-ports {
420                                 port {
421                                         etm0_out: endpoint {
422                                                 remote-endpoint =
423                                                 <&funnel_little_in_port0>;
424                                         };
425                                 };
426                         };
427                 };
428 
429                 etm@13140000 {
430                         compatible = "arm,coresight-etm4x", "arm,primecell";
431                         reg = <0 0x13140000 0 0x1000>;
432                         cpu = <&CPU1>;
433                         clocks = <&ext_26m>;
434                         clock-names = "apb_pclk";
435 
436                         out-ports {
437                                 port {
438                                         etm1_out: endpoint {
439                                                 remote-endpoint =
440                                                 <&funnel_little_in_port1>;
441                                         };
442                                 };
443                         };
444                 };
445 
446                 etm@13240000 {
447                         compatible = "arm,coresight-etm4x", "arm,primecell";
448                         reg = <0 0x13240000 0 0x1000>;
449                         cpu = <&CPU2>;
450                         clocks = <&ext_26m>;
451                         clock-names = "apb_pclk";
452 
453                         out-ports {
454                                 port {
455                                         etm2_out: endpoint {
456                                                 remote-endpoint =
457                                                 <&funnel_little_in_port2>;
458                                         };
459                                 };
460                         };
461                 };
462 
463                 etm@13340000 {
464                         compatible = "arm,coresight-etm4x", "arm,primecell";
465                         reg = <0 0x13340000 0 0x1000>;
466                         cpu = <&CPU3>;
467                         clocks = <&ext_26m>;
468                         clock-names = "apb_pclk";
469 
470                         out-ports {
471                                 port {
472                                         etm3_out: endpoint {
473                                                 remote-endpoint =
474                                                 <&funnel_little_in_port3>;
475                                         };
476                                 };
477                         };
478                 };
479 
480                 etm@13440000 {
481                         compatible = "arm,coresight-etm4x", "arm,primecell";
482                         reg = <0 0x13440000 0 0x1000>;
483                         cpu = <&CPU4>;
484                         clocks = <&ext_26m>;
485                         clock-names = "apb_pclk";
486 
487                         out-ports {
488                                 port {
489                                         etm4_out: endpoint {
490                                                 remote-endpoint =
491                                                 <&funnel_big_in_port0>;
492                                         };
493                                 };
494                         };
495                 };
496 
497                 etm@13540000 {
498                         compatible = "arm,coresight-etm4x", "arm,primecell";
499                         reg = <0 0x13540000 0 0x1000>;
500                         cpu = <&CPU5>;
501                         clocks = <&ext_26m>;
502                         clock-names = "apb_pclk";
503 
504                         out-ports {
505                                 port {
506                                         etm5_out: endpoint {
507                                                 remote-endpoint =
508                                                 <&funnel_big_in_port1>;
509                                         };
510                                 };
511                         };
512                 };
513 
514                 etm@13640000 {
515                         compatible = "arm,coresight-etm4x", "arm,primecell";
516                         reg = <0 0x13640000 0 0x1000>;
517                         cpu = <&CPU6>;
518                         clocks = <&ext_26m>;
519                         clock-names = "apb_pclk";
520 
521                         out-ports {
522                                 port {
523                                         etm6_out: endpoint {
524                                                 remote-endpoint =
525                                                 <&funnel_big_in_port2>;
526                                         };
527                                 };
528                         };
529                 };
530 
531                 etm@13740000 {
532                         compatible = "arm,coresight-etm4x", "arm,primecell";
533                         reg = <0 0x13740000 0 0x1000>;
534                         cpu = <&CPU7>;
535                         clocks = <&ext_26m>;
536                         clock-names = "apb_pclk";
537 
538                         out-ports {
539                                 port {
540                                         etm7_out: endpoint {
541                                                 remote-endpoint =
542                                                 <&funnel_big_in_port3>;
543                                         };
544                                 };
545                         };
546                 };
547 
548                 ap-ahb {
549                         compatible = "simple-bus";
550                         #address-cells = <2>;
551                         #size-cells = <2>;
552                         ranges;
553 
554                         sdio0: mmc@20300000 {
555                                 compatible = "sprd,sdhci-r11";
556                                 reg = <0 0x20300000 0 0x1000>;
557                                 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
558 
559                                 clocks = <&aon_clk CLK_SDIO0_2X>,
560                                          <&apahb_gate CLK_SDIO0_EB>;
561                                 clock-names = "sdio", "enable";
562                                 assigned-clocks = <&aon_clk CLK_SDIO0_2X>;
563                                 assigned-clock-parents = <&rpll CLK_RPLL_390M>;
564 
565                                 bus-width = <4>;
566                                 no-sdio;
567                                 no-mmc;
568                         };
569 
570                         sdio3: mmc@20600000 {
571                                 compatible = "sprd,sdhci-r11";
572                                 reg = <0 0x20600000 0 0x1000>;
573                                 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
574 
575                                 clocks = <&aon_clk CLK_EMMC_2X>,
576                                          <&apahb_gate CLK_EMMC_EB>;
577                                 clock-names = "sdio", "enable";
578                                 assigned-clocks = <&aon_clk CLK_EMMC_2X>;
579                                 assigned-clock-parents = <&rpll CLK_RPLL_390M>;
580 
581                                 bus-width = <8>;
582                                 non-removable;
583                                 no-sdio;
584                                 no-sd;
585                                 cap-mmc-hw-reset;
586                         };
587                 };
588         };
589 };

~ [ 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