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

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/arm/juno-base.dtsi

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ 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.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0
  2 #include "juno-clocks.dtsi"
  3 #include "juno-motherboard.dtsi"
  4 
  5 / {
  6         /*
  7          *  Devices shared by all Juno boards
  8          */
  9 
 10         memtimer: timer@2a810000 {
 11                 compatible = "arm,armv7-timer-mem";
 12                 reg = <0x0 0x2a810000 0x0 0x10000>;
 13                 clock-frequency = <50000000>;
 14                 #address-cells = <1>;
 15                 #size-cells = <1>;
 16                 ranges = <0 0x0 0x2a820000 0x20000>;
 17                 status = "disabled";
 18                 frame@2a830000 {
 19                         frame-number = <1>;
 20                         interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
 21                         reg = <0x10000 0x10000>;
 22                 };
 23         };
 24 
 25         mailbox: mhu@2b1f0000 {
 26                 compatible = "arm,mhu", "arm,primecell";
 27                 reg = <0x0 0x2b1f0000 0x0 0x1000>;
 28                 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
 29                              <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
 30                              <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
 31                 #mbox-cells = <1>;
 32                 clocks = <&soc_refclk100mhz>;
 33                 clock-names = "apb_pclk";
 34         };
 35 
 36         smmu_gpu: iommu@2b400000 {
 37                 compatible = "arm,mmu-400", "arm,smmu-v1";
 38                 reg = <0x0 0x2b400000 0x0 0x10000>;
 39                 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
 40                              <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
 41                 #iommu-cells = <1>;
 42                 #global-interrupts = <1>;
 43                 power-domains = <&scpi_devpd 1>;
 44                 dma-coherent;
 45                 status = "disabled";
 46         };
 47 
 48         smmu_pcie: iommu@2b500000 {
 49                 compatible = "arm,mmu-401", "arm,smmu-v1";
 50                 reg = <0x0 0x2b500000 0x0 0x10000>;
 51                 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
 52                              <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
 53                 #iommu-cells = <1>;
 54                 #global-interrupts = <1>;
 55                 dma-coherent;
 56                 status = "disabled";
 57         };
 58 
 59         smmu_etr: iommu@2b600000 {
 60                 compatible = "arm,mmu-401", "arm,smmu-v1";
 61                 reg = <0x0 0x2b600000 0x0 0x10000>;
 62                 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
 63                              <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
 64                 #iommu-cells = <1>;
 65                 #global-interrupts = <1>;
 66                 dma-coherent;
 67                 power-domains = <&scpi_devpd 0>;
 68         };
 69 
 70         gic: interrupt-controller@2c010000 {
 71                 compatible = "arm,gic-400", "arm,cortex-a15-gic";
 72                 reg = <0x0 0x2c010000 0 0x1000>,
 73                       <0x0 0x2c02f000 0 0x2000>,
 74                       <0x0 0x2c04f000 0 0x2000>,
 75                       <0x0 0x2c06f000 0 0x2000>;
 76                 #address-cells = <1>;
 77                 #interrupt-cells = <3>;
 78                 #size-cells = <1>;
 79                 interrupt-controller;
 80                 interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>;
 81                 ranges = <0 0 0x2c1c0000 0x40000>;
 82 
 83                 v2m_0: v2m@0 {
 84                         compatible = "arm,gic-v2m-frame";
 85                         msi-controller;
 86                         reg = <0 0x10000>;
 87                 };
 88 
 89                 v2m@10000 {
 90                         compatible = "arm,gic-v2m-frame";
 91                         msi-controller;
 92                         reg = <0x10000 0x10000>;
 93                 };
 94 
 95                 v2m@20000 {
 96                         compatible = "arm,gic-v2m-frame";
 97                         msi-controller;
 98                         reg = <0x20000 0x10000>;
 99                 };
100 
101                 v2m@30000 {
102                         compatible = "arm,gic-v2m-frame";
103                         msi-controller;
104                         reg = <0x30000 0x10000>;
105                 };
106         };
107 
108         timer {
109                 compatible = "arm,armv8-timer";
110                 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>,
111                              <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>,
112                              <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>,
113                              <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>;
114         };
115 
116         /*
117          * Juno TRMs specify the size for these coresight components as 64K.
118          * The actual size is just 4K though 64K is reserved. Access to the
119          * unmapped reserved region results in a DECERR response.
120          */
121         etf_sys0: etf@20010000 { /* etf0 */
122                 compatible = "arm,coresight-tmc", "arm,primecell";
123                 reg = <0 0x20010000 0 0x1000>;
124 
125                 clocks = <&soc_smc50mhz>;
126                 clock-names = "apb_pclk";
127                 power-domains = <&scpi_devpd 0>;
128 
129                 in-ports {
130                         port {
131                                 etf0_in_port: endpoint {
132                                         remote-endpoint = <&main_funnel_out_port>;
133                                 };
134                         };
135                 };
136 
137                 out-ports {
138                         port {
139                                 etf0_out_port: endpoint {
140                                 };
141                         };
142                 };
143         };
144 
145         tpiu_sys: tpiu@20030000 {
146                 compatible = "arm,coresight-tpiu", "arm,primecell";
147                 reg = <0 0x20030000 0 0x1000>;
148 
149                 clocks = <&soc_smc50mhz>;
150                 clock-names = "apb_pclk";
151                 power-domains = <&scpi_devpd 0>;
152                 in-ports {
153                         port {
154                                 tpiu_in_port: endpoint {
155                                         remote-endpoint = <&replicator_out_port0>;
156                                 };
157                         };
158                 };
159         };
160 
161         /* main funnel on Juno r0, cssys0 funnel on Juno r1/r2 as per TRM*/
162         main_funnel: funnel@20040000 {
163                 compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
164                 reg = <0 0x20040000 0 0x1000>;
165 
166                 clocks = <&soc_smc50mhz>;
167                 clock-names = "apb_pclk";
168                 power-domains = <&scpi_devpd 0>;
169 
170                 out-ports {
171                         port {
172                                 main_funnel_out_port: endpoint {
173                                         remote-endpoint = <&etf0_in_port>;
174                                 };
175                         };
176                 };
177 
178                 main_funnel_in_ports: in-ports {
179                         #address-cells = <1>;
180                         #size-cells = <0>;
181 
182                         port@0 {
183                                 reg = <0>;
184                                 main_funnel_in_port0: endpoint {
185                                         remote-endpoint = <&cluster0_funnel_out_port>;
186                                 };
187                         };
188 
189                         port@1 {
190                                 reg = <1>;
191                                 main_funnel_in_port1: endpoint {
192                                         remote-endpoint = <&cluster1_funnel_out_port>;
193                                 };
194                         };
195                 };
196         };
197 
198         etr_sys: etr@20070000 {
199                 compatible = "arm,coresight-tmc", "arm,primecell";
200                 reg = <0 0x20070000 0 0x1000>;
201                 iommus = <&smmu_etr 0>;
202 
203                 clocks = <&soc_smc50mhz>;
204                 clock-names = "apb_pclk";
205                 power-domains = <&scpi_devpd 0>;
206                 arm,scatter-gather;
207                 in-ports {
208                         port {
209                                 etr_in_port: endpoint {
210                                         remote-endpoint = <&replicator_out_port1>;
211                                 };
212                         };
213                 };
214         };
215 
216         stm_sys: stm@20100000 {
217                 compatible = "arm,coresight-stm", "arm,primecell";
218                 reg = <0 0x20100000 0 0x1000>,
219                       <0 0x28000000 0 0x1000000>;
220                 reg-names = "stm-base", "stm-stimulus-base";
221 
222                 clocks = <&soc_smc50mhz>;
223                 clock-names = "apb_pclk";
224                 power-domains = <&scpi_devpd 0>;
225                 out-ports {
226                         port {
227                                 stm_out_port: endpoint {
228                                 };
229                         };
230                 };
231         };
232 
233         replicator@20120000 {
234                 compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
235                 reg = <0 0x20120000 0 0x1000>;
236 
237                 clocks = <&soc_smc50mhz>;
238                 clock-names = "apb_pclk";
239                 power-domains = <&scpi_devpd 0>;
240 
241                 out-ports {
242                         #address-cells = <1>;
243                         #size-cells = <0>;
244 
245                         /* replicator output ports */
246                         port@0 {
247                                 reg = <0>;
248                                 replicator_out_port0: endpoint {
249                                         remote-endpoint = <&tpiu_in_port>;
250                                 };
251                         };
252 
253                         port@1 {
254                                 reg = <1>;
255                                 replicator_out_port1: endpoint {
256                                         remote-endpoint = <&etr_in_port>;
257                                 };
258                         };
259                 };
260                 in-ports {
261                         port {
262                                 replicator_in_port0: endpoint {
263                                 };
264                         };
265                 };
266         };
267 
268         cpu_debug0: cpu-debug@22010000 {
269                 compatible = "arm,coresight-cpu-debug", "arm,primecell";
270                 reg = <0x0 0x22010000 0x0 0x1000>;
271 
272                 clocks = <&soc_smc50mhz>;
273                 clock-names = "apb_pclk";
274                 power-domains = <&scpi_devpd 0>;
275         };
276 
277         etm0: etm@22040000 {
278                 compatible = "arm,coresight-etm4x", "arm,primecell";
279                 reg = <0 0x22040000 0 0x1000>;
280 
281                 clocks = <&soc_smc50mhz>;
282                 clock-names = "apb_pclk";
283                 power-domains = <&scpi_devpd 0>;
284                 out-ports {
285                         port {
286                                 cluster0_etm0_out_port: endpoint {
287                                         remote-endpoint = <&cluster0_funnel_in_port0>;
288                                 };
289                         };
290                 };
291         };
292 
293         cti0: cti@22020000 {
294                 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
295                              "arm,primecell";
296                 reg = <0 0x22020000 0 0x1000>;
297 
298                 clocks = <&soc_smc50mhz>;
299                 clock-names = "apb_pclk";
300                 power-domains = <&scpi_devpd 0>;
301 
302                 arm,cs-dev-assoc = <&etm0>;
303         };
304 
305         funnel@220c0000 { /* cluster0 funnel */
306                 compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
307                 reg = <0 0x220c0000 0 0x1000>;
308 
309                 clocks = <&soc_smc50mhz>;
310                 clock-names = "apb_pclk";
311                 power-domains = <&scpi_devpd 0>;
312                 out-ports {
313                         port {
314                                 cluster0_funnel_out_port: endpoint {
315                                         remote-endpoint = <&main_funnel_in_port0>;
316                                 };
317                         };
318                 };
319 
320                 in-ports {
321                         #address-cells = <1>;
322                         #size-cells = <0>;
323 
324                         port@0 {
325                                 reg = <0>;
326                                 cluster0_funnel_in_port0: endpoint {
327                                         remote-endpoint = <&cluster0_etm0_out_port>;
328                                 };
329                         };
330 
331                         port@1 {
332                                 reg = <1>;
333                                 cluster0_funnel_in_port1: endpoint {
334                                         remote-endpoint = <&cluster0_etm1_out_port>;
335                                 };
336                         };
337                 };
338         };
339 
340         cpu_debug1: cpu-debug@22110000 {
341                 compatible = "arm,coresight-cpu-debug", "arm,primecell";
342                 reg = <0x0 0x22110000 0x0 0x1000>;
343 
344                 clocks = <&soc_smc50mhz>;
345                 clock-names = "apb_pclk";
346                 power-domains = <&scpi_devpd 0>;
347         };
348 
349         etm1: etm@22140000 {
350                 compatible = "arm,coresight-etm4x", "arm,primecell";
351                 reg = <0 0x22140000 0 0x1000>;
352 
353                 clocks = <&soc_smc50mhz>;
354                 clock-names = "apb_pclk";
355                 power-domains = <&scpi_devpd 0>;
356                 out-ports {
357                         port {
358                                 cluster0_etm1_out_port: endpoint {
359                                         remote-endpoint = <&cluster0_funnel_in_port1>;
360                                 };
361                         };
362                 };
363         };
364 
365         cti1: cti@22120000 {
366                 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
367                              "arm,primecell";
368                 reg = <0 0x22120000 0 0x1000>;
369 
370                 clocks = <&soc_smc50mhz>;
371                 clock-names = "apb_pclk";
372                 power-domains = <&scpi_devpd 0>;
373 
374                 arm,cs-dev-assoc = <&etm1>;
375         };
376 
377         cpu_debug2: cpu-debug@23010000 {
378                 compatible = "arm,coresight-cpu-debug", "arm,primecell";
379                 reg = <0x0 0x23010000 0x0 0x1000>;
380 
381                 clocks = <&soc_smc50mhz>;
382                 clock-names = "apb_pclk";
383                 power-domains = <&scpi_devpd 0>;
384         };
385 
386         etm2: etm@23040000 {
387                 compatible = "arm,coresight-etm4x", "arm,primecell";
388                 reg = <0 0x23040000 0 0x1000>;
389 
390                 clocks = <&soc_smc50mhz>;
391                 clock-names = "apb_pclk";
392                 power-domains = <&scpi_devpd 0>;
393                 out-ports {
394                         port {
395                                 cluster1_etm0_out_port: endpoint {
396                                         remote-endpoint = <&cluster1_funnel_in_port0>;
397                                 };
398                         };
399                 };
400         };
401 
402         cti2: cti@23020000 {
403                 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
404                              "arm,primecell";
405                 reg = <0 0x23020000 0 0x1000>;
406 
407                 clocks = <&soc_smc50mhz>;
408                 clock-names = "apb_pclk";
409                 power-domains = <&scpi_devpd 0>;
410 
411                 arm,cs-dev-assoc = <&etm2>;
412         };
413 
414         funnel@230c0000 { /* cluster1 funnel */
415                 compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
416                 reg = <0 0x230c0000 0 0x1000>;
417 
418                 clocks = <&soc_smc50mhz>;
419                 clock-names = "apb_pclk";
420                 power-domains = <&scpi_devpd 0>;
421                 out-ports {
422                         port {
423                                 cluster1_funnel_out_port: endpoint {
424                                         remote-endpoint = <&main_funnel_in_port1>;
425                                 };
426                         };
427                 };
428 
429                 in-ports {
430                         #address-cells = <1>;
431                         #size-cells = <0>;
432 
433                         port@0 {
434                                 reg = <0>;
435                                 cluster1_funnel_in_port0: endpoint {
436                                         remote-endpoint = <&cluster1_etm0_out_port>;
437                                 };
438                         };
439 
440                         port@1 {
441                                 reg = <1>;
442                                 cluster1_funnel_in_port1: endpoint {
443                                         remote-endpoint = <&cluster1_etm1_out_port>;
444                                 };
445                         };
446                         port@2 {
447                                 reg = <2>;
448                                 cluster1_funnel_in_port2: endpoint {
449                                         remote-endpoint = <&cluster1_etm2_out_port>;
450                                 };
451                         };
452                         port@3 {
453                                 reg = <3>;
454                                 cluster1_funnel_in_port3: endpoint {
455                                         remote-endpoint = <&cluster1_etm3_out_port>;
456                                 };
457                         };
458                 };
459         };
460 
461         cpu_debug3: cpu-debug@23110000 {
462                 compatible = "arm,coresight-cpu-debug", "arm,primecell";
463                 reg = <0x0 0x23110000 0x0 0x1000>;
464 
465                 clocks = <&soc_smc50mhz>;
466                 clock-names = "apb_pclk";
467                 power-domains = <&scpi_devpd 0>;
468         };
469 
470         etm3: etm@23140000 {
471                 compatible = "arm,coresight-etm4x", "arm,primecell";
472                 reg = <0 0x23140000 0 0x1000>;
473 
474                 clocks = <&soc_smc50mhz>;
475                 clock-names = "apb_pclk";
476                 power-domains = <&scpi_devpd 0>;
477                 out-ports {
478                         port {
479                                 cluster1_etm1_out_port: endpoint {
480                                         remote-endpoint = <&cluster1_funnel_in_port1>;
481                                 };
482                         };
483                 };
484         };
485 
486         cti3: cti@23120000 {
487                 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
488                              "arm,primecell";
489                 reg = <0 0x23120000 0 0x1000>;
490 
491                 clocks = <&soc_smc50mhz>;
492                 clock-names = "apb_pclk";
493                 power-domains = <&scpi_devpd 0>;
494 
495                 arm,cs-dev-assoc = <&etm3>;
496         };
497 
498         cpu_debug4: cpu-debug@23210000 {
499                 compatible = "arm,coresight-cpu-debug", "arm,primecell";
500                 reg = <0x0 0x23210000 0x0 0x1000>;
501 
502                 clocks = <&soc_smc50mhz>;
503                 clock-names = "apb_pclk";
504                 power-domains = <&scpi_devpd 0>;
505         };
506 
507         etm4: etm@23240000 {
508                 compatible = "arm,coresight-etm4x", "arm,primecell";
509                 reg = <0 0x23240000 0 0x1000>;
510 
511                 clocks = <&soc_smc50mhz>;
512                 clock-names = "apb_pclk";
513                 power-domains = <&scpi_devpd 0>;
514                 out-ports {
515                         port {
516                                 cluster1_etm2_out_port: endpoint {
517                                         remote-endpoint = <&cluster1_funnel_in_port2>;
518                                 };
519                         };
520                 };
521         };
522 
523         cti4: cti@23220000 {
524                 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
525                              "arm,primecell";
526                 reg = <0 0x23220000 0 0x1000>;
527 
528                 clocks = <&soc_smc50mhz>;
529                 clock-names = "apb_pclk";
530                 power-domains = <&scpi_devpd 0>;
531 
532                 arm,cs-dev-assoc = <&etm4>;
533         };
534 
535         cpu_debug5: cpu-debug@23310000 {
536                 compatible = "arm,coresight-cpu-debug", "arm,primecell";
537                 reg = <0x0 0x23310000 0x0 0x1000>;
538 
539                 clocks = <&soc_smc50mhz>;
540                 clock-names = "apb_pclk";
541                 power-domains = <&scpi_devpd 0>;
542         };
543 
544         etm5: etm@23340000 {
545                 compatible = "arm,coresight-etm4x", "arm,primecell";
546                 reg = <0 0x23340000 0 0x1000>;
547 
548                 clocks = <&soc_smc50mhz>;
549                 clock-names = "apb_pclk";
550                 power-domains = <&scpi_devpd 0>;
551                 out-ports {
552                         port {
553                                 cluster1_etm3_out_port: endpoint {
554                                         remote-endpoint = <&cluster1_funnel_in_port3>;
555                                 };
556                         };
557                 };
558         };
559 
560         cti5: cti@23320000 {
561                 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
562                              "arm,primecell";
563                 reg = <0 0x23320000 0 0x1000>;
564 
565                 clocks = <&soc_smc50mhz>;
566                 clock-names = "apb_pclk";
567                 power-domains = <&scpi_devpd 0>;
568 
569                 arm,cs-dev-assoc = <&etm5>;
570         };
571 
572         cti_sys0: cti@20020000 { /* sys_cti_0 */
573                 compatible = "arm,coresight-cti", "arm,primecell";
574                 reg = <0 0x20020000 0 0x1000>;
575 
576                 clocks = <&soc_smc50mhz>;
577                 clock-names = "apb_pclk";
578                 power-domains = <&scpi_devpd 0>;
579 
580                 #address-cells = <1>;
581                 #size-cells = <0>;
582 
583                 trig-conns@0 {
584                         reg = <0>;
585                         arm,trig-in-sigs = <2 3>;
586                         arm,trig-in-types = <SNK_FULL SNK_ACQCOMP>;
587                         arm,trig-out-sigs = <0 1>;
588                         arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>;
589                         arm,cs-dev-assoc = <&etr_sys>;
590                 };
591 
592                 trig-conns@1 {
593                         reg = <1>;
594                         arm,trig-in-sigs = <0 1>;
595                         arm,trig-in-types = <SNK_FULL SNK_ACQCOMP>;
596                         arm,trig-out-sigs = <7 6>;
597                         arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>;
598                         arm,cs-dev-assoc = <&etf_sys0>;
599                 };
600 
601                 trig-conns@2 {
602                         reg = <2>;
603                         arm,trig-in-sigs = <4 5 6 7>;
604                         arm,trig-in-types = <STM_TOUT_SPTE STM_TOUT_SW
605                                            STM_TOUT_HETE STM_ASYNCOUT>;
606                         arm,trig-out-sigs = <4 5>;
607                         arm,trig-out-types = <STM_HWEVENT STM_HWEVENT>;
608                         arm,cs-dev-assoc = <&stm_sys>;
609                 };
610 
611                 trig-conns@3 {
612                         reg = <3>;
613                         arm,trig-out-sigs = <2 3>;
614                         arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>;
615                         arm,cs-dev-assoc = <&tpiu_sys>;
616                 };
617         };
618 
619         cti_sys1: cti@20110000 { /* sys_cti_1 */
620                 compatible = "arm,coresight-cti", "arm,primecell";
621                 reg = <0 0x20110000 0 0x1000>;
622 
623                 clocks = <&soc_smc50mhz>;
624                 clock-names = "apb_pclk";
625                 power-domains = <&scpi_devpd 0>;
626 
627                 #address-cells = <1>;
628                 #size-cells = <0>;
629 
630                 trig-conns@0 {
631                         reg = <0>;
632                         arm,trig-in-sigs = <0>;
633                         arm,trig-in-types = <GEN_INTREQ>;
634                         arm,trig-out-sigs = <0>;
635                         arm,trig-out-types = <GEN_HALTREQ>;
636                         arm,trig-conn-name = "sys_profiler";
637                 };
638 
639                 trig-conns@1 {
640                         reg = <1>;
641                         arm,trig-out-sigs = <2 3>;
642                         arm,trig-out-types = <GEN_HALTREQ GEN_RESTARTREQ>;
643                         arm,trig-conn-name = "watchdog";
644                 };
645 
646                 trig-conns@2 {
647                         reg = <2>;
648                         arm,trig-out-sigs = <1 6>;
649                         arm,trig-out-types = <GEN_HALTREQ GEN_RESTARTREQ>;
650                         arm,trig-conn-name = "g_counter";
651                 };
652         };
653 
654         gpu: gpu@2d000000 {
655                 compatible = "arm,juno-mali", "arm,mali-t624";
656                 reg = <0 0x2d000000 0 0x10000>;
657                 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
658                              <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
659                              <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
660                 interrupt-names = "job", "mmu", "gpu";
661                 clocks = <&scpi_dvfs 2>;
662                 power-domains = <&scpi_devpd 1>;
663                 dma-coherent;
664                 /* The SMMU is only really of interest to bare-metal hypervisors */
665                 /* iommus = <&smmu_gpu 0>; */
666         };
667 
668         sram: sram@2e000000 {
669                 compatible = "arm,juno-sram-ns", "mmio-sram";
670                 reg = <0x0 0x2e000000 0x0 0x8000>;
671 
672                 #address-cells = <1>;
673                 #size-cells = <1>;
674                 ranges = <0 0x0 0x2e000000 0x8000>;
675 
676                 cpu_scp_lpri: scp-sram@0 {
677                         compatible = "arm,juno-scp-shmem";
678                         reg = <0x0 0x200>;
679                 };
680 
681                 cpu_scp_hpri: scp-sram@200 {
682                         compatible = "arm,juno-scp-shmem";
683                         reg = <0x200 0x200>;
684                 };
685         };
686 
687         pcie_ctlr: pcie@40000000 {
688                 compatible = "arm,juno-r1-pcie", "plda,xpressrich3-axi", "pci-host-ecam-generic";
689                 device_type = "pci";
690                 reg = <0 0x40000000 0 0x10000000>;      /* ECAM config space */
691                 bus-range = <0 255>;
692                 linux,pci-domain = <0>;
693                 #address-cells = <3>;
694                 #size-cells = <2>;
695                 dma-coherent;
696                 ranges = <0x01000000 0x00 0x00000000 0x00 0x5f800000 0x0 0x00800000>,
697                          <0x02000000 0x00 0x50000000 0x00 0x50000000 0x0 0x08000000>,
698                          <0x42000000 0x40 0x00000000 0x40 0x00000000 0x1 0x00000000>;
699                 /* Standard AXI Translation entries as programmed by EDK2 */
700                 dma-ranges = <0x02000000 0x0 0x80000000 0x0 0x80000000 0x0 0x80000000>,
701                              <0x43000000 0x8 0x00000000 0x8 0x00000000 0x2 0x00000000>;
702                 #interrupt-cells = <1>;
703                 interrupt-map-mask = <0 0 0 7>;
704                 interrupt-map = <0 0 0 1 &gic 0 GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
705                                 <0 0 0 2 &gic 0 GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
706                                 <0 0 0 3 &gic 0 GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
707                                 <0 0 0 4 &gic 0 GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
708                 msi-parent = <&v2m_0>;
709                 status = "disabled";
710                 iommu-map-mask = <0x0>; /* RC has no means to output PCI RID */
711                 iommu-map = <0x0 &smmu_pcie 0x0 0x1>;
712         };
713 
714         scpi {
715                 compatible = "arm,scpi";
716                 mboxes = <&mailbox 1>;
717                 shmem = <&cpu_scp_hpri>;
718 
719                 clocks {
720                         compatible = "arm,scpi-clocks";
721 
722                         scpi_dvfs: clocks-0 {
723                                 compatible = "arm,scpi-dvfs-clocks";
724                                 #clock-cells = <1>;
725                                 clock-indices = <0>, <1>, <2>;
726                                 clock-output-names = "atlclk", "aplclk","gpuclk";
727                         };
728                         scpi_clk: clocks-1 {
729                                 compatible = "arm,scpi-variable-clocks";
730                                 #clock-cells = <1>;
731                                 clock-indices = <3>;
732                                 clock-output-names = "pxlclk";
733                         };
734                 };
735 
736                 scpi_devpd: power-controller {
737                         compatible = "arm,scpi-power-domains";
738                         num-domains = <2>;
739                         #power-domain-cells = <1>;
740                 };
741 
742                 scpi_sensors0: sensors {
743                         compatible = "arm,scpi-sensors";
744                         #thermal-sensor-cells = <1>;
745                 };
746         };
747 
748         thermal-zones {
749                 pmic-thermal {
750                         polling-delay = <1000>;
751                         polling-delay-passive = <100>;
752                         thermal-sensors = <&scpi_sensors0 0>;
753                         trips {
754                                 pmic_crit0: trip0 {
755                                         temperature = <90000>;
756                                         hysteresis = <2000>;
757                                         type = "critical";
758                                 };
759                         };
760                 };
761 
762                 soc-thermal {
763                         polling-delay = <1000>;
764                         polling-delay-passive = <100>;
765                         thermal-sensors = <&scpi_sensors0 3>;
766                         trips {
767                                 soc_crit0: trip0 {
768                                         temperature = <80000>;
769                                         hysteresis = <2000>;
770                                         type = "critical";
771                                 };
772                         };
773                 };
774 
775                 big_cluster_thermal_zone: big-cl-thermal {
776                         polling-delay = <1000>;
777                         polling-delay-passive = <100>;
778                         thermal-sensors = <&scpi_sensors0 21>;
779                         status = "disabled";
780                 };
781 
782                 little_cluster_thermal_zone: little-cl-thermal {
783                         polling-delay = <1000>;
784                         polling-delay-passive = <100>;
785                         thermal-sensors = <&scpi_sensors0 22>;
786                         status = "disabled";
787                 };
788 
789                 gpu0_thermal_zone: gpu0-thermal {
790                         polling-delay = <1000>;
791                         polling-delay-passive = <100>;
792                         thermal-sensors = <&scpi_sensors0 23>;
793                         status = "disabled";
794                 };
795 
796                 gpu1_thermal_zone: gpu1-thermal {
797                         polling-delay = <1000>;
798                         polling-delay-passive = <100>;
799                         thermal-sensors = <&scpi_sensors0 24>;
800                         status = "disabled";
801                 };
802         };
803 
804         smmu_dma: iommu@7fb00000 {
805                 compatible = "arm,mmu-401", "arm,smmu-v1";
806                 reg = <0x0 0x7fb00000 0x0 0x10000>;
807                 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
808                              <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
809                 #iommu-cells = <1>;
810                 #global-interrupts = <1>;
811                 dma-coherent;
812         };
813 
814         smmu_hdlcd1: iommu@7fb10000 {
815                 compatible = "arm,mmu-401", "arm,smmu-v1";
816                 reg = <0x0 0x7fb10000 0x0 0x10000>;
817                 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
818                              <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
819                 #iommu-cells = <1>;
820                 #global-interrupts = <1>;
821         };
822 
823         smmu_hdlcd0: iommu@7fb20000 {
824                 compatible = "arm,mmu-401", "arm,smmu-v1";
825                 reg = <0x0 0x7fb20000 0x0 0x10000>;
826                 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
827                              <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
828                 #iommu-cells = <1>;
829                 #global-interrupts = <1>;
830         };
831 
832         smmu_usb: iommu@7fb30000 {
833                 compatible = "arm,mmu-401", "arm,smmu-v1";
834                 reg = <0x0 0x7fb30000 0x0 0x10000>;
835                 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
836                              <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
837                 #iommu-cells = <1>;
838                 #global-interrupts = <1>;
839                 dma-coherent;
840         };
841 
842         dma-controller@7ff00000 {
843                 compatible = "arm,pl330", "arm,primecell";
844                 reg = <0x0 0x7ff00000 0 0x1000>;
845                 #dma-cells = <1>;
846                 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
847                              <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
848                              <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
849                              <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
850                              <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
851                              <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
852                              <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
853                              <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
854                              <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
855                 iommus = <&smmu_dma 0>,
856                          <&smmu_dma 1>,
857                          <&smmu_dma 2>,
858                          <&smmu_dma 3>,
859                          <&smmu_dma 4>,
860                          <&smmu_dma 5>,
861                          <&smmu_dma 6>,
862                          <&smmu_dma 7>,
863                          <&smmu_dma 8>;
864                 clocks = <&soc_faxiclk>;
865                 clock-names = "apb_pclk";
866         };
867 
868         hdlcd@7ff50000 {
869                 compatible = "arm,hdlcd";
870                 reg = <0 0x7ff50000 0 0x1000>;
871                 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
872                 iommus = <&smmu_hdlcd1 0>;
873                 clocks = <&scpi_clk 3>;
874                 clock-names = "pxlclk";
875 
876                 port {
877                         hdlcd1_output: endpoint {
878                                 remote-endpoint = <&tda998x_1_input>;
879                         };
880                 };
881         };
882 
883         hdlcd@7ff60000 {
884                 compatible = "arm,hdlcd";
885                 reg = <0 0x7ff60000 0 0x1000>;
886                 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
887                 iommus = <&smmu_hdlcd0 0>;
888                 clocks = <&scpi_clk 3>;
889                 clock-names = "pxlclk";
890 
891                 port {
892                         hdlcd0_output: endpoint {
893                                 remote-endpoint = <&tda998x_0_input>;
894                         };
895                 };
896         };
897 
898         soc_uart0: serial@7ff80000 {
899                 compatible = "arm,pl011", "arm,primecell";
900                 reg = <0x0 0x7ff80000 0x0 0x1000>;
901                 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
902                 clocks = <&soc_uartclk>, <&soc_refclk100mhz>;
903                 clock-names = "uartclk", "apb_pclk";
904         };
905 
906         i2c@7ffa0000 {
907                 compatible = "snps,designware-i2c";
908                 reg = <0x0 0x7ffa0000 0x0 0x1000>;
909                 #address-cells = <1>;
910                 #size-cells = <0>;
911                 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
912                 clock-frequency = <400000>;
913                 i2c-sda-hold-time-ns = <500>;
914                 clocks = <&soc_smc50mhz>;
915 
916                 hdmi-transmitter@70 {
917                         compatible = "nxp,tda998x";
918                         reg = <0x70>;
919                         port {
920                                 tda998x_0_input: endpoint {
921                                         remote-endpoint = <&hdlcd0_output>;
922                                 };
923                         };
924                 };
925 
926                 hdmi-transmitter@71 {
927                         compatible = "nxp,tda998x";
928                         reg = <0x71>;
929                         port {
930                                 tda998x_1_input: endpoint {
931                                         remote-endpoint = <&hdlcd1_output>;
932                                 };
933                         };
934                 };
935         };
936 
937         usb@7ffb0000 {
938                 compatible = "generic-ohci";
939                 reg = <0x0 0x7ffb0000 0x0 0x10000>;
940                 interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
941                 iommus = <&smmu_usb 0>;
942                 clocks = <&soc_usb48mhz>;
943         };
944 
945         usb@7ffc0000 {
946                 compatible = "generic-ehci";
947                 reg = <0x0 0x7ffc0000 0x0 0x10000>;
948                 interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
949                 iommus = <&smmu_usb 0>;
950                 clocks = <&soc_usb48mhz>;
951         };
952 
953         memory-controller@7ffd0000 {
954                 compatible = "arm,pl354", "arm,primecell";
955                 reg = <0 0x7ffd0000 0 0x1000>;
956                 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
957                              <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
958                 clocks = <&soc_smc50mhz>;
959                 clock-names = "apb_pclk";
960         };
961 
962         memory@80000000 {
963                 device_type = "memory";
964                 /* last 16MB of the first memory area is reserved for secure world use by firmware */
965                 reg = <0x00000000 0x80000000 0x0 0x7f000000>,
966                       <0x00000008 0x80000000 0x1 0x80000000>;
967         };
968 
969         bus@8000000 {
970                 #interrupt-cells = <1>;
971                 interrupt-map-mask = <0 0 15>;
972                 interrupt-map = <0 0  0 &gic 0 GIC_SPI  68 IRQ_TYPE_LEVEL_HIGH>,
973                                 <0 0  1 &gic 0 GIC_SPI  69 IRQ_TYPE_LEVEL_HIGH>,
974                                 <0 0  2 &gic 0 GIC_SPI  70 IRQ_TYPE_LEVEL_HIGH>,
975                                 <0 0  3 &gic 0 GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
976                                 <0 0  4 &gic 0 GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
977                                 <0 0  5 &gic 0 GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
978                                 <0 0  6 &gic 0 GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
979                                 <0 0  7 &gic 0 GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
980                                 <0 0  8 &gic 0 GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
981                                 <0 0  9 &gic 0 GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>,
982                                 <0 0 10 &gic 0 GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>,
983                                 <0 0 11 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
984                                 <0 0 12 &gic 0 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
985         };
986 
987         site2: tlx-bus@60000000 {
988                 compatible = "simple-bus";
989                 #address-cells = <1>;
990                 #size-cells = <1>;
991                 ranges = <0 0 0x60000000 0x10000000>;
992                 #interrupt-cells = <1>;
993                 interrupt-map-mask = <0 0>;
994                 interrupt-map = <0 0 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
995         };
996 };

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