162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci#include "juno-clocks.dtsi" 362306a36Sopenharmony_ci#include "juno-motherboard.dtsi" 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci/ { 662306a36Sopenharmony_ci /* 762306a36Sopenharmony_ci * Devices shared by all Juno boards 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci memtimer: timer@2a810000 { 1162306a36Sopenharmony_ci compatible = "arm,armv7-timer-mem"; 1262306a36Sopenharmony_ci reg = <0x0 0x2a810000 0x0 0x10000>; 1362306a36Sopenharmony_ci clock-frequency = <50000000>; 1462306a36Sopenharmony_ci #address-cells = <1>; 1562306a36Sopenharmony_ci #size-cells = <1>; 1662306a36Sopenharmony_ci ranges = <0 0x0 0x2a820000 0x20000>; 1762306a36Sopenharmony_ci status = "disabled"; 1862306a36Sopenharmony_ci frame@2a830000 { 1962306a36Sopenharmony_ci frame-number = <1>; 2062306a36Sopenharmony_ci interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 2162306a36Sopenharmony_ci reg = <0x10000 0x10000>; 2262306a36Sopenharmony_ci }; 2362306a36Sopenharmony_ci }; 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci mailbox: mhu@2b1f0000 { 2662306a36Sopenharmony_ci compatible = "arm,mhu", "arm,primecell"; 2762306a36Sopenharmony_ci reg = <0x0 0x2b1f0000 0x0 0x1000>; 2862306a36Sopenharmony_ci interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>, 2962306a36Sopenharmony_ci <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 3062306a36Sopenharmony_ci <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 3162306a36Sopenharmony_ci #mbox-cells = <1>; 3262306a36Sopenharmony_ci clocks = <&soc_refclk100mhz>; 3362306a36Sopenharmony_ci clock-names = "apb_pclk"; 3462306a36Sopenharmony_ci }; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci smmu_gpu: iommu@2b400000 { 3762306a36Sopenharmony_ci compatible = "arm,mmu-400", "arm,smmu-v1"; 3862306a36Sopenharmony_ci reg = <0x0 0x2b400000 0x0 0x10000>; 3962306a36Sopenharmony_ci interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, 4062306a36Sopenharmony_ci <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 4162306a36Sopenharmony_ci #iommu-cells = <1>; 4262306a36Sopenharmony_ci #global-interrupts = <1>; 4362306a36Sopenharmony_ci power-domains = <&scpi_devpd 1>; 4462306a36Sopenharmony_ci dma-coherent; 4562306a36Sopenharmony_ci status = "disabled"; 4662306a36Sopenharmony_ci }; 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci smmu_pcie: iommu@2b500000 { 4962306a36Sopenharmony_ci compatible = "arm,mmu-401", "arm,smmu-v1"; 5062306a36Sopenharmony_ci reg = <0x0 0x2b500000 0x0 0x10000>; 5162306a36Sopenharmony_ci interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 5262306a36Sopenharmony_ci <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 5362306a36Sopenharmony_ci #iommu-cells = <1>; 5462306a36Sopenharmony_ci #global-interrupts = <1>; 5562306a36Sopenharmony_ci dma-coherent; 5662306a36Sopenharmony_ci status = "disabled"; 5762306a36Sopenharmony_ci }; 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci smmu_etr: iommu@2b600000 { 6062306a36Sopenharmony_ci compatible = "arm,mmu-401", "arm,smmu-v1"; 6162306a36Sopenharmony_ci reg = <0x0 0x2b600000 0x0 0x10000>; 6262306a36Sopenharmony_ci interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 6362306a36Sopenharmony_ci <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 6462306a36Sopenharmony_ci #iommu-cells = <1>; 6562306a36Sopenharmony_ci #global-interrupts = <1>; 6662306a36Sopenharmony_ci dma-coherent; 6762306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 6862306a36Sopenharmony_ci }; 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci gic: interrupt-controller@2c010000 { 7162306a36Sopenharmony_ci compatible = "arm,gic-400", "arm,cortex-a15-gic"; 7262306a36Sopenharmony_ci reg = <0x0 0x2c010000 0 0x1000>, 7362306a36Sopenharmony_ci <0x0 0x2c02f000 0 0x2000>, 7462306a36Sopenharmony_ci <0x0 0x2c04f000 0 0x2000>, 7562306a36Sopenharmony_ci <0x0 0x2c06f000 0 0x2000>; 7662306a36Sopenharmony_ci #address-cells = <1>; 7762306a36Sopenharmony_ci #interrupt-cells = <3>; 7862306a36Sopenharmony_ci #size-cells = <1>; 7962306a36Sopenharmony_ci interrupt-controller; 8062306a36Sopenharmony_ci interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>; 8162306a36Sopenharmony_ci ranges = <0 0 0x2c1c0000 0x40000>; 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci v2m_0: v2m@0 { 8462306a36Sopenharmony_ci compatible = "arm,gic-v2m-frame"; 8562306a36Sopenharmony_ci msi-controller; 8662306a36Sopenharmony_ci reg = <0 0x10000>; 8762306a36Sopenharmony_ci }; 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ci v2m@10000 { 9062306a36Sopenharmony_ci compatible = "arm,gic-v2m-frame"; 9162306a36Sopenharmony_ci msi-controller; 9262306a36Sopenharmony_ci reg = <0x10000 0x10000>; 9362306a36Sopenharmony_ci }; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci v2m@20000 { 9662306a36Sopenharmony_ci compatible = "arm,gic-v2m-frame"; 9762306a36Sopenharmony_ci msi-controller; 9862306a36Sopenharmony_ci reg = <0x20000 0x10000>; 9962306a36Sopenharmony_ci }; 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ci v2m@30000 { 10262306a36Sopenharmony_ci compatible = "arm,gic-v2m-frame"; 10362306a36Sopenharmony_ci msi-controller; 10462306a36Sopenharmony_ci reg = <0x30000 0x10000>; 10562306a36Sopenharmony_ci }; 10662306a36Sopenharmony_ci }; 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci timer { 10962306a36Sopenharmony_ci compatible = "arm,armv8-timer"; 11062306a36Sopenharmony_ci interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 11162306a36Sopenharmony_ci <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 11262306a36Sopenharmony_ci <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 11362306a36Sopenharmony_ci <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>; 11462306a36Sopenharmony_ci }; 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci /* 11762306a36Sopenharmony_ci * Juno TRMs specify the size for these coresight components as 64K. 11862306a36Sopenharmony_ci * The actual size is just 4K though 64K is reserved. Access to the 11962306a36Sopenharmony_ci * unmapped reserved region results in a DECERR response. 12062306a36Sopenharmony_ci */ 12162306a36Sopenharmony_ci etf_sys0: etf@20010000 { /* etf0 */ 12262306a36Sopenharmony_ci compatible = "arm,coresight-tmc", "arm,primecell"; 12362306a36Sopenharmony_ci reg = <0 0x20010000 0 0x1000>; 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 12662306a36Sopenharmony_ci clock-names = "apb_pclk"; 12762306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci in-ports { 13062306a36Sopenharmony_ci port { 13162306a36Sopenharmony_ci etf0_in_port: endpoint { 13262306a36Sopenharmony_ci remote-endpoint = <&main_funnel_out_port>; 13362306a36Sopenharmony_ci }; 13462306a36Sopenharmony_ci }; 13562306a36Sopenharmony_ci }; 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ci out-ports { 13862306a36Sopenharmony_ci port { 13962306a36Sopenharmony_ci etf0_out_port: endpoint { 14062306a36Sopenharmony_ci }; 14162306a36Sopenharmony_ci }; 14262306a36Sopenharmony_ci }; 14362306a36Sopenharmony_ci }; 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci tpiu_sys: tpiu@20030000 { 14662306a36Sopenharmony_ci compatible = "arm,coresight-tpiu", "arm,primecell"; 14762306a36Sopenharmony_ci reg = <0 0x20030000 0 0x1000>; 14862306a36Sopenharmony_ci 14962306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 15062306a36Sopenharmony_ci clock-names = "apb_pclk"; 15162306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 15262306a36Sopenharmony_ci in-ports { 15362306a36Sopenharmony_ci port { 15462306a36Sopenharmony_ci tpiu_in_port: endpoint { 15562306a36Sopenharmony_ci remote-endpoint = <&replicator_out_port0>; 15662306a36Sopenharmony_ci }; 15762306a36Sopenharmony_ci }; 15862306a36Sopenharmony_ci }; 15962306a36Sopenharmony_ci }; 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ci /* main funnel on Juno r0, cssys0 funnel on Juno r1/r2 as per TRM*/ 16262306a36Sopenharmony_ci main_funnel: funnel@20040000 { 16362306a36Sopenharmony_ci compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 16462306a36Sopenharmony_ci reg = <0 0x20040000 0 0x1000>; 16562306a36Sopenharmony_ci 16662306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 16762306a36Sopenharmony_ci clock-names = "apb_pclk"; 16862306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 16962306a36Sopenharmony_ci 17062306a36Sopenharmony_ci out-ports { 17162306a36Sopenharmony_ci port { 17262306a36Sopenharmony_ci main_funnel_out_port: endpoint { 17362306a36Sopenharmony_ci remote-endpoint = <&etf0_in_port>; 17462306a36Sopenharmony_ci }; 17562306a36Sopenharmony_ci }; 17662306a36Sopenharmony_ci }; 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_ci main_funnel_in_ports: in-ports { 17962306a36Sopenharmony_ci #address-cells = <1>; 18062306a36Sopenharmony_ci #size-cells = <0>; 18162306a36Sopenharmony_ci 18262306a36Sopenharmony_ci port@0 { 18362306a36Sopenharmony_ci reg = <0>; 18462306a36Sopenharmony_ci main_funnel_in_port0: endpoint { 18562306a36Sopenharmony_ci remote-endpoint = <&cluster0_funnel_out_port>; 18662306a36Sopenharmony_ci }; 18762306a36Sopenharmony_ci }; 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ci port@1 { 19062306a36Sopenharmony_ci reg = <1>; 19162306a36Sopenharmony_ci main_funnel_in_port1: endpoint { 19262306a36Sopenharmony_ci remote-endpoint = <&cluster1_funnel_out_port>; 19362306a36Sopenharmony_ci }; 19462306a36Sopenharmony_ci }; 19562306a36Sopenharmony_ci }; 19662306a36Sopenharmony_ci }; 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_ci etr_sys: etr@20070000 { 19962306a36Sopenharmony_ci compatible = "arm,coresight-tmc", "arm,primecell"; 20062306a36Sopenharmony_ci reg = <0 0x20070000 0 0x1000>; 20162306a36Sopenharmony_ci iommus = <&smmu_etr 0>; 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 20462306a36Sopenharmony_ci clock-names = "apb_pclk"; 20562306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 20662306a36Sopenharmony_ci arm,scatter-gather; 20762306a36Sopenharmony_ci in-ports { 20862306a36Sopenharmony_ci port { 20962306a36Sopenharmony_ci etr_in_port: endpoint { 21062306a36Sopenharmony_ci remote-endpoint = <&replicator_out_port1>; 21162306a36Sopenharmony_ci }; 21262306a36Sopenharmony_ci }; 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci }; 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci stm_sys: stm@20100000 { 21762306a36Sopenharmony_ci compatible = "arm,coresight-stm", "arm,primecell"; 21862306a36Sopenharmony_ci reg = <0 0x20100000 0 0x1000>, 21962306a36Sopenharmony_ci <0 0x28000000 0 0x1000000>; 22062306a36Sopenharmony_ci reg-names = "stm-base", "stm-stimulus-base"; 22162306a36Sopenharmony_ci 22262306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 22362306a36Sopenharmony_ci clock-names = "apb_pclk"; 22462306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 22562306a36Sopenharmony_ci out-ports { 22662306a36Sopenharmony_ci port { 22762306a36Sopenharmony_ci stm_out_port: endpoint { 22862306a36Sopenharmony_ci }; 22962306a36Sopenharmony_ci }; 23062306a36Sopenharmony_ci }; 23162306a36Sopenharmony_ci }; 23262306a36Sopenharmony_ci 23362306a36Sopenharmony_ci replicator@20120000 { 23462306a36Sopenharmony_ci compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 23562306a36Sopenharmony_ci reg = <0 0x20120000 0 0x1000>; 23662306a36Sopenharmony_ci 23762306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 23862306a36Sopenharmony_ci clock-names = "apb_pclk"; 23962306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 24062306a36Sopenharmony_ci 24162306a36Sopenharmony_ci out-ports { 24262306a36Sopenharmony_ci #address-cells = <1>; 24362306a36Sopenharmony_ci #size-cells = <0>; 24462306a36Sopenharmony_ci 24562306a36Sopenharmony_ci /* replicator output ports */ 24662306a36Sopenharmony_ci port@0 { 24762306a36Sopenharmony_ci reg = <0>; 24862306a36Sopenharmony_ci replicator_out_port0: endpoint { 24962306a36Sopenharmony_ci remote-endpoint = <&tpiu_in_port>; 25062306a36Sopenharmony_ci }; 25162306a36Sopenharmony_ci }; 25262306a36Sopenharmony_ci 25362306a36Sopenharmony_ci port@1 { 25462306a36Sopenharmony_ci reg = <1>; 25562306a36Sopenharmony_ci replicator_out_port1: endpoint { 25662306a36Sopenharmony_ci remote-endpoint = <&etr_in_port>; 25762306a36Sopenharmony_ci }; 25862306a36Sopenharmony_ci }; 25962306a36Sopenharmony_ci }; 26062306a36Sopenharmony_ci in-ports { 26162306a36Sopenharmony_ci port { 26262306a36Sopenharmony_ci replicator_in_port0: endpoint { 26362306a36Sopenharmony_ci }; 26462306a36Sopenharmony_ci }; 26562306a36Sopenharmony_ci }; 26662306a36Sopenharmony_ci }; 26762306a36Sopenharmony_ci 26862306a36Sopenharmony_ci cpu_debug0: cpu-debug@22010000 { 26962306a36Sopenharmony_ci compatible = "arm,coresight-cpu-debug", "arm,primecell"; 27062306a36Sopenharmony_ci reg = <0x0 0x22010000 0x0 0x1000>; 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 27362306a36Sopenharmony_ci clock-names = "apb_pclk"; 27462306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 27562306a36Sopenharmony_ci }; 27662306a36Sopenharmony_ci 27762306a36Sopenharmony_ci etm0: etm@22040000 { 27862306a36Sopenharmony_ci compatible = "arm,coresight-etm4x", "arm,primecell"; 27962306a36Sopenharmony_ci reg = <0 0x22040000 0 0x1000>; 28062306a36Sopenharmony_ci 28162306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 28262306a36Sopenharmony_ci clock-names = "apb_pclk"; 28362306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 28462306a36Sopenharmony_ci out-ports { 28562306a36Sopenharmony_ci port { 28662306a36Sopenharmony_ci cluster0_etm0_out_port: endpoint { 28762306a36Sopenharmony_ci remote-endpoint = <&cluster0_funnel_in_port0>; 28862306a36Sopenharmony_ci }; 28962306a36Sopenharmony_ci }; 29062306a36Sopenharmony_ci }; 29162306a36Sopenharmony_ci }; 29262306a36Sopenharmony_ci 29362306a36Sopenharmony_ci cti0: cti@22020000 { 29462306a36Sopenharmony_ci compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 29562306a36Sopenharmony_ci "arm,primecell"; 29662306a36Sopenharmony_ci reg = <0 0x22020000 0 0x1000>; 29762306a36Sopenharmony_ci 29862306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 29962306a36Sopenharmony_ci clock-names = "apb_pclk"; 30062306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 30162306a36Sopenharmony_ci 30262306a36Sopenharmony_ci arm,cs-dev-assoc = <&etm0>; 30362306a36Sopenharmony_ci }; 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ci funnel@220c0000 { /* cluster0 funnel */ 30662306a36Sopenharmony_ci compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 30762306a36Sopenharmony_ci reg = <0 0x220c0000 0 0x1000>; 30862306a36Sopenharmony_ci 30962306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 31062306a36Sopenharmony_ci clock-names = "apb_pclk"; 31162306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 31262306a36Sopenharmony_ci out-ports { 31362306a36Sopenharmony_ci port { 31462306a36Sopenharmony_ci cluster0_funnel_out_port: endpoint { 31562306a36Sopenharmony_ci remote-endpoint = <&main_funnel_in_port0>; 31662306a36Sopenharmony_ci }; 31762306a36Sopenharmony_ci }; 31862306a36Sopenharmony_ci }; 31962306a36Sopenharmony_ci 32062306a36Sopenharmony_ci in-ports { 32162306a36Sopenharmony_ci #address-cells = <1>; 32262306a36Sopenharmony_ci #size-cells = <0>; 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci port@0 { 32562306a36Sopenharmony_ci reg = <0>; 32662306a36Sopenharmony_ci cluster0_funnel_in_port0: endpoint { 32762306a36Sopenharmony_ci remote-endpoint = <&cluster0_etm0_out_port>; 32862306a36Sopenharmony_ci }; 32962306a36Sopenharmony_ci }; 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci port@1 { 33262306a36Sopenharmony_ci reg = <1>; 33362306a36Sopenharmony_ci cluster0_funnel_in_port1: endpoint { 33462306a36Sopenharmony_ci remote-endpoint = <&cluster0_etm1_out_port>; 33562306a36Sopenharmony_ci }; 33662306a36Sopenharmony_ci }; 33762306a36Sopenharmony_ci }; 33862306a36Sopenharmony_ci }; 33962306a36Sopenharmony_ci 34062306a36Sopenharmony_ci cpu_debug1: cpu-debug@22110000 { 34162306a36Sopenharmony_ci compatible = "arm,coresight-cpu-debug", "arm,primecell"; 34262306a36Sopenharmony_ci reg = <0x0 0x22110000 0x0 0x1000>; 34362306a36Sopenharmony_ci 34462306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 34562306a36Sopenharmony_ci clock-names = "apb_pclk"; 34662306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 34762306a36Sopenharmony_ci }; 34862306a36Sopenharmony_ci 34962306a36Sopenharmony_ci etm1: etm@22140000 { 35062306a36Sopenharmony_ci compatible = "arm,coresight-etm4x", "arm,primecell"; 35162306a36Sopenharmony_ci reg = <0 0x22140000 0 0x1000>; 35262306a36Sopenharmony_ci 35362306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 35462306a36Sopenharmony_ci clock-names = "apb_pclk"; 35562306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 35662306a36Sopenharmony_ci out-ports { 35762306a36Sopenharmony_ci port { 35862306a36Sopenharmony_ci cluster0_etm1_out_port: endpoint { 35962306a36Sopenharmony_ci remote-endpoint = <&cluster0_funnel_in_port1>; 36062306a36Sopenharmony_ci }; 36162306a36Sopenharmony_ci }; 36262306a36Sopenharmony_ci }; 36362306a36Sopenharmony_ci }; 36462306a36Sopenharmony_ci 36562306a36Sopenharmony_ci cti1: cti@22120000 { 36662306a36Sopenharmony_ci compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 36762306a36Sopenharmony_ci "arm,primecell"; 36862306a36Sopenharmony_ci reg = <0 0x22120000 0 0x1000>; 36962306a36Sopenharmony_ci 37062306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 37162306a36Sopenharmony_ci clock-names = "apb_pclk"; 37262306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 37362306a36Sopenharmony_ci 37462306a36Sopenharmony_ci arm,cs-dev-assoc = <&etm1>; 37562306a36Sopenharmony_ci }; 37662306a36Sopenharmony_ci 37762306a36Sopenharmony_ci cpu_debug2: cpu-debug@23010000 { 37862306a36Sopenharmony_ci compatible = "arm,coresight-cpu-debug", "arm,primecell"; 37962306a36Sopenharmony_ci reg = <0x0 0x23010000 0x0 0x1000>; 38062306a36Sopenharmony_ci 38162306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 38262306a36Sopenharmony_ci clock-names = "apb_pclk"; 38362306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 38462306a36Sopenharmony_ci }; 38562306a36Sopenharmony_ci 38662306a36Sopenharmony_ci etm2: etm@23040000 { 38762306a36Sopenharmony_ci compatible = "arm,coresight-etm4x", "arm,primecell"; 38862306a36Sopenharmony_ci reg = <0 0x23040000 0 0x1000>; 38962306a36Sopenharmony_ci 39062306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 39162306a36Sopenharmony_ci clock-names = "apb_pclk"; 39262306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 39362306a36Sopenharmony_ci out-ports { 39462306a36Sopenharmony_ci port { 39562306a36Sopenharmony_ci cluster1_etm0_out_port: endpoint { 39662306a36Sopenharmony_ci remote-endpoint = <&cluster1_funnel_in_port0>; 39762306a36Sopenharmony_ci }; 39862306a36Sopenharmony_ci }; 39962306a36Sopenharmony_ci }; 40062306a36Sopenharmony_ci }; 40162306a36Sopenharmony_ci 40262306a36Sopenharmony_ci cti2: cti@23020000 { 40362306a36Sopenharmony_ci compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 40462306a36Sopenharmony_ci "arm,primecell"; 40562306a36Sopenharmony_ci reg = <0 0x23020000 0 0x1000>; 40662306a36Sopenharmony_ci 40762306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 40862306a36Sopenharmony_ci clock-names = "apb_pclk"; 40962306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ci arm,cs-dev-assoc = <&etm2>; 41262306a36Sopenharmony_ci }; 41362306a36Sopenharmony_ci 41462306a36Sopenharmony_ci funnel@230c0000 { /* cluster1 funnel */ 41562306a36Sopenharmony_ci compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 41662306a36Sopenharmony_ci reg = <0 0x230c0000 0 0x1000>; 41762306a36Sopenharmony_ci 41862306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 41962306a36Sopenharmony_ci clock-names = "apb_pclk"; 42062306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 42162306a36Sopenharmony_ci out-ports { 42262306a36Sopenharmony_ci port { 42362306a36Sopenharmony_ci cluster1_funnel_out_port: endpoint { 42462306a36Sopenharmony_ci remote-endpoint = <&main_funnel_in_port1>; 42562306a36Sopenharmony_ci }; 42662306a36Sopenharmony_ci }; 42762306a36Sopenharmony_ci }; 42862306a36Sopenharmony_ci 42962306a36Sopenharmony_ci in-ports { 43062306a36Sopenharmony_ci #address-cells = <1>; 43162306a36Sopenharmony_ci #size-cells = <0>; 43262306a36Sopenharmony_ci 43362306a36Sopenharmony_ci port@0 { 43462306a36Sopenharmony_ci reg = <0>; 43562306a36Sopenharmony_ci cluster1_funnel_in_port0: endpoint { 43662306a36Sopenharmony_ci remote-endpoint = <&cluster1_etm0_out_port>; 43762306a36Sopenharmony_ci }; 43862306a36Sopenharmony_ci }; 43962306a36Sopenharmony_ci 44062306a36Sopenharmony_ci port@1 { 44162306a36Sopenharmony_ci reg = <1>; 44262306a36Sopenharmony_ci cluster1_funnel_in_port1: endpoint { 44362306a36Sopenharmony_ci remote-endpoint = <&cluster1_etm1_out_port>; 44462306a36Sopenharmony_ci }; 44562306a36Sopenharmony_ci }; 44662306a36Sopenharmony_ci port@2 { 44762306a36Sopenharmony_ci reg = <2>; 44862306a36Sopenharmony_ci cluster1_funnel_in_port2: endpoint { 44962306a36Sopenharmony_ci remote-endpoint = <&cluster1_etm2_out_port>; 45062306a36Sopenharmony_ci }; 45162306a36Sopenharmony_ci }; 45262306a36Sopenharmony_ci port@3 { 45362306a36Sopenharmony_ci reg = <3>; 45462306a36Sopenharmony_ci cluster1_funnel_in_port3: endpoint { 45562306a36Sopenharmony_ci remote-endpoint = <&cluster1_etm3_out_port>; 45662306a36Sopenharmony_ci }; 45762306a36Sopenharmony_ci }; 45862306a36Sopenharmony_ci }; 45962306a36Sopenharmony_ci }; 46062306a36Sopenharmony_ci 46162306a36Sopenharmony_ci cpu_debug3: cpu-debug@23110000 { 46262306a36Sopenharmony_ci compatible = "arm,coresight-cpu-debug", "arm,primecell"; 46362306a36Sopenharmony_ci reg = <0x0 0x23110000 0x0 0x1000>; 46462306a36Sopenharmony_ci 46562306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 46662306a36Sopenharmony_ci clock-names = "apb_pclk"; 46762306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 46862306a36Sopenharmony_ci }; 46962306a36Sopenharmony_ci 47062306a36Sopenharmony_ci etm3: etm@23140000 { 47162306a36Sopenharmony_ci compatible = "arm,coresight-etm4x", "arm,primecell"; 47262306a36Sopenharmony_ci reg = <0 0x23140000 0 0x1000>; 47362306a36Sopenharmony_ci 47462306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 47562306a36Sopenharmony_ci clock-names = "apb_pclk"; 47662306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 47762306a36Sopenharmony_ci out-ports { 47862306a36Sopenharmony_ci port { 47962306a36Sopenharmony_ci cluster1_etm1_out_port: endpoint { 48062306a36Sopenharmony_ci remote-endpoint = <&cluster1_funnel_in_port1>; 48162306a36Sopenharmony_ci }; 48262306a36Sopenharmony_ci }; 48362306a36Sopenharmony_ci }; 48462306a36Sopenharmony_ci }; 48562306a36Sopenharmony_ci 48662306a36Sopenharmony_ci cti3: cti@23120000 { 48762306a36Sopenharmony_ci compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 48862306a36Sopenharmony_ci "arm,primecell"; 48962306a36Sopenharmony_ci reg = <0 0x23120000 0 0x1000>; 49062306a36Sopenharmony_ci 49162306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 49262306a36Sopenharmony_ci clock-names = "apb_pclk"; 49362306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 49462306a36Sopenharmony_ci 49562306a36Sopenharmony_ci arm,cs-dev-assoc = <&etm3>; 49662306a36Sopenharmony_ci }; 49762306a36Sopenharmony_ci 49862306a36Sopenharmony_ci cpu_debug4: cpu-debug@23210000 { 49962306a36Sopenharmony_ci compatible = "arm,coresight-cpu-debug", "arm,primecell"; 50062306a36Sopenharmony_ci reg = <0x0 0x23210000 0x0 0x1000>; 50162306a36Sopenharmony_ci 50262306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 50362306a36Sopenharmony_ci clock-names = "apb_pclk"; 50462306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 50562306a36Sopenharmony_ci }; 50662306a36Sopenharmony_ci 50762306a36Sopenharmony_ci etm4: etm@23240000 { 50862306a36Sopenharmony_ci compatible = "arm,coresight-etm4x", "arm,primecell"; 50962306a36Sopenharmony_ci reg = <0 0x23240000 0 0x1000>; 51062306a36Sopenharmony_ci 51162306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 51262306a36Sopenharmony_ci clock-names = "apb_pclk"; 51362306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 51462306a36Sopenharmony_ci out-ports { 51562306a36Sopenharmony_ci port { 51662306a36Sopenharmony_ci cluster1_etm2_out_port: endpoint { 51762306a36Sopenharmony_ci remote-endpoint = <&cluster1_funnel_in_port2>; 51862306a36Sopenharmony_ci }; 51962306a36Sopenharmony_ci }; 52062306a36Sopenharmony_ci }; 52162306a36Sopenharmony_ci }; 52262306a36Sopenharmony_ci 52362306a36Sopenharmony_ci cti4: cti@23220000 { 52462306a36Sopenharmony_ci compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 52562306a36Sopenharmony_ci "arm,primecell"; 52662306a36Sopenharmony_ci reg = <0 0x23220000 0 0x1000>; 52762306a36Sopenharmony_ci 52862306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 52962306a36Sopenharmony_ci clock-names = "apb_pclk"; 53062306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 53162306a36Sopenharmony_ci 53262306a36Sopenharmony_ci arm,cs-dev-assoc = <&etm4>; 53362306a36Sopenharmony_ci }; 53462306a36Sopenharmony_ci 53562306a36Sopenharmony_ci cpu_debug5: cpu-debug@23310000 { 53662306a36Sopenharmony_ci compatible = "arm,coresight-cpu-debug", "arm,primecell"; 53762306a36Sopenharmony_ci reg = <0x0 0x23310000 0x0 0x1000>; 53862306a36Sopenharmony_ci 53962306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 54062306a36Sopenharmony_ci clock-names = "apb_pclk"; 54162306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 54262306a36Sopenharmony_ci }; 54362306a36Sopenharmony_ci 54462306a36Sopenharmony_ci etm5: etm@23340000 { 54562306a36Sopenharmony_ci compatible = "arm,coresight-etm4x", "arm,primecell"; 54662306a36Sopenharmony_ci reg = <0 0x23340000 0 0x1000>; 54762306a36Sopenharmony_ci 54862306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 54962306a36Sopenharmony_ci clock-names = "apb_pclk"; 55062306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 55162306a36Sopenharmony_ci out-ports { 55262306a36Sopenharmony_ci port { 55362306a36Sopenharmony_ci cluster1_etm3_out_port: endpoint { 55462306a36Sopenharmony_ci remote-endpoint = <&cluster1_funnel_in_port3>; 55562306a36Sopenharmony_ci }; 55662306a36Sopenharmony_ci }; 55762306a36Sopenharmony_ci }; 55862306a36Sopenharmony_ci }; 55962306a36Sopenharmony_ci 56062306a36Sopenharmony_ci cti5: cti@23320000 { 56162306a36Sopenharmony_ci compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 56262306a36Sopenharmony_ci "arm,primecell"; 56362306a36Sopenharmony_ci reg = <0 0x23320000 0 0x1000>; 56462306a36Sopenharmony_ci 56562306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 56662306a36Sopenharmony_ci clock-names = "apb_pclk"; 56762306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 56862306a36Sopenharmony_ci 56962306a36Sopenharmony_ci arm,cs-dev-assoc = <&etm5>; 57062306a36Sopenharmony_ci }; 57162306a36Sopenharmony_ci 57262306a36Sopenharmony_ci cti_sys0: cti@20020000 { /* sys_cti_0 */ 57362306a36Sopenharmony_ci compatible = "arm,coresight-cti", "arm,primecell"; 57462306a36Sopenharmony_ci reg = <0 0x20020000 0 0x1000>; 57562306a36Sopenharmony_ci 57662306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 57762306a36Sopenharmony_ci clock-names = "apb_pclk"; 57862306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 57962306a36Sopenharmony_ci 58062306a36Sopenharmony_ci #address-cells = <1>; 58162306a36Sopenharmony_ci #size-cells = <0>; 58262306a36Sopenharmony_ci 58362306a36Sopenharmony_ci trig-conns@0 { 58462306a36Sopenharmony_ci reg = <0>; 58562306a36Sopenharmony_ci arm,trig-in-sigs = <2 3>; 58662306a36Sopenharmony_ci arm,trig-in-types = <SNK_FULL SNK_ACQCOMP>; 58762306a36Sopenharmony_ci arm,trig-out-sigs = <0 1>; 58862306a36Sopenharmony_ci arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>; 58962306a36Sopenharmony_ci arm,cs-dev-assoc = <&etr_sys>; 59062306a36Sopenharmony_ci }; 59162306a36Sopenharmony_ci 59262306a36Sopenharmony_ci trig-conns@1 { 59362306a36Sopenharmony_ci reg = <1>; 59462306a36Sopenharmony_ci arm,trig-in-sigs = <0 1>; 59562306a36Sopenharmony_ci arm,trig-in-types = <SNK_FULL SNK_ACQCOMP>; 59662306a36Sopenharmony_ci arm,trig-out-sigs = <7 6>; 59762306a36Sopenharmony_ci arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>; 59862306a36Sopenharmony_ci arm,cs-dev-assoc = <&etf_sys0>; 59962306a36Sopenharmony_ci }; 60062306a36Sopenharmony_ci 60162306a36Sopenharmony_ci trig-conns@2 { 60262306a36Sopenharmony_ci reg = <2>; 60362306a36Sopenharmony_ci arm,trig-in-sigs = <4 5 6 7>; 60462306a36Sopenharmony_ci arm,trig-in-types = <STM_TOUT_SPTE STM_TOUT_SW 60562306a36Sopenharmony_ci STM_TOUT_HETE STM_ASYNCOUT>; 60662306a36Sopenharmony_ci arm,trig-out-sigs = <4 5>; 60762306a36Sopenharmony_ci arm,trig-out-types = <STM_HWEVENT STM_HWEVENT>; 60862306a36Sopenharmony_ci arm,cs-dev-assoc = <&stm_sys>; 60962306a36Sopenharmony_ci }; 61062306a36Sopenharmony_ci 61162306a36Sopenharmony_ci trig-conns@3 { 61262306a36Sopenharmony_ci reg = <3>; 61362306a36Sopenharmony_ci arm,trig-out-sigs = <2 3>; 61462306a36Sopenharmony_ci arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>; 61562306a36Sopenharmony_ci arm,cs-dev-assoc = <&tpiu_sys>; 61662306a36Sopenharmony_ci }; 61762306a36Sopenharmony_ci }; 61862306a36Sopenharmony_ci 61962306a36Sopenharmony_ci cti_sys1: cti@20110000 { /* sys_cti_1 */ 62062306a36Sopenharmony_ci compatible = "arm,coresight-cti", "arm,primecell"; 62162306a36Sopenharmony_ci reg = <0 0x20110000 0 0x1000>; 62262306a36Sopenharmony_ci 62362306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 62462306a36Sopenharmony_ci clock-names = "apb_pclk"; 62562306a36Sopenharmony_ci power-domains = <&scpi_devpd 0>; 62662306a36Sopenharmony_ci 62762306a36Sopenharmony_ci #address-cells = <1>; 62862306a36Sopenharmony_ci #size-cells = <0>; 62962306a36Sopenharmony_ci 63062306a36Sopenharmony_ci trig-conns@0 { 63162306a36Sopenharmony_ci reg = <0>; 63262306a36Sopenharmony_ci arm,trig-in-sigs = <0>; 63362306a36Sopenharmony_ci arm,trig-in-types = <GEN_INTREQ>; 63462306a36Sopenharmony_ci arm,trig-out-sigs = <0>; 63562306a36Sopenharmony_ci arm,trig-out-types = <GEN_HALTREQ>; 63662306a36Sopenharmony_ci arm,trig-conn-name = "sys_profiler"; 63762306a36Sopenharmony_ci }; 63862306a36Sopenharmony_ci 63962306a36Sopenharmony_ci trig-conns@1 { 64062306a36Sopenharmony_ci reg = <1>; 64162306a36Sopenharmony_ci arm,trig-out-sigs = <2 3>; 64262306a36Sopenharmony_ci arm,trig-out-types = <GEN_HALTREQ GEN_RESTARTREQ>; 64362306a36Sopenharmony_ci arm,trig-conn-name = "watchdog"; 64462306a36Sopenharmony_ci }; 64562306a36Sopenharmony_ci 64662306a36Sopenharmony_ci trig-conns@2 { 64762306a36Sopenharmony_ci reg = <2>; 64862306a36Sopenharmony_ci arm,trig-out-sigs = <1 6>; 64962306a36Sopenharmony_ci arm,trig-out-types = <GEN_HALTREQ GEN_RESTARTREQ>; 65062306a36Sopenharmony_ci arm,trig-conn-name = "g_counter"; 65162306a36Sopenharmony_ci }; 65262306a36Sopenharmony_ci }; 65362306a36Sopenharmony_ci 65462306a36Sopenharmony_ci gpu: gpu@2d000000 { 65562306a36Sopenharmony_ci compatible = "arm,juno-mali", "arm,mali-t624"; 65662306a36Sopenharmony_ci reg = <0 0x2d000000 0 0x10000>; 65762306a36Sopenharmony_ci interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 65862306a36Sopenharmony_ci <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 65962306a36Sopenharmony_ci <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 66062306a36Sopenharmony_ci interrupt-names = "job", "mmu", "gpu"; 66162306a36Sopenharmony_ci clocks = <&scpi_dvfs 2>; 66262306a36Sopenharmony_ci power-domains = <&scpi_devpd 1>; 66362306a36Sopenharmony_ci dma-coherent; 66462306a36Sopenharmony_ci /* The SMMU is only really of interest to bare-metal hypervisors */ 66562306a36Sopenharmony_ci /* iommus = <&smmu_gpu 0>; */ 66662306a36Sopenharmony_ci status = "disabled"; 66762306a36Sopenharmony_ci }; 66862306a36Sopenharmony_ci 66962306a36Sopenharmony_ci sram: sram@2e000000 { 67062306a36Sopenharmony_ci compatible = "arm,juno-sram-ns", "mmio-sram"; 67162306a36Sopenharmony_ci reg = <0x0 0x2e000000 0x0 0x8000>; 67262306a36Sopenharmony_ci 67362306a36Sopenharmony_ci #address-cells = <1>; 67462306a36Sopenharmony_ci #size-cells = <1>; 67562306a36Sopenharmony_ci ranges = <0 0x0 0x2e000000 0x8000>; 67662306a36Sopenharmony_ci 67762306a36Sopenharmony_ci cpu_scp_lpri: scp-sram@0 { 67862306a36Sopenharmony_ci compatible = "arm,juno-scp-shmem"; 67962306a36Sopenharmony_ci reg = <0x0 0x200>; 68062306a36Sopenharmony_ci }; 68162306a36Sopenharmony_ci 68262306a36Sopenharmony_ci cpu_scp_hpri: scp-sram@200 { 68362306a36Sopenharmony_ci compatible = "arm,juno-scp-shmem"; 68462306a36Sopenharmony_ci reg = <0x200 0x200>; 68562306a36Sopenharmony_ci }; 68662306a36Sopenharmony_ci }; 68762306a36Sopenharmony_ci 68862306a36Sopenharmony_ci pcie_ctlr: pcie@40000000 { 68962306a36Sopenharmony_ci compatible = "arm,juno-r1-pcie", "plda,xpressrich3-axi", "pci-host-ecam-generic"; 69062306a36Sopenharmony_ci device_type = "pci"; 69162306a36Sopenharmony_ci reg = <0 0x40000000 0 0x10000000>; /* ECAM config space */ 69262306a36Sopenharmony_ci bus-range = <0 255>; 69362306a36Sopenharmony_ci linux,pci-domain = <0>; 69462306a36Sopenharmony_ci #address-cells = <3>; 69562306a36Sopenharmony_ci #size-cells = <2>; 69662306a36Sopenharmony_ci dma-coherent; 69762306a36Sopenharmony_ci ranges = <0x01000000 0x00 0x00000000 0x00 0x5f800000 0x0 0x00800000>, 69862306a36Sopenharmony_ci <0x02000000 0x00 0x50000000 0x00 0x50000000 0x0 0x08000000>, 69962306a36Sopenharmony_ci <0x42000000 0x40 0x00000000 0x40 0x00000000 0x1 0x00000000>; 70062306a36Sopenharmony_ci /* Standard AXI Translation entries as programmed by EDK2 */ 70162306a36Sopenharmony_ci dma-ranges = <0x02000000 0x0 0x80000000 0x0 0x80000000 0x0 0x80000000>, 70262306a36Sopenharmony_ci <0x43000000 0x8 0x00000000 0x8 0x00000000 0x2 0x00000000>; 70362306a36Sopenharmony_ci #interrupt-cells = <1>; 70462306a36Sopenharmony_ci interrupt-map-mask = <0 0 0 7>; 70562306a36Sopenharmony_ci interrupt-map = <0 0 0 1 &gic 0 GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 70662306a36Sopenharmony_ci <0 0 0 2 &gic 0 GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 70762306a36Sopenharmony_ci <0 0 0 3 &gic 0 GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 70862306a36Sopenharmony_ci <0 0 0 4 &gic 0 GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>; 70962306a36Sopenharmony_ci msi-parent = <&v2m_0>; 71062306a36Sopenharmony_ci status = "disabled"; 71162306a36Sopenharmony_ci iommu-map-mask = <0x0>; /* RC has no means to output PCI RID */ 71262306a36Sopenharmony_ci iommu-map = <0x0 &smmu_pcie 0x0 0x1>; 71362306a36Sopenharmony_ci }; 71462306a36Sopenharmony_ci 71562306a36Sopenharmony_ci scpi { 71662306a36Sopenharmony_ci compatible = "arm,scpi"; 71762306a36Sopenharmony_ci mboxes = <&mailbox 1>; 71862306a36Sopenharmony_ci shmem = <&cpu_scp_hpri>; 71962306a36Sopenharmony_ci 72062306a36Sopenharmony_ci clocks { 72162306a36Sopenharmony_ci compatible = "arm,scpi-clocks"; 72262306a36Sopenharmony_ci 72362306a36Sopenharmony_ci scpi_dvfs: clocks-0 { 72462306a36Sopenharmony_ci compatible = "arm,scpi-dvfs-clocks"; 72562306a36Sopenharmony_ci #clock-cells = <1>; 72662306a36Sopenharmony_ci clock-indices = <0>, <1>, <2>; 72762306a36Sopenharmony_ci clock-output-names = "atlclk", "aplclk","gpuclk"; 72862306a36Sopenharmony_ci }; 72962306a36Sopenharmony_ci scpi_clk: clocks-1 { 73062306a36Sopenharmony_ci compatible = "arm,scpi-variable-clocks"; 73162306a36Sopenharmony_ci #clock-cells = <1>; 73262306a36Sopenharmony_ci clock-indices = <3>; 73362306a36Sopenharmony_ci clock-output-names = "pxlclk"; 73462306a36Sopenharmony_ci }; 73562306a36Sopenharmony_ci }; 73662306a36Sopenharmony_ci 73762306a36Sopenharmony_ci scpi_devpd: power-controller { 73862306a36Sopenharmony_ci compatible = "arm,scpi-power-domains"; 73962306a36Sopenharmony_ci num-domains = <2>; 74062306a36Sopenharmony_ci #power-domain-cells = <1>; 74162306a36Sopenharmony_ci }; 74262306a36Sopenharmony_ci 74362306a36Sopenharmony_ci scpi_sensors0: sensors { 74462306a36Sopenharmony_ci compatible = "arm,scpi-sensors"; 74562306a36Sopenharmony_ci #thermal-sensor-cells = <1>; 74662306a36Sopenharmony_ci }; 74762306a36Sopenharmony_ci }; 74862306a36Sopenharmony_ci 74962306a36Sopenharmony_ci thermal-zones { 75062306a36Sopenharmony_ci pmic { 75162306a36Sopenharmony_ci polling-delay = <1000>; 75262306a36Sopenharmony_ci polling-delay-passive = <100>; 75362306a36Sopenharmony_ci thermal-sensors = <&scpi_sensors0 0>; 75462306a36Sopenharmony_ci trips { 75562306a36Sopenharmony_ci pmic_crit0: trip0 { 75662306a36Sopenharmony_ci temperature = <90000>; 75762306a36Sopenharmony_ci hysteresis = <2000>; 75862306a36Sopenharmony_ci type = "critical"; 75962306a36Sopenharmony_ci }; 76062306a36Sopenharmony_ci }; 76162306a36Sopenharmony_ci }; 76262306a36Sopenharmony_ci 76362306a36Sopenharmony_ci soc { 76462306a36Sopenharmony_ci polling-delay = <1000>; 76562306a36Sopenharmony_ci polling-delay-passive = <100>; 76662306a36Sopenharmony_ci thermal-sensors = <&scpi_sensors0 3>; 76762306a36Sopenharmony_ci trips { 76862306a36Sopenharmony_ci soc_crit0: trip0 { 76962306a36Sopenharmony_ci temperature = <80000>; 77062306a36Sopenharmony_ci hysteresis = <2000>; 77162306a36Sopenharmony_ci type = "critical"; 77262306a36Sopenharmony_ci }; 77362306a36Sopenharmony_ci }; 77462306a36Sopenharmony_ci }; 77562306a36Sopenharmony_ci 77662306a36Sopenharmony_ci big_cluster_thermal_zone: big-cluster { 77762306a36Sopenharmony_ci polling-delay = <1000>; 77862306a36Sopenharmony_ci polling-delay-passive = <100>; 77962306a36Sopenharmony_ci thermal-sensors = <&scpi_sensors0 21>; 78062306a36Sopenharmony_ci status = "disabled"; 78162306a36Sopenharmony_ci }; 78262306a36Sopenharmony_ci 78362306a36Sopenharmony_ci little_cluster_thermal_zone: little-cluster { 78462306a36Sopenharmony_ci polling-delay = <1000>; 78562306a36Sopenharmony_ci polling-delay-passive = <100>; 78662306a36Sopenharmony_ci thermal-sensors = <&scpi_sensors0 22>; 78762306a36Sopenharmony_ci status = "disabled"; 78862306a36Sopenharmony_ci }; 78962306a36Sopenharmony_ci 79062306a36Sopenharmony_ci gpu0_thermal_zone: gpu0 { 79162306a36Sopenharmony_ci polling-delay = <1000>; 79262306a36Sopenharmony_ci polling-delay-passive = <100>; 79362306a36Sopenharmony_ci thermal-sensors = <&scpi_sensors0 23>; 79462306a36Sopenharmony_ci status = "disabled"; 79562306a36Sopenharmony_ci }; 79662306a36Sopenharmony_ci 79762306a36Sopenharmony_ci gpu1_thermal_zone: gpu1 { 79862306a36Sopenharmony_ci polling-delay = <1000>; 79962306a36Sopenharmony_ci polling-delay-passive = <100>; 80062306a36Sopenharmony_ci thermal-sensors = <&scpi_sensors0 24>; 80162306a36Sopenharmony_ci status = "disabled"; 80262306a36Sopenharmony_ci }; 80362306a36Sopenharmony_ci }; 80462306a36Sopenharmony_ci 80562306a36Sopenharmony_ci smmu_dma: iommu@7fb00000 { 80662306a36Sopenharmony_ci compatible = "arm,mmu-401", "arm,smmu-v1"; 80762306a36Sopenharmony_ci reg = <0x0 0x7fb00000 0x0 0x10000>; 80862306a36Sopenharmony_ci interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, 80962306a36Sopenharmony_ci <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 81062306a36Sopenharmony_ci #iommu-cells = <1>; 81162306a36Sopenharmony_ci #global-interrupts = <1>; 81262306a36Sopenharmony_ci dma-coherent; 81362306a36Sopenharmony_ci }; 81462306a36Sopenharmony_ci 81562306a36Sopenharmony_ci smmu_hdlcd1: iommu@7fb10000 { 81662306a36Sopenharmony_ci compatible = "arm,mmu-401", "arm,smmu-v1"; 81762306a36Sopenharmony_ci reg = <0x0 0x7fb10000 0x0 0x10000>; 81862306a36Sopenharmony_ci interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 81962306a36Sopenharmony_ci <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 82062306a36Sopenharmony_ci #iommu-cells = <1>; 82162306a36Sopenharmony_ci #global-interrupts = <1>; 82262306a36Sopenharmony_ci }; 82362306a36Sopenharmony_ci 82462306a36Sopenharmony_ci smmu_hdlcd0: iommu@7fb20000 { 82562306a36Sopenharmony_ci compatible = "arm,mmu-401", "arm,smmu-v1"; 82662306a36Sopenharmony_ci reg = <0x0 0x7fb20000 0x0 0x10000>; 82762306a36Sopenharmony_ci interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 82862306a36Sopenharmony_ci <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 82962306a36Sopenharmony_ci #iommu-cells = <1>; 83062306a36Sopenharmony_ci #global-interrupts = <1>; 83162306a36Sopenharmony_ci }; 83262306a36Sopenharmony_ci 83362306a36Sopenharmony_ci smmu_usb: iommu@7fb30000 { 83462306a36Sopenharmony_ci compatible = "arm,mmu-401", "arm,smmu-v1"; 83562306a36Sopenharmony_ci reg = <0x0 0x7fb30000 0x0 0x10000>; 83662306a36Sopenharmony_ci interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 83762306a36Sopenharmony_ci <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 83862306a36Sopenharmony_ci #iommu-cells = <1>; 83962306a36Sopenharmony_ci #global-interrupts = <1>; 84062306a36Sopenharmony_ci dma-coherent; 84162306a36Sopenharmony_ci }; 84262306a36Sopenharmony_ci 84362306a36Sopenharmony_ci dma-controller@7ff00000 { 84462306a36Sopenharmony_ci compatible = "arm,pl330", "arm,primecell"; 84562306a36Sopenharmony_ci reg = <0x0 0x7ff00000 0 0x1000>; 84662306a36Sopenharmony_ci #dma-cells = <1>; 84762306a36Sopenharmony_ci interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, 84862306a36Sopenharmony_ci <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 84962306a36Sopenharmony_ci <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, 85062306a36Sopenharmony_ci <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, 85162306a36Sopenharmony_ci <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, 85262306a36Sopenharmony_ci <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 85362306a36Sopenharmony_ci <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 85462306a36Sopenharmony_ci <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 85562306a36Sopenharmony_ci <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 85662306a36Sopenharmony_ci iommus = <&smmu_dma 0>, 85762306a36Sopenharmony_ci <&smmu_dma 1>, 85862306a36Sopenharmony_ci <&smmu_dma 2>, 85962306a36Sopenharmony_ci <&smmu_dma 3>, 86062306a36Sopenharmony_ci <&smmu_dma 4>, 86162306a36Sopenharmony_ci <&smmu_dma 5>, 86262306a36Sopenharmony_ci <&smmu_dma 6>, 86362306a36Sopenharmony_ci <&smmu_dma 7>, 86462306a36Sopenharmony_ci <&smmu_dma 8>; 86562306a36Sopenharmony_ci clocks = <&soc_faxiclk>; 86662306a36Sopenharmony_ci clock-names = "apb_pclk"; 86762306a36Sopenharmony_ci }; 86862306a36Sopenharmony_ci 86962306a36Sopenharmony_ci hdlcd@7ff50000 { 87062306a36Sopenharmony_ci compatible = "arm,hdlcd"; 87162306a36Sopenharmony_ci reg = <0 0x7ff50000 0 0x1000>; 87262306a36Sopenharmony_ci interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 87362306a36Sopenharmony_ci iommus = <&smmu_hdlcd1 0>; 87462306a36Sopenharmony_ci clocks = <&scpi_clk 3>; 87562306a36Sopenharmony_ci clock-names = "pxlclk"; 87662306a36Sopenharmony_ci 87762306a36Sopenharmony_ci port { 87862306a36Sopenharmony_ci hdlcd1_output: endpoint { 87962306a36Sopenharmony_ci remote-endpoint = <&tda998x_1_input>; 88062306a36Sopenharmony_ci }; 88162306a36Sopenharmony_ci }; 88262306a36Sopenharmony_ci }; 88362306a36Sopenharmony_ci 88462306a36Sopenharmony_ci hdlcd@7ff60000 { 88562306a36Sopenharmony_ci compatible = "arm,hdlcd"; 88662306a36Sopenharmony_ci reg = <0 0x7ff60000 0 0x1000>; 88762306a36Sopenharmony_ci interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 88862306a36Sopenharmony_ci iommus = <&smmu_hdlcd0 0>; 88962306a36Sopenharmony_ci clocks = <&scpi_clk 3>; 89062306a36Sopenharmony_ci clock-names = "pxlclk"; 89162306a36Sopenharmony_ci 89262306a36Sopenharmony_ci port { 89362306a36Sopenharmony_ci hdlcd0_output: endpoint { 89462306a36Sopenharmony_ci remote-endpoint = <&tda998x_0_input>; 89562306a36Sopenharmony_ci }; 89662306a36Sopenharmony_ci }; 89762306a36Sopenharmony_ci }; 89862306a36Sopenharmony_ci 89962306a36Sopenharmony_ci soc_uart0: serial@7ff80000 { 90062306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 90162306a36Sopenharmony_ci reg = <0x0 0x7ff80000 0x0 0x1000>; 90262306a36Sopenharmony_ci interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 90362306a36Sopenharmony_ci clocks = <&soc_uartclk>, <&soc_refclk100mhz>; 90462306a36Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 90562306a36Sopenharmony_ci }; 90662306a36Sopenharmony_ci 90762306a36Sopenharmony_ci i2c@7ffa0000 { 90862306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 90962306a36Sopenharmony_ci reg = <0x0 0x7ffa0000 0x0 0x1000>; 91062306a36Sopenharmony_ci #address-cells = <1>; 91162306a36Sopenharmony_ci #size-cells = <0>; 91262306a36Sopenharmony_ci interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 91362306a36Sopenharmony_ci clock-frequency = <400000>; 91462306a36Sopenharmony_ci i2c-sda-hold-time-ns = <500>; 91562306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 91662306a36Sopenharmony_ci 91762306a36Sopenharmony_ci hdmi-transmitter@70 { 91862306a36Sopenharmony_ci compatible = "nxp,tda998x"; 91962306a36Sopenharmony_ci reg = <0x70>; 92062306a36Sopenharmony_ci port { 92162306a36Sopenharmony_ci tda998x_0_input: endpoint { 92262306a36Sopenharmony_ci remote-endpoint = <&hdlcd0_output>; 92362306a36Sopenharmony_ci }; 92462306a36Sopenharmony_ci }; 92562306a36Sopenharmony_ci }; 92662306a36Sopenharmony_ci 92762306a36Sopenharmony_ci hdmi-transmitter@71 { 92862306a36Sopenharmony_ci compatible = "nxp,tda998x"; 92962306a36Sopenharmony_ci reg = <0x71>; 93062306a36Sopenharmony_ci port { 93162306a36Sopenharmony_ci tda998x_1_input: endpoint { 93262306a36Sopenharmony_ci remote-endpoint = <&hdlcd1_output>; 93362306a36Sopenharmony_ci }; 93462306a36Sopenharmony_ci }; 93562306a36Sopenharmony_ci }; 93662306a36Sopenharmony_ci }; 93762306a36Sopenharmony_ci 93862306a36Sopenharmony_ci usb@7ffb0000 { 93962306a36Sopenharmony_ci compatible = "generic-ohci"; 94062306a36Sopenharmony_ci reg = <0x0 0x7ffb0000 0x0 0x10000>; 94162306a36Sopenharmony_ci interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 94262306a36Sopenharmony_ci iommus = <&smmu_usb 0>; 94362306a36Sopenharmony_ci clocks = <&soc_usb48mhz>; 94462306a36Sopenharmony_ci }; 94562306a36Sopenharmony_ci 94662306a36Sopenharmony_ci usb@7ffc0000 { 94762306a36Sopenharmony_ci compatible = "generic-ehci"; 94862306a36Sopenharmony_ci reg = <0x0 0x7ffc0000 0x0 0x10000>; 94962306a36Sopenharmony_ci interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 95062306a36Sopenharmony_ci iommus = <&smmu_usb 0>; 95162306a36Sopenharmony_ci clocks = <&soc_usb48mhz>; 95262306a36Sopenharmony_ci }; 95362306a36Sopenharmony_ci 95462306a36Sopenharmony_ci memory-controller@7ffd0000 { 95562306a36Sopenharmony_ci compatible = "arm,pl354", "arm,primecell"; 95662306a36Sopenharmony_ci reg = <0 0x7ffd0000 0 0x1000>; 95762306a36Sopenharmony_ci interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>, 95862306a36Sopenharmony_ci <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 95962306a36Sopenharmony_ci clocks = <&soc_smc50mhz>; 96062306a36Sopenharmony_ci clock-names = "apb_pclk"; 96162306a36Sopenharmony_ci }; 96262306a36Sopenharmony_ci 96362306a36Sopenharmony_ci memory@80000000 { 96462306a36Sopenharmony_ci device_type = "memory"; 96562306a36Sopenharmony_ci /* last 16MB of the first memory area is reserved for secure world use by firmware */ 96662306a36Sopenharmony_ci reg = <0x00000000 0x80000000 0x0 0x7f000000>, 96762306a36Sopenharmony_ci <0x00000008 0x80000000 0x1 0x80000000>; 96862306a36Sopenharmony_ci }; 96962306a36Sopenharmony_ci 97062306a36Sopenharmony_ci bus@8000000 { 97162306a36Sopenharmony_ci #interrupt-cells = <1>; 97262306a36Sopenharmony_ci interrupt-map-mask = <0 0 15>; 97362306a36Sopenharmony_ci interrupt-map = <0 0 0 &gic 0 GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 97462306a36Sopenharmony_ci <0 0 1 &gic 0 GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 97562306a36Sopenharmony_ci <0 0 2 &gic 0 GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 97662306a36Sopenharmony_ci <0 0 3 &gic 0 GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 97762306a36Sopenharmony_ci <0 0 4 &gic 0 GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>, 97862306a36Sopenharmony_ci <0 0 5 &gic 0 GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>, 97962306a36Sopenharmony_ci <0 0 6 &gic 0 GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>, 98062306a36Sopenharmony_ci <0 0 7 &gic 0 GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>, 98162306a36Sopenharmony_ci <0 0 8 &gic 0 GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>, 98262306a36Sopenharmony_ci <0 0 9 &gic 0 GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>, 98362306a36Sopenharmony_ci <0 0 10 &gic 0 GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>, 98462306a36Sopenharmony_ci <0 0 11 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>, 98562306a36Sopenharmony_ci <0 0 12 &gic 0 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>; 98662306a36Sopenharmony_ci }; 98762306a36Sopenharmony_ci 98862306a36Sopenharmony_ci site2: tlx-bus@60000000 { 98962306a36Sopenharmony_ci compatible = "simple-bus"; 99062306a36Sopenharmony_ci #address-cells = <1>; 99162306a36Sopenharmony_ci #size-cells = <1>; 99262306a36Sopenharmony_ci ranges = <0 0 0x60000000 0x10000000>; 99362306a36Sopenharmony_ci #interrupt-cells = <1>; 99462306a36Sopenharmony_ci interrupt-map-mask = <0 0>; 99562306a36Sopenharmony_ci interrupt-map = <0 0 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>; 99662306a36Sopenharmony_ci }; 99762306a36Sopenharmony_ci}; 998