1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 2d29e849cSSudeep Holla#include "juno-clocks.dtsi" 3349b0f95SSudeep Holla#include "juno-motherboard.dtsi" 4d29e849cSSudeep Holla 5d29e849cSSudeep Holla/ { 6e8020874SLiviu Dudau /* 7e8020874SLiviu Dudau * Devices shared by all Juno boards 8e8020874SLiviu Dudau */ 9e8020874SLiviu Dudau 1079502355SLiviu Dudau memtimer: timer@2a810000 { 1179502355SLiviu Dudau compatible = "arm,armv7-timer-mem"; 1279502355SLiviu Dudau reg = <0x0 0x2a810000 0x0 0x10000>; 1379502355SLiviu Dudau clock-frequency = <50000000>; 140e529daeSAndre Przywara #address-cells = <1>; 150e529daeSAndre Przywara #size-cells = <1>; 160e529daeSAndre Przywara ranges = <0 0x0 0x2a820000 0x20000>; 1779502355SLiviu Dudau status = "disabled"; 1879502355SLiviu Dudau frame@2a830000 { 1979502355SLiviu Dudau frame-number = <1>; 20ef972714SSudeep Holla interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 210e529daeSAndre Przywara reg = <0x10000 0x10000>; 2279502355SLiviu Dudau }; 2379502355SLiviu Dudau }; 2479502355SLiviu Dudau 25ff9a6262SSudeep Holla mailbox: mhu@2b1f0000 { 26ff9a6262SSudeep Holla compatible = "arm,mhu", "arm,primecell"; 27ff9a6262SSudeep Holla reg = <0x0 0x2b1f0000 0x0 0x1000>; 28ff9a6262SSudeep Holla interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>, 29422ab8feSJassi Brar <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 30422ab8feSJassi Brar <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 31ff9a6262SSudeep Holla #mbox-cells = <1>; 32ff9a6262SSudeep Holla clocks = <&soc_refclk100mhz>; 33ff9a6262SSudeep Holla clock-names = "apb_pclk"; 34ff9a6262SSudeep Holla }; 35ff9a6262SSudeep Holla 36577dd5deSRobin Murphy smmu_gpu: iommu@2b400000 { 37577dd5deSRobin Murphy compatible = "arm,mmu-400", "arm,smmu-v1"; 38577dd5deSRobin Murphy reg = <0x0 0x2b400000 0x0 0x10000>; 39577dd5deSRobin Murphy interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, 40577dd5deSRobin Murphy <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 41577dd5deSRobin Murphy #iommu-cells = <1>; 42577dd5deSRobin Murphy #global-interrupts = <1>; 43577dd5deSRobin Murphy power-domains = <&scpi_devpd 1>; 44577dd5deSRobin Murphy dma-coherent; 45577dd5deSRobin Murphy status = "disabled"; 46577dd5deSRobin Murphy }; 47577dd5deSRobin Murphy 482ac15068SRobin Murphy smmu_pcie: iommu@2b500000 { 492ac15068SRobin Murphy compatible = "arm,mmu-401", "arm,smmu-v1"; 502ac15068SRobin Murphy reg = <0x0 0x2b500000 0x0 0x10000>; 512ac15068SRobin Murphy interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 522ac15068SRobin Murphy <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 532ac15068SRobin Murphy #iommu-cells = <1>; 542ac15068SRobin Murphy #global-interrupts = <1>; 552ac15068SRobin Murphy dma-coherent; 562ac15068SRobin Murphy status = "disabled"; 572ac15068SRobin Murphy }; 582ac15068SRobin Murphy 592ac15068SRobin Murphy smmu_etr: iommu@2b600000 { 602ac15068SRobin Murphy compatible = "arm,mmu-401", "arm,smmu-v1"; 612ac15068SRobin Murphy reg = <0x0 0x2b600000 0x0 0x10000>; 622ac15068SRobin Murphy interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 632ac15068SRobin Murphy <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 642ac15068SRobin Murphy #iommu-cells = <1>; 652ac15068SRobin Murphy #global-interrupts = <1>; 662ac15068SRobin Murphy dma-coherent; 67fd47c206SRobin Murphy power-domains = <&scpi_devpd 0>; 682ac15068SRobin Murphy }; 692ac15068SRobin Murphy 70e8020874SLiviu Dudau gic: interrupt-controller@2c010000 { 71e8020874SLiviu Dudau compatible = "arm,gic-400", "arm,cortex-a15-gic"; 72e8020874SLiviu Dudau reg = <0x0 0x2c010000 0 0x1000>, 73e8020874SLiviu Dudau <0x0 0x2c02f000 0 0x2000>, 74e8020874SLiviu Dudau <0x0 0x2c04f000 0 0x2000>, 75e8020874SLiviu Dudau <0x0 0x2c06f000 0 0x2000>; 76a78aee9eSAndre Przywara #address-cells = <1>; 77e8020874SLiviu Dudau #interrupt-cells = <3>; 78a78aee9eSAndre Przywara #size-cells = <1>; 79e8020874SLiviu Dudau interrupt-controller; 80e8020874SLiviu Dudau interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>; 81a78aee9eSAndre Przywara ranges = <0 0 0x2c1c0000 0x40000>; 8220fd17ffSRobin Murphy 839e6f374fSLiviu Dudau v2m_0: v2m@0 { 849e6f374fSLiviu Dudau compatible = "arm,gic-v2m-frame"; 859e6f374fSLiviu Dudau msi-controller; 86a78aee9eSAndre Przywara reg = <0 0x10000>; 879e6f374fSLiviu Dudau }; 8820fd17ffSRobin Murphy 8920fd17ffSRobin Murphy v2m@10000 { 9020fd17ffSRobin Murphy compatible = "arm,gic-v2m-frame"; 9120fd17ffSRobin Murphy msi-controller; 92a78aee9eSAndre Przywara reg = <0x10000 0x10000>; 9320fd17ffSRobin Murphy }; 9420fd17ffSRobin Murphy 9520fd17ffSRobin Murphy v2m@20000 { 9620fd17ffSRobin Murphy compatible = "arm,gic-v2m-frame"; 9720fd17ffSRobin Murphy msi-controller; 98a78aee9eSAndre Przywara reg = <0x20000 0x10000>; 9920fd17ffSRobin Murphy }; 10020fd17ffSRobin Murphy 10120fd17ffSRobin Murphy v2m@30000 { 10220fd17ffSRobin Murphy compatible = "arm,gic-v2m-frame"; 10320fd17ffSRobin Murphy msi-controller; 104a78aee9eSAndre Przywara reg = <0x30000 0x10000>; 10520fd17ffSRobin Murphy }; 106e8020874SLiviu Dudau }; 107e8020874SLiviu Dudau 108e8020874SLiviu Dudau timer { 109e8020874SLiviu Dudau compatible = "arm,armv8-timer"; 110e8020874SLiviu Dudau interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 111e8020874SLiviu Dudau <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 112e8020874SLiviu Dudau <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 113e8020874SLiviu Dudau <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>; 114e8020874SLiviu Dudau }; 115e8020874SLiviu Dudau 1163e287cf6SSudeep Holla /* 1173e287cf6SSudeep Holla * Juno TRMs specify the size for these coresight components as 64K. 1183e287cf6SSudeep Holla * The actual size is just 4K though 64K is reserved. Access to the 1193e287cf6SSudeep Holla * unmapped reserved region results in a DECERR response. 1203e287cf6SSudeep Holla */ 121e7676a00SMike Leach etf_sys0: etf@20010000 { /* etf0 */ 1223e287cf6SSudeep Holla compatible = "arm,coresight-tmc", "arm,primecell"; 1233e287cf6SSudeep Holla reg = <0 0x20010000 0 0x1000>; 1243e287cf6SSudeep Holla 1253e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 1263e287cf6SSudeep Holla clock-names = "apb_pclk"; 127bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 1283e287cf6SSudeep Holla 12941af6cbfSSuzuki K Poulose in-ports { 13041af6cbfSSuzuki K Poulose port { 13119ac17c0SSudeep Holla etf0_in_port: endpoint { 1323e287cf6SSudeep Holla remote-endpoint = <&main_funnel_out_port>; 1333e287cf6SSudeep Holla }; 1343e287cf6SSudeep Holla }; 13541af6cbfSSuzuki K Poulose }; 1363e287cf6SSudeep Holla 13741af6cbfSSuzuki K Poulose out-ports { 13841af6cbfSSuzuki K Poulose port { 13919ac17c0SSudeep Holla etf0_out_port: endpoint { 1403e287cf6SSudeep Holla }; 1413e287cf6SSudeep Holla }; 1423e287cf6SSudeep Holla }; 1433e287cf6SSudeep Holla }; 1443e287cf6SSudeep Holla 145e7676a00SMike Leach tpiu_sys: tpiu@20030000 { 1463e287cf6SSudeep Holla compatible = "arm,coresight-tpiu", "arm,primecell"; 1473e287cf6SSudeep Holla reg = <0 0x20030000 0 0x1000>; 1483e287cf6SSudeep Holla 1493e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 1503e287cf6SSudeep Holla clock-names = "apb_pclk"; 151bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 15241af6cbfSSuzuki K Poulose in-ports { 1533e287cf6SSudeep Holla port { 1543e287cf6SSudeep Holla tpiu_in_port: endpoint { 1553e287cf6SSudeep Holla remote-endpoint = <&replicator_out_port0>; 1563e287cf6SSudeep Holla }; 1573e287cf6SSudeep Holla }; 1583e287cf6SSudeep Holla }; 15941af6cbfSSuzuki K Poulose }; 1603e287cf6SSudeep Holla 16119ac17c0SSudeep Holla /* main funnel on Juno r0, cssys0 funnel on Juno r1/r2 as per TRM*/ 16219ac17c0SSudeep Holla main_funnel: funnel@20040000 { 163f37fdc1dSLeo Yan compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1643e287cf6SSudeep Holla reg = <0 0x20040000 0 0x1000>; 1653e287cf6SSudeep Holla 1663e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 1673e287cf6SSudeep Holla clock-names = "apb_pclk"; 168bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 1693e287cf6SSudeep Holla 17041af6cbfSSuzuki K Poulose out-ports { 17141af6cbfSSuzuki K Poulose port { 1723e287cf6SSudeep Holla main_funnel_out_port: endpoint { 17319ac17c0SSudeep Holla remote-endpoint = <&etf0_in_port>; 1743e287cf6SSudeep Holla }; 1753e287cf6SSudeep Holla }; 17641af6cbfSSuzuki K Poulose }; 1773e287cf6SSudeep Holla 17841af6cbfSSuzuki K Poulose main_funnel_in_ports: in-ports { 17941af6cbfSSuzuki K Poulose #address-cells = <1>; 18041af6cbfSSuzuki K Poulose #size-cells = <0>; 18141af6cbfSSuzuki K Poulose 18241af6cbfSSuzuki K Poulose port@0 { 1833e287cf6SSudeep Holla reg = <0>; 1843e287cf6SSudeep Holla main_funnel_in_port0: endpoint { 1853e287cf6SSudeep Holla remote-endpoint = <&cluster0_funnel_out_port>; 1863e287cf6SSudeep Holla }; 1873e287cf6SSudeep Holla }; 1883e287cf6SSudeep Holla 18941af6cbfSSuzuki K Poulose port@1 { 1903e287cf6SSudeep Holla reg = <1>; 1913e287cf6SSudeep Holla main_funnel_in_port1: endpoint { 1923e287cf6SSudeep Holla remote-endpoint = <&cluster1_funnel_out_port>; 1933e287cf6SSudeep Holla }; 1943e287cf6SSudeep Holla }; 1953e287cf6SSudeep Holla }; 1963e287cf6SSudeep Holla }; 1973e287cf6SSudeep Holla 198e7676a00SMike Leach etr_sys: etr@20070000 { 1993e287cf6SSudeep Holla compatible = "arm,coresight-tmc", "arm,primecell"; 2003e287cf6SSudeep Holla reg = <0 0x20070000 0 0x1000>; 2012ac15068SRobin Murphy iommus = <&smmu_etr 0>; 2023e287cf6SSudeep Holla 2033e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 2043e287cf6SSudeep Holla clock-names = "apb_pclk"; 205bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 20679daf2a4SSuzuki K Poulose arm,scatter-gather; 20741af6cbfSSuzuki K Poulose in-ports { 2083e287cf6SSudeep Holla port { 2093e287cf6SSudeep Holla etr_in_port: endpoint { 2103e287cf6SSudeep Holla remote-endpoint = <&replicator_out_port1>; 2113e287cf6SSudeep Holla }; 2123e287cf6SSudeep Holla }; 2133e287cf6SSudeep Holla }; 21441af6cbfSSuzuki K Poulose }; 2153e287cf6SSudeep Holla 216e7676a00SMike Leach stm_sys: stm@20100000 { 217cde6f9abSMike Leach compatible = "arm,coresight-stm", "arm,primecell"; 218cde6f9abSMike Leach reg = <0 0x20100000 0 0x1000>, 219cde6f9abSMike Leach <0 0x28000000 0 0x1000000>; 220cde6f9abSMike Leach reg-names = "stm-base", "stm-stimulus-base"; 221cde6f9abSMike Leach 222cde6f9abSMike Leach clocks = <&soc_smc50mhz>; 223cde6f9abSMike Leach clock-names = "apb_pclk"; 224cde6f9abSMike Leach power-domains = <&scpi_devpd 0>; 22541af6cbfSSuzuki K Poulose out-ports { 226cde6f9abSMike Leach port { 227cde6f9abSMike Leach stm_out_port: endpoint { 228cde6f9abSMike Leach }; 229cde6f9abSMike Leach }; 230cde6f9abSMike Leach }; 23141af6cbfSSuzuki K Poulose }; 232cde6f9abSMike Leach 23320d00c40SSudeep Holla replicator@20120000 { 23420d00c40SSudeep Holla compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 23520d00c40SSudeep Holla reg = <0 0x20120000 0 0x1000>; 23620d00c40SSudeep Holla 23720d00c40SSudeep Holla clocks = <&soc_smc50mhz>; 23820d00c40SSudeep Holla clock-names = "apb_pclk"; 23920d00c40SSudeep Holla power-domains = <&scpi_devpd 0>; 24020d00c40SSudeep Holla 24120d00c40SSudeep Holla out-ports { 24220d00c40SSudeep Holla #address-cells = <1>; 24320d00c40SSudeep Holla #size-cells = <0>; 24420d00c40SSudeep Holla 24520d00c40SSudeep Holla /* replicator output ports */ 24620d00c40SSudeep Holla port@0 { 24720d00c40SSudeep Holla reg = <0>; 24820d00c40SSudeep Holla replicator_out_port0: endpoint { 24920d00c40SSudeep Holla remote-endpoint = <&tpiu_in_port>; 25020d00c40SSudeep Holla }; 25120d00c40SSudeep Holla }; 25220d00c40SSudeep Holla 25320d00c40SSudeep Holla port@1 { 25420d00c40SSudeep Holla reg = <1>; 25520d00c40SSudeep Holla replicator_out_port1: endpoint { 25620d00c40SSudeep Holla remote-endpoint = <&etr_in_port>; 25720d00c40SSudeep Holla }; 25820d00c40SSudeep Holla }; 25920d00c40SSudeep Holla }; 26020d00c40SSudeep Holla in-ports { 26120d00c40SSudeep Holla port { 26220d00c40SSudeep Holla replicator_in_port0: endpoint { 26320d00c40SSudeep Holla }; 26420d00c40SSudeep Holla }; 26520d00c40SSudeep Holla }; 26620d00c40SSudeep Holla }; 26720d00c40SSudeep Holla 268207b6e6bSSudeep Holla cpu_debug0: cpu-debug@22010000 { 26960f01d7aSSuzuki K Poulose compatible = "arm,coresight-cpu-debug", "arm,primecell"; 27060f01d7aSSuzuki K Poulose reg = <0x0 0x22010000 0x0 0x1000>; 27160f01d7aSSuzuki K Poulose 27260f01d7aSSuzuki K Poulose clocks = <&soc_smc50mhz>; 27360f01d7aSSuzuki K Poulose clock-names = "apb_pclk"; 27460f01d7aSSuzuki K Poulose power-domains = <&scpi_devpd 0>; 27560f01d7aSSuzuki K Poulose }; 27660f01d7aSSuzuki K Poulose 2773e287cf6SSudeep Holla etm0: etm@22040000 { 2783e287cf6SSudeep Holla compatible = "arm,coresight-etm4x", "arm,primecell"; 2793e287cf6SSudeep Holla reg = <0 0x22040000 0 0x1000>; 2803e287cf6SSudeep Holla 2813e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 2823e287cf6SSudeep Holla clock-names = "apb_pclk"; 283bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 28441af6cbfSSuzuki K Poulose out-ports { 2853e287cf6SSudeep Holla port { 2863e287cf6SSudeep Holla cluster0_etm0_out_port: endpoint { 2873e287cf6SSudeep Holla remote-endpoint = <&cluster0_funnel_in_port0>; 2883e287cf6SSudeep Holla }; 2893e287cf6SSudeep Holla }; 2903e287cf6SSudeep Holla }; 29141af6cbfSSuzuki K Poulose }; 2923e287cf6SSudeep Holla 293e7676a00SMike Leach cti0: cti@22020000 { 294e7676a00SMike Leach compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 295e7676a00SMike Leach "arm,primecell"; 296e7676a00SMike Leach reg = <0 0x22020000 0 0x1000>; 297e7676a00SMike Leach 298e7676a00SMike Leach clocks = <&soc_smc50mhz>; 299e7676a00SMike Leach clock-names = "apb_pclk"; 300e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 301e7676a00SMike Leach 302e7676a00SMike Leach arm,cs-dev-assoc = <&etm0>; 303e7676a00SMike Leach }; 304e7676a00SMike Leach 30519ac17c0SSudeep Holla funnel@220c0000 { /* cluster0 funnel */ 306f37fdc1dSLeo Yan compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 3073e287cf6SSudeep Holla reg = <0 0x220c0000 0 0x1000>; 3083e287cf6SSudeep Holla 3093e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 3103e287cf6SSudeep Holla clock-names = "apb_pclk"; 311bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 31241af6cbfSSuzuki K Poulose out-ports { 31341af6cbfSSuzuki K Poulose port { 31441af6cbfSSuzuki K Poulose cluster0_funnel_out_port: endpoint { 31541af6cbfSSuzuki K Poulose remote-endpoint = <&main_funnel_in_port0>; 31641af6cbfSSuzuki K Poulose }; 31741af6cbfSSuzuki K Poulose }; 31841af6cbfSSuzuki K Poulose }; 31941af6cbfSSuzuki K Poulose 32041af6cbfSSuzuki K Poulose in-ports { 3213e287cf6SSudeep Holla #address-cells = <1>; 3223e287cf6SSudeep Holla #size-cells = <0>; 3233e287cf6SSudeep Holla 3243e287cf6SSudeep Holla port@0 { 3253e287cf6SSudeep Holla reg = <0>; 3263e287cf6SSudeep Holla cluster0_funnel_in_port0: endpoint { 3273e287cf6SSudeep Holla remote-endpoint = <&cluster0_etm0_out_port>; 3283e287cf6SSudeep Holla }; 3293e287cf6SSudeep Holla }; 3303e287cf6SSudeep Holla 33141af6cbfSSuzuki K Poulose port@1 { 3323e287cf6SSudeep Holla reg = <1>; 3333e287cf6SSudeep Holla cluster0_funnel_in_port1: endpoint { 3343e287cf6SSudeep Holla remote-endpoint = <&cluster0_etm1_out_port>; 3353e287cf6SSudeep Holla }; 3363e287cf6SSudeep Holla }; 3373e287cf6SSudeep Holla }; 3383e287cf6SSudeep Holla }; 3393e287cf6SSudeep Holla 340207b6e6bSSudeep Holla cpu_debug1: cpu-debug@22110000 { 34160f01d7aSSuzuki K Poulose compatible = "arm,coresight-cpu-debug", "arm,primecell"; 34260f01d7aSSuzuki K Poulose reg = <0x0 0x22110000 0x0 0x1000>; 34360f01d7aSSuzuki K Poulose 34460f01d7aSSuzuki K Poulose clocks = <&soc_smc50mhz>; 34560f01d7aSSuzuki K Poulose clock-names = "apb_pclk"; 34660f01d7aSSuzuki K Poulose power-domains = <&scpi_devpd 0>; 34760f01d7aSSuzuki K Poulose }; 34860f01d7aSSuzuki K Poulose 3493e287cf6SSudeep Holla etm1: etm@22140000 { 3503e287cf6SSudeep Holla compatible = "arm,coresight-etm4x", "arm,primecell"; 3513e287cf6SSudeep Holla reg = <0 0x22140000 0 0x1000>; 3523e287cf6SSudeep Holla 3533e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 3543e287cf6SSudeep Holla clock-names = "apb_pclk"; 355bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 35641af6cbfSSuzuki K Poulose out-ports { 3573e287cf6SSudeep Holla port { 3583e287cf6SSudeep Holla cluster0_etm1_out_port: endpoint { 3593e287cf6SSudeep Holla remote-endpoint = <&cluster0_funnel_in_port1>; 3603e287cf6SSudeep Holla }; 3613e287cf6SSudeep Holla }; 3623e287cf6SSudeep Holla }; 36341af6cbfSSuzuki K Poulose }; 3643e287cf6SSudeep Holla 365e7676a00SMike Leach cti1: cti@22120000 { 366e7676a00SMike Leach compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 367e7676a00SMike Leach "arm,primecell"; 368e7676a00SMike Leach reg = <0 0x22120000 0 0x1000>; 369e7676a00SMike Leach 370e7676a00SMike Leach clocks = <&soc_smc50mhz>; 371e7676a00SMike Leach clock-names = "apb_pclk"; 372e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 373e7676a00SMike Leach 374e7676a00SMike Leach arm,cs-dev-assoc = <&etm1>; 375e7676a00SMike Leach }; 376e7676a00SMike Leach 377207b6e6bSSudeep Holla cpu_debug2: cpu-debug@23010000 { 37860f01d7aSSuzuki K Poulose compatible = "arm,coresight-cpu-debug", "arm,primecell"; 37960f01d7aSSuzuki K Poulose reg = <0x0 0x23010000 0x0 0x1000>; 38060f01d7aSSuzuki K Poulose 38160f01d7aSSuzuki K Poulose clocks = <&soc_smc50mhz>; 38260f01d7aSSuzuki K Poulose clock-names = "apb_pclk"; 38360f01d7aSSuzuki K Poulose power-domains = <&scpi_devpd 0>; 38460f01d7aSSuzuki K Poulose }; 38560f01d7aSSuzuki K Poulose 3863e287cf6SSudeep Holla etm2: etm@23040000 { 3873e287cf6SSudeep Holla compatible = "arm,coresight-etm4x", "arm,primecell"; 3883e287cf6SSudeep Holla reg = <0 0x23040000 0 0x1000>; 3893e287cf6SSudeep Holla 3903e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 3913e287cf6SSudeep Holla clock-names = "apb_pclk"; 392bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 39341af6cbfSSuzuki K Poulose out-ports { 3943e287cf6SSudeep Holla port { 3953e287cf6SSudeep Holla cluster1_etm0_out_port: endpoint { 3963e287cf6SSudeep Holla remote-endpoint = <&cluster1_funnel_in_port0>; 3973e287cf6SSudeep Holla }; 3983e287cf6SSudeep Holla }; 3993e287cf6SSudeep Holla }; 40041af6cbfSSuzuki K Poulose }; 4013e287cf6SSudeep Holla 402e7676a00SMike Leach cti2: cti@23020000 { 403e7676a00SMike Leach compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 404e7676a00SMike Leach "arm,primecell"; 405e7676a00SMike Leach reg = <0 0x23020000 0 0x1000>; 406e7676a00SMike Leach 407e7676a00SMike Leach clocks = <&soc_smc50mhz>; 408e7676a00SMike Leach clock-names = "apb_pclk"; 409e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 410e7676a00SMike Leach 411e7676a00SMike Leach arm,cs-dev-assoc = <&etm2>; 412e7676a00SMike Leach }; 413e7676a00SMike Leach 41419ac17c0SSudeep Holla funnel@230c0000 { /* cluster1 funnel */ 415f37fdc1dSLeo Yan compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 4163e287cf6SSudeep Holla reg = <0 0x230c0000 0 0x1000>; 4173e287cf6SSudeep Holla 4183e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 4193e287cf6SSudeep Holla clock-names = "apb_pclk"; 420bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 42141af6cbfSSuzuki K Poulose out-ports { 42241af6cbfSSuzuki K Poulose port { 42341af6cbfSSuzuki K Poulose cluster1_funnel_out_port: endpoint { 42441af6cbfSSuzuki K Poulose remote-endpoint = <&main_funnel_in_port1>; 42541af6cbfSSuzuki K Poulose }; 42641af6cbfSSuzuki K Poulose }; 42741af6cbfSSuzuki K Poulose }; 42841af6cbfSSuzuki K Poulose 42941af6cbfSSuzuki K Poulose in-ports { 4303e287cf6SSudeep Holla #address-cells = <1>; 4313e287cf6SSudeep Holla #size-cells = <0>; 4323e287cf6SSudeep Holla 4333e287cf6SSudeep Holla port@0 { 4343e287cf6SSudeep Holla reg = <0>; 4353e287cf6SSudeep Holla cluster1_funnel_in_port0: endpoint { 4363e287cf6SSudeep Holla remote-endpoint = <&cluster1_etm0_out_port>; 4373e287cf6SSudeep Holla }; 4383e287cf6SSudeep Holla }; 4393e287cf6SSudeep Holla 44041af6cbfSSuzuki K Poulose port@1 { 4413e287cf6SSudeep Holla reg = <1>; 4423e287cf6SSudeep Holla cluster1_funnel_in_port1: endpoint { 4433e287cf6SSudeep Holla remote-endpoint = <&cluster1_etm1_out_port>; 4443e287cf6SSudeep Holla }; 4453e287cf6SSudeep Holla }; 44641af6cbfSSuzuki K Poulose port@2 { 4473e287cf6SSudeep Holla reg = <2>; 4483e287cf6SSudeep Holla cluster1_funnel_in_port2: endpoint { 4493e287cf6SSudeep Holla remote-endpoint = <&cluster1_etm2_out_port>; 4503e287cf6SSudeep Holla }; 4513e287cf6SSudeep Holla }; 45241af6cbfSSuzuki K Poulose port@3 { 4533e287cf6SSudeep Holla reg = <3>; 4543e287cf6SSudeep Holla cluster1_funnel_in_port3: endpoint { 4553e287cf6SSudeep Holla remote-endpoint = <&cluster1_etm3_out_port>; 4563e287cf6SSudeep Holla }; 4573e287cf6SSudeep Holla }; 4583e287cf6SSudeep Holla }; 4593e287cf6SSudeep Holla }; 4603e287cf6SSudeep Holla 461207b6e6bSSudeep Holla cpu_debug3: cpu-debug@23110000 { 46260f01d7aSSuzuki K Poulose compatible = "arm,coresight-cpu-debug", "arm,primecell"; 46360f01d7aSSuzuki K Poulose reg = <0x0 0x23110000 0x0 0x1000>; 46460f01d7aSSuzuki K Poulose 46560f01d7aSSuzuki K Poulose clocks = <&soc_smc50mhz>; 46660f01d7aSSuzuki K Poulose clock-names = "apb_pclk"; 46760f01d7aSSuzuki K Poulose power-domains = <&scpi_devpd 0>; 46860f01d7aSSuzuki K Poulose }; 46960f01d7aSSuzuki K Poulose 4703e287cf6SSudeep Holla etm3: etm@23140000 { 4713e287cf6SSudeep Holla compatible = "arm,coresight-etm4x", "arm,primecell"; 4723e287cf6SSudeep Holla reg = <0 0x23140000 0 0x1000>; 4733e287cf6SSudeep Holla 4743e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 4753e287cf6SSudeep Holla clock-names = "apb_pclk"; 476bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 47741af6cbfSSuzuki K Poulose out-ports { 4783e287cf6SSudeep Holla port { 4793e287cf6SSudeep Holla cluster1_etm1_out_port: endpoint { 4803e287cf6SSudeep Holla remote-endpoint = <&cluster1_funnel_in_port1>; 4813e287cf6SSudeep Holla }; 4823e287cf6SSudeep Holla }; 4833e287cf6SSudeep Holla }; 48441af6cbfSSuzuki K Poulose }; 4853e287cf6SSudeep Holla 486e7676a00SMike Leach cti3: cti@23120000 { 487e7676a00SMike Leach compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 488e7676a00SMike Leach "arm,primecell"; 489e7676a00SMike Leach reg = <0 0x23120000 0 0x1000>; 490e7676a00SMike Leach 491e7676a00SMike Leach clocks = <&soc_smc50mhz>; 492e7676a00SMike Leach clock-names = "apb_pclk"; 493e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 494e7676a00SMike Leach 495e7676a00SMike Leach arm,cs-dev-assoc = <&etm3>; 496e7676a00SMike Leach }; 497e7676a00SMike Leach 498207b6e6bSSudeep Holla cpu_debug4: cpu-debug@23210000 { 49960f01d7aSSuzuki K Poulose compatible = "arm,coresight-cpu-debug", "arm,primecell"; 50060f01d7aSSuzuki K Poulose reg = <0x0 0x23210000 0x0 0x1000>; 50160f01d7aSSuzuki K Poulose 50260f01d7aSSuzuki K Poulose clocks = <&soc_smc50mhz>; 50360f01d7aSSuzuki K Poulose clock-names = "apb_pclk"; 50460f01d7aSSuzuki K Poulose power-domains = <&scpi_devpd 0>; 50560f01d7aSSuzuki K Poulose }; 50660f01d7aSSuzuki K Poulose 5073e287cf6SSudeep Holla etm4: etm@23240000 { 5083e287cf6SSudeep Holla compatible = "arm,coresight-etm4x", "arm,primecell"; 5093e287cf6SSudeep Holla reg = <0 0x23240000 0 0x1000>; 5103e287cf6SSudeep Holla 5113e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 5123e287cf6SSudeep Holla clock-names = "apb_pclk"; 513bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 51441af6cbfSSuzuki K Poulose out-ports { 5153e287cf6SSudeep Holla port { 5163e287cf6SSudeep Holla cluster1_etm2_out_port: endpoint { 5173e287cf6SSudeep Holla remote-endpoint = <&cluster1_funnel_in_port2>; 5183e287cf6SSudeep Holla }; 5193e287cf6SSudeep Holla }; 5203e287cf6SSudeep Holla }; 52141af6cbfSSuzuki K Poulose }; 5223e287cf6SSudeep Holla 523e7676a00SMike Leach cti4: cti@23220000 { 524e7676a00SMike Leach compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 525e7676a00SMike Leach "arm,primecell"; 526e7676a00SMike Leach reg = <0 0x23220000 0 0x1000>; 527e7676a00SMike Leach 528e7676a00SMike Leach clocks = <&soc_smc50mhz>; 529e7676a00SMike Leach clock-names = "apb_pclk"; 530e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 531e7676a00SMike Leach 532e7676a00SMike Leach arm,cs-dev-assoc = <&etm4>; 533e7676a00SMike Leach }; 534e7676a00SMike Leach 535207b6e6bSSudeep Holla cpu_debug5: cpu-debug@23310000 { 53660f01d7aSSuzuki K Poulose compatible = "arm,coresight-cpu-debug", "arm,primecell"; 53760f01d7aSSuzuki K Poulose reg = <0x0 0x23310000 0x0 0x1000>; 53860f01d7aSSuzuki K Poulose 53960f01d7aSSuzuki K Poulose clocks = <&soc_smc50mhz>; 54060f01d7aSSuzuki K Poulose clock-names = "apb_pclk"; 54160f01d7aSSuzuki K Poulose power-domains = <&scpi_devpd 0>; 54260f01d7aSSuzuki K Poulose }; 54360f01d7aSSuzuki K Poulose 5443e287cf6SSudeep Holla etm5: etm@23340000 { 5453e287cf6SSudeep Holla compatible = "arm,coresight-etm4x", "arm,primecell"; 5463e287cf6SSudeep Holla reg = <0 0x23340000 0 0x1000>; 5473e287cf6SSudeep Holla 5483e287cf6SSudeep Holla clocks = <&soc_smc50mhz>; 5493e287cf6SSudeep Holla clock-names = "apb_pclk"; 550bdeaa21aSSudeep Holla power-domains = <&scpi_devpd 0>; 55141af6cbfSSuzuki K Poulose out-ports { 5523e287cf6SSudeep Holla port { 5533e287cf6SSudeep Holla cluster1_etm3_out_port: endpoint { 5543e287cf6SSudeep Holla remote-endpoint = <&cluster1_funnel_in_port3>; 5553e287cf6SSudeep Holla }; 5563e287cf6SSudeep Holla }; 5573e287cf6SSudeep Holla }; 55841af6cbfSSuzuki K Poulose }; 5593e287cf6SSudeep Holla 560e7676a00SMike Leach cti5: cti@23320000 { 561e7676a00SMike Leach compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti", 562e7676a00SMike Leach "arm,primecell"; 563e7676a00SMike Leach reg = <0 0x23320000 0 0x1000>; 564e7676a00SMike Leach 565e7676a00SMike Leach clocks = <&soc_smc50mhz>; 566e7676a00SMike Leach clock-names = "apb_pclk"; 567e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 568e7676a00SMike Leach 569e7676a00SMike Leach arm,cs-dev-assoc = <&etm5>; 570e7676a00SMike Leach }; 571e7676a00SMike Leach 572e7676a00SMike Leach cti_sys0: cti@20020000 { /* sys_cti_0 */ 573e7676a00SMike Leach compatible = "arm,coresight-cti", "arm,primecell"; 574e7676a00SMike Leach reg = <0 0x20020000 0 0x1000>; 575e7676a00SMike Leach 576e7676a00SMike Leach clocks = <&soc_smc50mhz>; 577e7676a00SMike Leach clock-names = "apb_pclk"; 578e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 579e7676a00SMike Leach 580e7676a00SMike Leach #address-cells = <1>; 581e7676a00SMike Leach #size-cells = <0>; 582e7676a00SMike Leach 583e7676a00SMike Leach trig-conns@0 { 584e7676a00SMike Leach reg = <0>; 585e7676a00SMike Leach arm,trig-in-sigs = <2 3>; 586e7676a00SMike Leach arm,trig-in-types = <SNK_FULL SNK_ACQCOMP>; 587e7676a00SMike Leach arm,trig-out-sigs = <0 1>; 588e7676a00SMike Leach arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>; 589e7676a00SMike Leach arm,cs-dev-assoc = <&etr_sys>; 590e7676a00SMike Leach }; 591e7676a00SMike Leach 592e7676a00SMike Leach trig-conns@1 { 593e7676a00SMike Leach reg = <1>; 594e7676a00SMike Leach arm,trig-in-sigs = <0 1>; 595e7676a00SMike Leach arm,trig-in-types = <SNK_FULL SNK_ACQCOMP>; 596e7676a00SMike Leach arm,trig-out-sigs = <7 6>; 597e7676a00SMike Leach arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>; 598e7676a00SMike Leach arm,cs-dev-assoc = <&etf_sys0>; 599e7676a00SMike Leach }; 600e7676a00SMike Leach 601e7676a00SMike Leach trig-conns@2 { 602e7676a00SMike Leach reg = <2>; 603e7676a00SMike Leach arm,trig-in-sigs = <4 5 6 7>; 604e7676a00SMike Leach arm,trig-in-types = <STM_TOUT_SPTE STM_TOUT_SW 605e7676a00SMike Leach STM_TOUT_HETE STM_ASYNCOUT>; 606e7676a00SMike Leach arm,trig-out-sigs = <4 5>; 607e7676a00SMike Leach arm,trig-out-types = <STM_HWEVENT STM_HWEVENT>; 608e7676a00SMike Leach arm,cs-dev-assoc = <&stm_sys>; 609e7676a00SMike Leach }; 610e7676a00SMike Leach 611e7676a00SMike Leach trig-conns@3 { 612e7676a00SMike Leach reg = <3>; 613e7676a00SMike Leach arm,trig-out-sigs = <2 3>; 614e7676a00SMike Leach arm,trig-out-types = <SNK_FLUSHIN SNK_TRIGIN>; 615e7676a00SMike Leach arm,cs-dev-assoc = <&tpiu_sys>; 616e7676a00SMike Leach }; 617e7676a00SMike Leach }; 618e7676a00SMike Leach 619e7676a00SMike Leach cti_sys1: cti@20110000 { /* sys_cti_1 */ 620e7676a00SMike Leach compatible = "arm,coresight-cti", "arm,primecell"; 621e7676a00SMike Leach reg = <0 0x20110000 0 0x1000>; 622e7676a00SMike Leach 623e7676a00SMike Leach clocks = <&soc_smc50mhz>; 624e7676a00SMike Leach clock-names = "apb_pclk"; 625e7676a00SMike Leach power-domains = <&scpi_devpd 0>; 626e7676a00SMike Leach 627e7676a00SMike Leach #address-cells = <1>; 628e7676a00SMike Leach #size-cells = <0>; 629e7676a00SMike Leach 630e7676a00SMike Leach trig-conns@0 { 631e7676a00SMike Leach reg = <0>; 632e7676a00SMike Leach arm,trig-in-sigs = <0>; 633e7676a00SMike Leach arm,trig-in-types = <GEN_INTREQ>; 634e7676a00SMike Leach arm,trig-out-sigs = <0>; 635e7676a00SMike Leach arm,trig-out-types = <GEN_HALTREQ>; 636e7676a00SMike Leach arm,trig-conn-name = "sys_profiler"; 637e7676a00SMike Leach }; 638e7676a00SMike Leach 639e7676a00SMike Leach trig-conns@1 { 640e7676a00SMike Leach reg = <1>; 641e7676a00SMike Leach arm,trig-out-sigs = <2 3>; 642e7676a00SMike Leach arm,trig-out-types = <GEN_HALTREQ GEN_RESTARTREQ>; 643e7676a00SMike Leach arm,trig-conn-name = "watchdog"; 644e7676a00SMike Leach }; 645e7676a00SMike Leach 646e7676a00SMike Leach trig-conns@2 { 647e7676a00SMike Leach reg = <2>; 648e7676a00SMike Leach arm,trig-out-sigs = <1 6>; 649e7676a00SMike Leach arm,trig-out-types = <GEN_HALTREQ GEN_RESTARTREQ>; 650e7676a00SMike Leach arm,trig-conn-name = "g_counter"; 651e7676a00SMike Leach }; 652e7676a00SMike Leach }; 653e7676a00SMike Leach 654577dd5deSRobin Murphy gpu: gpu@2d000000 { 655577dd5deSRobin Murphy compatible = "arm,juno-mali", "arm,mali-t624"; 656577dd5deSRobin Murphy reg = <0 0x2d000000 0 0x10000>; 65736d48981SAndre Przywara interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 65836d48981SAndre Przywara <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 65936d48981SAndre Przywara <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 66036d48981SAndre Przywara interrupt-names = "job", "mmu", "gpu"; 661577dd5deSRobin Murphy clocks = <&scpi_dvfs 2>; 662577dd5deSRobin Murphy power-domains = <&scpi_devpd 1>; 663577dd5deSRobin Murphy dma-coherent; 664577dd5deSRobin Murphy /* The SMMU is only really of interest to bare-metal hypervisors */ 665577dd5deSRobin Murphy /* iommus = <&smmu_gpu 0>; */ 666577dd5deSRobin Murphy status = "disabled"; 667577dd5deSRobin Murphy }; 668577dd5deSRobin Murphy 669ff9a6262SSudeep Holla sram: sram@2e000000 { 670ff9a6262SSudeep Holla compatible = "arm,juno-sram-ns", "mmio-sram"; 671ff9a6262SSudeep Holla reg = <0x0 0x2e000000 0x0 0x8000>; 672ff9a6262SSudeep Holla 673ff9a6262SSudeep Holla #address-cells = <1>; 674ff9a6262SSudeep Holla #size-cells = <1>; 675ff9a6262SSudeep Holla ranges = <0 0x0 0x2e000000 0x8000>; 676ff9a6262SSudeep Holla 67794cc3f1bSAndre Przywara cpu_scp_lpri: scp-sram@0 { 678ff9a6262SSudeep Holla compatible = "arm,juno-scp-shmem"; 679ff9a6262SSudeep Holla reg = <0x0 0x200>; 680ff9a6262SSudeep Holla }; 681ff9a6262SSudeep Holla 68294cc3f1bSAndre Przywara cpu_scp_hpri: scp-sram@200 { 683ff9a6262SSudeep Holla compatible = "arm,juno-scp-shmem"; 684ff9a6262SSudeep Holla reg = <0x200 0x200>; 685ff9a6262SSudeep Holla }; 686ff9a6262SSudeep Holla }; 687ff9a6262SSudeep Holla 688dc10ef2dSRob Herring pcie_ctlr: pcie@40000000 { 68936582c60SSudeep Holla compatible = "arm,juno-r1-pcie", "plda,xpressrich3-axi", "pci-host-ecam-generic"; 69036582c60SSudeep Holla device_type = "pci"; 69136582c60SSudeep Holla reg = <0 0x40000000 0 0x10000000>; /* ECAM config space */ 69236582c60SSudeep Holla bus-range = <0 255>; 69336582c60SSudeep Holla linux,pci-domain = <0>; 69436582c60SSudeep Holla #address-cells = <3>; 69536582c60SSudeep Holla #size-cells = <2>; 69636582c60SSudeep Holla dma-coherent; 6974c9456dfSJeremy Linton ranges = <0x01000000 0x00 0x00000000 0x00 0x5f800000 0x0 0x00800000>, 69836582c60SSudeep Holla <0x02000000 0x00 0x50000000 0x00 0x50000000 0x0 0x08000000>, 69936582c60SSudeep Holla <0x42000000 0x40 0x00000000 0x40 0x00000000 0x1 0x00000000>; 7004ac4d146SRobin Murphy /* Standard AXI Translation entries as programmed by EDK2 */ 70131eeb6b0SRobin Murphy dma-ranges = <0x02000000 0x0 0x80000000 0x0 0x80000000 0x0 0x80000000>, 7024ac4d146SRobin Murphy <0x43000000 0x8 0x00000000 0x8 0x00000000 0x2 0x00000000>; 70336582c60SSudeep Holla #interrupt-cells = <1>; 70436582c60SSudeep Holla interrupt-map-mask = <0 0 0 7>; 705a78aee9eSAndre Przywara interrupt-map = <0 0 0 1 &gic 0 GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 706a78aee9eSAndre Przywara <0 0 0 2 &gic 0 GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 707a78aee9eSAndre Przywara <0 0 0 3 &gic 0 GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 708a78aee9eSAndre Przywara <0 0 0 4 &gic 0 GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>; 70936582c60SSudeep Holla msi-parent = <&v2m_0>; 71036582c60SSudeep Holla status = "disabled"; 7112ac15068SRobin Murphy iommu-map-mask = <0x0>; /* RC has no means to output PCI RID */ 7122ac15068SRobin Murphy iommu-map = <0x0 &smmu_pcie 0x0 0x1>; 71336582c60SSudeep Holla }; 71436582c60SSudeep Holla 715ff9a6262SSudeep Holla scpi { 716ff9a6262SSudeep Holla compatible = "arm,scpi"; 717ff9a6262SSudeep Holla mboxes = <&mailbox 1>; 718ff9a6262SSudeep Holla shmem = <&cpu_scp_hpri>; 719ff9a6262SSudeep Holla 720ff9a6262SSudeep Holla clocks { 721ff9a6262SSudeep Holla compatible = "arm,scpi-clocks"; 722ff9a6262SSudeep Holla 72370010556SSudeep Holla scpi_dvfs: clocks-0 { 724ff9a6262SSudeep Holla compatible = "arm,scpi-dvfs-clocks"; 725ff9a6262SSudeep Holla #clock-cells = <1>; 726ff9a6262SSudeep Holla clock-indices = <0>, <1>, <2>; 727ff9a6262SSudeep Holla clock-output-names = "atlclk", "aplclk","gpuclk"; 728ff9a6262SSudeep Holla }; 72970010556SSudeep Holla scpi_clk: clocks-1 { 730ff9a6262SSudeep Holla compatible = "arm,scpi-variable-clocks"; 731ff9a6262SSudeep Holla #clock-cells = <1>; 7329fd9288eSLiviu Dudau clock-indices = <3>; 7339fd9288eSLiviu Dudau clock-output-names = "pxlclk"; 734ff9a6262SSudeep Holla }; 735ff9a6262SSudeep Holla }; 736dfacaf0eSPunit Agrawal 73770010556SSudeep Holla scpi_devpd: power-controller { 738bdeaa21aSSudeep Holla compatible = "arm,scpi-power-domains"; 739bdeaa21aSSudeep Holla num-domains = <2>; 740bdeaa21aSSudeep Holla #power-domain-cells = <1>; 741bdeaa21aSSudeep Holla }; 742bdeaa21aSSudeep Holla 743dfacaf0eSPunit Agrawal scpi_sensors0: sensors { 744dfacaf0eSPunit Agrawal compatible = "arm,scpi-sensors"; 745dfacaf0eSPunit Agrawal #thermal-sensor-cells = <1>; 746dfacaf0eSPunit Agrawal }; 747ff9a6262SSudeep Holla }; 748ff9a6262SSudeep Holla 749f7b636a8SJavi Merino thermal-zones { 750f7b636a8SJavi Merino pmic { 751f7b636a8SJavi Merino polling-delay = <1000>; 752f7b636a8SJavi Merino polling-delay-passive = <100>; 753f7b636a8SJavi Merino thermal-sensors = <&scpi_sensors0 0>; 754*c4a7b9b5SCristian Marussi trips { 755*c4a7b9b5SCristian Marussi pmic_crit0: trip0 { 756*c4a7b9b5SCristian Marussi temperature = <90000>; 757*c4a7b9b5SCristian Marussi hysteresis = <2000>; 758*c4a7b9b5SCristian Marussi type = "critical"; 759*c4a7b9b5SCristian Marussi }; 760*c4a7b9b5SCristian Marussi }; 761f7b636a8SJavi Merino }; 762f7b636a8SJavi Merino 763f7b636a8SJavi Merino soc { 764f7b636a8SJavi Merino polling-delay = <1000>; 765f7b636a8SJavi Merino polling-delay-passive = <100>; 766f7b636a8SJavi Merino thermal-sensors = <&scpi_sensors0 3>; 767*c4a7b9b5SCristian Marussi trips { 768*c4a7b9b5SCristian Marussi soc_crit0: trip0 { 769*c4a7b9b5SCristian Marussi temperature = <80000>; 770*c4a7b9b5SCristian Marussi hysteresis = <2000>; 771*c4a7b9b5SCristian Marussi type = "critical"; 772*c4a7b9b5SCristian Marussi }; 773*c4a7b9b5SCristian Marussi }; 774f7b636a8SJavi Merino }; 775f7b636a8SJavi Merino 776506eeeabSSudeep Holla big_cluster_thermal_zone: big-cluster { 777f7b636a8SJavi Merino polling-delay = <1000>; 778f7b636a8SJavi Merino polling-delay-passive = <100>; 779f7b636a8SJavi Merino thermal-sensors = <&scpi_sensors0 21>; 780f7b636a8SJavi Merino status = "disabled"; 781f7b636a8SJavi Merino }; 782f7b636a8SJavi Merino 783506eeeabSSudeep Holla little_cluster_thermal_zone: little-cluster { 784f7b636a8SJavi Merino polling-delay = <1000>; 785f7b636a8SJavi Merino polling-delay-passive = <100>; 786f7b636a8SJavi Merino thermal-sensors = <&scpi_sensors0 22>; 787f7b636a8SJavi Merino status = "disabled"; 788f7b636a8SJavi Merino }; 789f7b636a8SJavi Merino 790f7b636a8SJavi Merino gpu0_thermal_zone: gpu0 { 791f7b636a8SJavi Merino polling-delay = <1000>; 792f7b636a8SJavi Merino polling-delay-passive = <100>; 793f7b636a8SJavi Merino thermal-sensors = <&scpi_sensors0 23>; 794f7b636a8SJavi Merino status = "disabled"; 795f7b636a8SJavi Merino }; 796f7b636a8SJavi Merino 797f7b636a8SJavi Merino gpu1_thermal_zone: gpu1 { 798f7b636a8SJavi Merino polling-delay = <1000>; 799f7b636a8SJavi Merino polling-delay-passive = <100>; 800f7b636a8SJavi Merino thermal-sensors = <&scpi_sensors0 24>; 801f7b636a8SJavi Merino status = "disabled"; 802f7b636a8SJavi Merino }; 803f7b636a8SJavi Merino }; 804f7b636a8SJavi Merino 8052ac15068SRobin Murphy smmu_dma: iommu@7fb00000 { 8062ac15068SRobin Murphy compatible = "arm,mmu-401", "arm,smmu-v1"; 8072ac15068SRobin Murphy reg = <0x0 0x7fb00000 0x0 0x10000>; 8082ac15068SRobin Murphy interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, 8092ac15068SRobin Murphy <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 8102ac15068SRobin Murphy #iommu-cells = <1>; 8112ac15068SRobin Murphy #global-interrupts = <1>; 8122ac15068SRobin Murphy dma-coherent; 8132ac15068SRobin Murphy }; 8142ac15068SRobin Murphy 8152ac15068SRobin Murphy smmu_hdlcd1: iommu@7fb10000 { 8162ac15068SRobin Murphy compatible = "arm,mmu-401", "arm,smmu-v1"; 8172ac15068SRobin Murphy reg = <0x0 0x7fb10000 0x0 0x10000>; 8182ac15068SRobin Murphy interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 8192ac15068SRobin Murphy <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 8202ac15068SRobin Murphy #iommu-cells = <1>; 8212ac15068SRobin Murphy #global-interrupts = <1>; 8222ac15068SRobin Murphy }; 8232ac15068SRobin Murphy 8242ac15068SRobin Murphy smmu_hdlcd0: iommu@7fb20000 { 8252ac15068SRobin Murphy compatible = "arm,mmu-401", "arm,smmu-v1"; 8262ac15068SRobin Murphy reg = <0x0 0x7fb20000 0x0 0x10000>; 8272ac15068SRobin Murphy interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 8282ac15068SRobin Murphy <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 8292ac15068SRobin Murphy #iommu-cells = <1>; 8302ac15068SRobin Murphy #global-interrupts = <1>; 8312ac15068SRobin Murphy }; 8322ac15068SRobin Murphy 8332ac15068SRobin Murphy smmu_usb: iommu@7fb30000 { 8342ac15068SRobin Murphy compatible = "arm,mmu-401", "arm,smmu-v1"; 8352ac15068SRobin Murphy reg = <0x0 0x7fb30000 0x0 0x10000>; 8362ac15068SRobin Murphy interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 8372ac15068SRobin Murphy <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 8382ac15068SRobin Murphy #iommu-cells = <1>; 8392ac15068SRobin Murphy #global-interrupts = <1>; 8402ac15068SRobin Murphy dma-coherent; 8412ac15068SRobin Murphy }; 8422ac15068SRobin Murphy 843e7f127b2SKrzysztof Kozlowski dma-controller@7ff00000 { 844e8020874SLiviu Dudau compatible = "arm,pl330", "arm,primecell"; 845e8020874SLiviu Dudau reg = <0x0 0x7ff00000 0 0x1000>; 846e8020874SLiviu Dudau #dma-cells = <1>; 847e8020874SLiviu Dudau interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, 848e8020874SLiviu Dudau <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 849e8020874SLiviu Dudau <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, 850e8020874SLiviu Dudau <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, 851aeb2ee56SRobin Murphy <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, 852e8020874SLiviu Dudau <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 853e8020874SLiviu Dudau <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 854e8020874SLiviu Dudau <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 855e8020874SLiviu Dudau <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 8562ac15068SRobin Murphy iommus = <&smmu_dma 0>, 8572ac15068SRobin Murphy <&smmu_dma 1>, 8582ac15068SRobin Murphy <&smmu_dma 2>, 8592ac15068SRobin Murphy <&smmu_dma 3>, 8602ac15068SRobin Murphy <&smmu_dma 4>, 8612ac15068SRobin Murphy <&smmu_dma 5>, 8622ac15068SRobin Murphy <&smmu_dma 6>, 8632ac15068SRobin Murphy <&smmu_dma 7>, 8642ac15068SRobin Murphy <&smmu_dma 8>; 865e8020874SLiviu Dudau clocks = <&soc_faxiclk>; 866e8020874SLiviu Dudau clock-names = "apb_pclk"; 867e8020874SLiviu Dudau }; 868e8020874SLiviu Dudau 8699fd9288eSLiviu Dudau hdlcd@7ff50000 { 8709fd9288eSLiviu Dudau compatible = "arm,hdlcd"; 8719fd9288eSLiviu Dudau reg = <0 0x7ff50000 0 0x1000>; 8729fd9288eSLiviu Dudau interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 8732ac15068SRobin Murphy iommus = <&smmu_hdlcd1 0>; 8749fd9288eSLiviu Dudau clocks = <&scpi_clk 3>; 8759fd9288eSLiviu Dudau clock-names = "pxlclk"; 8769fd9288eSLiviu Dudau 8779fd9288eSLiviu Dudau port { 8786449e4c9SRob Herring hdlcd1_output: endpoint { 8799fd9288eSLiviu Dudau remote-endpoint = <&tda998x_1_input>; 8809fd9288eSLiviu Dudau }; 8819fd9288eSLiviu Dudau }; 8829fd9288eSLiviu Dudau }; 8839fd9288eSLiviu Dudau 8849fd9288eSLiviu Dudau hdlcd@7ff60000 { 8859fd9288eSLiviu Dudau compatible = "arm,hdlcd"; 8869fd9288eSLiviu Dudau reg = <0 0x7ff60000 0 0x1000>; 8879fd9288eSLiviu Dudau interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 8882ac15068SRobin Murphy iommus = <&smmu_hdlcd0 0>; 8899fd9288eSLiviu Dudau clocks = <&scpi_clk 3>; 8909fd9288eSLiviu Dudau clock-names = "pxlclk"; 8919fd9288eSLiviu Dudau 8929fd9288eSLiviu Dudau port { 8936449e4c9SRob Herring hdlcd0_output: endpoint { 8949fd9288eSLiviu Dudau remote-endpoint = <&tda998x_0_input>; 8959fd9288eSLiviu Dudau }; 8969fd9288eSLiviu Dudau }; 8979fd9288eSLiviu Dudau }; 8989fd9288eSLiviu Dudau 899608f1b6cSAndre Przywara soc_uart0: serial@7ff80000 { 900e8020874SLiviu Dudau compatible = "arm,pl011", "arm,primecell"; 901e8020874SLiviu Dudau reg = <0x0 0x7ff80000 0x0 0x1000>; 902e8020874SLiviu Dudau interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 903e8020874SLiviu Dudau clocks = <&soc_uartclk>, <&soc_refclk100mhz>; 904e8020874SLiviu Dudau clock-names = "uartclk", "apb_pclk"; 905e8020874SLiviu Dudau }; 906e8020874SLiviu Dudau 907e8020874SLiviu Dudau i2c@7ffa0000 { 908e8020874SLiviu Dudau compatible = "snps,designware-i2c"; 909e8020874SLiviu Dudau reg = <0x0 0x7ffa0000 0x0 0x1000>; 910e8020874SLiviu Dudau #address-cells = <1>; 911e8020874SLiviu Dudau #size-cells = <0>; 912e8020874SLiviu Dudau interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 913e8020874SLiviu Dudau clock-frequency = <400000>; 914e8020874SLiviu Dudau i2c-sda-hold-time-ns = <500>; 915e8020874SLiviu Dudau clocks = <&soc_smc50mhz>; 916e8020874SLiviu Dudau 9179fd9288eSLiviu Dudau hdmi-transmitter@70 { 918e8020874SLiviu Dudau compatible = "nxp,tda998x"; 919e8020874SLiviu Dudau reg = <0x70>; 9209fd9288eSLiviu Dudau port { 9216449e4c9SRob Herring tda998x_0_input: endpoint { 9229fd9288eSLiviu Dudau remote-endpoint = <&hdlcd0_output>; 9239fd9288eSLiviu Dudau }; 9249fd9288eSLiviu Dudau }; 925e8020874SLiviu Dudau }; 926e8020874SLiviu Dudau 9279fd9288eSLiviu Dudau hdmi-transmitter@71 { 928e8020874SLiviu Dudau compatible = "nxp,tda998x"; 929e8020874SLiviu Dudau reg = <0x71>; 9309fd9288eSLiviu Dudau port { 9316449e4c9SRob Herring tda998x_1_input: endpoint { 9329fd9288eSLiviu Dudau remote-endpoint = <&hdlcd1_output>; 9339fd9288eSLiviu Dudau }; 9349fd9288eSLiviu Dudau }; 935e8020874SLiviu Dudau }; 936e8020874SLiviu Dudau }; 937e8020874SLiviu Dudau 938edfac966SAndre Przywara usb@7ffb0000 { 939e8020874SLiviu Dudau compatible = "generic-ohci"; 940e8020874SLiviu Dudau reg = <0x0 0x7ffb0000 0x0 0x10000>; 941e8020874SLiviu Dudau interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 9422ac15068SRobin Murphy iommus = <&smmu_usb 0>; 943e8020874SLiviu Dudau clocks = <&soc_usb48mhz>; 944e8020874SLiviu Dudau }; 945e8020874SLiviu Dudau 946edfac966SAndre Przywara usb@7ffc0000 { 947e8020874SLiviu Dudau compatible = "generic-ehci"; 948e8020874SLiviu Dudau reg = <0x0 0x7ffc0000 0x0 0x10000>; 949e8020874SLiviu Dudau interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 9502ac15068SRobin Murphy iommus = <&smmu_usb 0>; 951e8020874SLiviu Dudau clocks = <&soc_usb48mhz>; 952e8020874SLiviu Dudau }; 953e8020874SLiviu Dudau 954e8020874SLiviu Dudau memory-controller@7ffd0000 { 955e8020874SLiviu Dudau compatible = "arm,pl354", "arm,primecell"; 956e8020874SLiviu Dudau reg = <0 0x7ffd0000 0 0x1000>; 957e8020874SLiviu Dudau interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>, 958e8020874SLiviu Dudau <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 959e8020874SLiviu Dudau clocks = <&soc_smc50mhz>; 960e8020874SLiviu Dudau clock-names = "apb_pclk"; 961e8020874SLiviu Dudau }; 962e8020874SLiviu Dudau 963e8020874SLiviu Dudau memory@80000000 { 964e8020874SLiviu Dudau device_type = "memory"; 965e8020874SLiviu Dudau /* last 16MB of the first memory area is reserved for secure world use by firmware */ 966e8020874SLiviu Dudau reg = <0x00000000 0x80000000 0x0 0x7f000000>, 967e8020874SLiviu Dudau <0x00000008 0x80000000 0x1 0x80000000>; 968e8020874SLiviu Dudau }; 969e8020874SLiviu Dudau 970bee7ff37SLinus Walleij bus@8000000 { 971e8020874SLiviu Dudau #interrupt-cells = <1>; 972e8020874SLiviu Dudau interrupt-map-mask = <0 0 15>; 973a78aee9eSAndre Przywara interrupt-map = <0 0 0 &gic 0 GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 974a78aee9eSAndre Przywara <0 0 1 &gic 0 GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 975a78aee9eSAndre Przywara <0 0 2 &gic 0 GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 976a78aee9eSAndre Przywara <0 0 3 &gic 0 GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 977a78aee9eSAndre Przywara <0 0 4 &gic 0 GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>, 978a78aee9eSAndre Przywara <0 0 5 &gic 0 GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>, 979a78aee9eSAndre Przywara <0 0 6 &gic 0 GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>, 980a78aee9eSAndre Przywara <0 0 7 &gic 0 GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>, 981a78aee9eSAndre Przywara <0 0 8 &gic 0 GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>, 982a78aee9eSAndre Przywara <0 0 9 &gic 0 GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>, 983a78aee9eSAndre Przywara <0 0 10 &gic 0 GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>, 984a78aee9eSAndre Przywara <0 0 11 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>, 985a78aee9eSAndre Przywara <0 0 12 &gic 0 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>; 986e8020874SLiviu Dudau }; 987f5f7e455SBrian Starkey 9889d0a36ddSAndre Przywara site2: tlx-bus@60000000 { 989f5f7e455SBrian Starkey compatible = "simple-bus"; 990f5f7e455SBrian Starkey #address-cells = <1>; 991f5f7e455SBrian Starkey #size-cells = <1>; 992f5f7e455SBrian Starkey ranges = <0 0 0x60000000 0x10000000>; 993f5f7e455SBrian Starkey #interrupt-cells = <1>; 994f5f7e455SBrian Starkey interrupt-map-mask = <0 0>; 995a78aee9eSAndre Przywara interrupt-map = <0 0 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>; 996f5f7e455SBrian Starkey }; 997d29e849cSSudeep Holla}; 998