1*000653b4SAndre Przywara// SPDX-License-Identifier: (GPL-2.0 or BSD-3-Clause) 2*000653b4SAndre Przywara/* 3*000653b4SAndre Przywara * Copyright (c) 2019-2020, Arm Limited. 4*000653b4SAndre Przywara */ 5*000653b4SAndre Przywara 6*000653b4SAndre Przywara#include <dt-bindings/interrupt-controller/arm-gic.h> 7*000653b4SAndre Przywara 8*000653b4SAndre Przywara/ { 9*000653b4SAndre Przywara interrupt-parent = <&gic>; 10*000653b4SAndre Przywara #address-cells = <2>; 11*000653b4SAndre Przywara #size-cells = <2>; 12*000653b4SAndre Przywara 13*000653b4SAndre Przywara cpus { 14*000653b4SAndre Przywara #address-cells = <2>; 15*000653b4SAndre Przywara #size-cells = <0>; 16*000653b4SAndre Przywara 17*000653b4SAndre Przywara cpu0@0 { 18*000653b4SAndre Przywara compatible = "arm,neoverse-n1"; 19*000653b4SAndre Przywara reg = <0x0 0x0>; 20*000653b4SAndre Przywara device_type = "cpu"; 21*000653b4SAndre Przywara enable-method = "psci"; 22*000653b4SAndre Przywara numa-node-id = <0>; 23*000653b4SAndre Przywara }; 24*000653b4SAndre Przywara cpu1@100 { 25*000653b4SAndre Przywara compatible = "arm,neoverse-n1"; 26*000653b4SAndre Przywara reg = <0x0 0x100>; 27*000653b4SAndre Przywara device_type = "cpu"; 28*000653b4SAndre Przywara enable-method = "psci"; 29*000653b4SAndre Przywara numa-node-id = <0>; 30*000653b4SAndre Przywara }; 31*000653b4SAndre Przywara cpu2@10000 { 32*000653b4SAndre Przywara compatible = "arm,neoverse-n1"; 33*000653b4SAndre Przywara reg = <0x0 0x10000>; 34*000653b4SAndre Przywara device_type = "cpu"; 35*000653b4SAndre Przywara enable-method = "psci"; 36*000653b4SAndre Przywara numa-node-id = <0>; 37*000653b4SAndre Przywara }; 38*000653b4SAndre Przywara cpu3@10100 { 39*000653b4SAndre Przywara compatible = "arm,neoverse-n1"; 40*000653b4SAndre Przywara reg = <0x0 0x10100>; 41*000653b4SAndre Przywara device_type = "cpu"; 42*000653b4SAndre Przywara enable-method = "psci"; 43*000653b4SAndre Przywara numa-node-id = <0>; 44*000653b4SAndre Przywara }; 45*000653b4SAndre Przywara }; 46*000653b4SAndre Przywara 47*000653b4SAndre Przywara pmu { 48*000653b4SAndre Przywara compatible = "arm,armv8-pmuv3"; 49*000653b4SAndre Przywara interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; 50*000653b4SAndre Przywara }; 51*000653b4SAndre Przywara 52*000653b4SAndre Przywara spe-pmu { 53*000653b4SAndre Przywara compatible = "arm,statistical-profiling-extension-v1"; 54*000653b4SAndre Przywara interrupts = <GIC_PPI 5 IRQ_TYPE_LEVEL_HIGH>; 55*000653b4SAndre Przywara }; 56*000653b4SAndre Przywara 57*000653b4SAndre Przywara psci { 58*000653b4SAndre Przywara compatible = "arm,psci-0.2"; 59*000653b4SAndre Przywara method = "smc"; 60*000653b4SAndre Przywara }; 61*000653b4SAndre Przywara 62*000653b4SAndre Przywara timer { 63*000653b4SAndre Przywara compatible = "arm,armv8-timer"; 64*000653b4SAndre Przywara interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, 65*000653b4SAndre Przywara <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, 66*000653b4SAndre Przywara <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, 67*000653b4SAndre Przywara <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; 68*000653b4SAndre Przywara }; 69*000653b4SAndre Przywara 70*000653b4SAndre Przywara soc_refclk100mhz: refclk100mhz { 71*000653b4SAndre Przywara compatible = "fixed-clock"; 72*000653b4SAndre Przywara #clock-cells = <0>; 73*000653b4SAndre Przywara clock-frequency = <100000000>; 74*000653b4SAndre Przywara clock-output-names = "apb_pclk"; 75*000653b4SAndre Przywara }; 76*000653b4SAndre Przywara 77*000653b4SAndre Przywara soc_uartclk: uartclk { 78*000653b4SAndre Przywara compatible = "fixed-clock"; 79*000653b4SAndre Przywara #clock-cells = <0>; 80*000653b4SAndre Przywara clock-frequency = <50000000>; 81*000653b4SAndre Przywara clock-output-names = "uartclk"; 82*000653b4SAndre Przywara }; 83*000653b4SAndre Przywara 84*000653b4SAndre Przywara soc { 85*000653b4SAndre Przywara compatible = "arm,neoverse-n1-soc", "simple-bus"; 86*000653b4SAndre Przywara #address-cells = <2>; 87*000653b4SAndre Przywara #size-cells = <2>; 88*000653b4SAndre Przywara ranges; 89*000653b4SAndre Przywara 90*000653b4SAndre Przywara gic: interrupt-controller@30000000 { 91*000653b4SAndre Przywara compatible = "arm,gic-v3"; 92*000653b4SAndre Przywara #address-cells = <2>; 93*000653b4SAndre Przywara #interrupt-cells = <3>; 94*000653b4SAndre Przywara #size-cells = <2>; 95*000653b4SAndre Przywara ranges; 96*000653b4SAndre Przywara interrupt-controller; 97*000653b4SAndre Przywara reg = <0x0 0x30000000 0 0x10000>, /* GICD */ 98*000653b4SAndre Przywara <0x0 0x300c0000 0 0x80000>; /* GICR */ 99*000653b4SAndre Przywara 100*000653b4SAndre Przywara interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 101*000653b4SAndre Przywara 102*000653b4SAndre Przywara its1: its@30040000 { 103*000653b4SAndre Przywara compatible = "arm,gic-v3-its"; 104*000653b4SAndre Przywara msi-controller; 105*000653b4SAndre Przywara #msi-cells = <1>; 106*000653b4SAndre Przywara reg = <0x0 0x30040000 0x0 0x20000>; 107*000653b4SAndre Przywara }; 108*000653b4SAndre Przywara 109*000653b4SAndre Przywara its2: its@30060000 { 110*000653b4SAndre Przywara compatible = "arm,gic-v3-its"; 111*000653b4SAndre Przywara msi-controller; 112*000653b4SAndre Przywara #msi-cells = <1>; 113*000653b4SAndre Przywara reg = <0x0 0x30060000 0x0 0x20000>; 114*000653b4SAndre Przywara }; 115*000653b4SAndre Przywara 116*000653b4SAndre Przywara its_ccix: its@30080000 { 117*000653b4SAndre Przywara compatible = "arm,gic-v3-its"; 118*000653b4SAndre Przywara msi-controller; 119*000653b4SAndre Przywara #msi-cells = <1>; 120*000653b4SAndre Przywara reg = <0x0 0x30080000 0x0 0x20000>; 121*000653b4SAndre Przywara }; 122*000653b4SAndre Przywara 123*000653b4SAndre Przywara its_pcie: its@300a0000 { 124*000653b4SAndre Przywara compatible = "arm,gic-v3-its"; 125*000653b4SAndre Przywara msi-controller; 126*000653b4SAndre Przywara #msi-cells = <1>; 127*000653b4SAndre Przywara reg = <0x0 0x300a0000 0x0 0x20000>; 128*000653b4SAndre Przywara }; 129*000653b4SAndre Przywara }; 130*000653b4SAndre Przywara 131*000653b4SAndre Przywara smmu_ccix: iommu@4f000000 { 132*000653b4SAndre Przywara compatible = "arm,smmu-v3"; 133*000653b4SAndre Przywara reg = <0 0x4f000000 0 0x40000>; 134*000653b4SAndre Przywara interrupts = <GIC_SPI 228 IRQ_TYPE_EDGE_RISING>, 135*000653b4SAndre Przywara <GIC_SPI 229 IRQ_TYPE_EDGE_RISING>, 136*000653b4SAndre Przywara <GIC_SPI 230 IRQ_TYPE_EDGE_RISING>; 137*000653b4SAndre Przywara interrupt-names = "eventq", "cmdq-sync", "gerror"; 138*000653b4SAndre Przywara msi-parent = <&its1 0>; 139*000653b4SAndre Przywara #iommu-cells = <1>; 140*000653b4SAndre Przywara dma-coherent; 141*000653b4SAndre Przywara }; 142*000653b4SAndre Przywara 143*000653b4SAndre Przywara smmu_pcie: iommu@4f400000 { 144*000653b4SAndre Przywara compatible = "arm,smmu-v3"; 145*000653b4SAndre Przywara reg = <0 0x4f400000 0 0x40000>; 146*000653b4SAndre Przywara interrupts = <GIC_SPI 235 IRQ_TYPE_EDGE_RISING>, 147*000653b4SAndre Przywara <GIC_SPI 236 IRQ_TYPE_EDGE_RISING>, 148*000653b4SAndre Przywara <GIC_SPI 237 IRQ_TYPE_EDGE_RISING>; 149*000653b4SAndre Przywara interrupt-names = "eventq", "cmdq-sync", "gerror"; 150*000653b4SAndre Przywara msi-parent = <&its2 0>; 151*000653b4SAndre Przywara #iommu-cells = <1>; 152*000653b4SAndre Przywara dma-coherent; 153*000653b4SAndre Przywara }; 154*000653b4SAndre Przywara 155*000653b4SAndre Przywara pcie_ctlr: pcie@70000000 { 156*000653b4SAndre Przywara compatible = "arm,n1sdp-pcie"; 157*000653b4SAndre Przywara device_type = "pci"; 158*000653b4SAndre Przywara reg = <0 0x70000000 0 0x1200000>; 159*000653b4SAndre Przywara bus-range = <0 17>; 160*000653b4SAndre Przywara linux,pci-domain = <0>; 161*000653b4SAndre Przywara #address-cells = <3>; 162*000653b4SAndre Przywara #size-cells = <2>; 163*000653b4SAndre Przywara dma-coherent; 164*000653b4SAndre Przywara ranges = <0x01000000 0x00 0x00000000 0x00 0x75200000 0x00 0x00010000>, 165*000653b4SAndre Przywara <0x02000000 0x00 0x71200000 0x00 0x71200000 0x00 0x04000000>, 166*000653b4SAndre Przywara <0x42000000 0x09 0x00000000 0x09 0x00000000 0x20 0x00000000>; 167*000653b4SAndre Przywara #interrupt-cells = <1>; 168*000653b4SAndre Przywara interrupt-map-mask = <0 0 0 7>; 169*000653b4SAndre Przywara interrupt-map = <0 0 0 1 &gic 0 0 0 169 IRQ_TYPE_LEVEL_HIGH>, 170*000653b4SAndre Przywara <0 0 0 2 &gic 0 0 0 170 IRQ_TYPE_LEVEL_HIGH>, 171*000653b4SAndre Przywara <0 0 0 3 &gic 0 0 0 171 IRQ_TYPE_LEVEL_HIGH>, 172*000653b4SAndre Przywara <0 0 0 4 &gic 0 0 0 172 IRQ_TYPE_LEVEL_HIGH>; 173*000653b4SAndre Przywara msi-map = <0 &its_pcie 0 0x10000>; 174*000653b4SAndre Przywara iommu-map = <0 &smmu_pcie 0 0x10000>; 175*000653b4SAndre Przywara status = "disabled"; 176*000653b4SAndre Przywara }; 177*000653b4SAndre Przywara 178*000653b4SAndre Przywara ccix_pcie_ctlr: pcie@68000000 { 179*000653b4SAndre Przywara compatible = "arm,n1sdp-pcie"; 180*000653b4SAndre Przywara device_type = "pci"; 181*000653b4SAndre Przywara reg = <0 0x68000000 0 0x1200000>; 182*000653b4SAndre Przywara bus-range = <0 17>; 183*000653b4SAndre Przywara linux,pci-domain = <1>; 184*000653b4SAndre Przywara #address-cells = <3>; 185*000653b4SAndre Przywara #size-cells = <2>; 186*000653b4SAndre Przywara dma-coherent; 187*000653b4SAndre Przywara ranges = <0x01000000 0x00 0x00000000 0x00 0x6d200000 0x00 0x00010000>, 188*000653b4SAndre Przywara <0x02000000 0x00 0x69200000 0x00 0x69200000 0x00 0x04000000>, 189*000653b4SAndre Przywara <0x42000000 0x29 0x00000000 0x29 0x00000000 0x20 0x00000000>; 190*000653b4SAndre Przywara #interrupt-cells = <1>; 191*000653b4SAndre Przywara interrupt-map-mask = <0 0 0 7>; 192*000653b4SAndre Przywara interrupt-map = <0 0 0 1 &gic 0 0 0 201 IRQ_TYPE_LEVEL_HIGH>, 193*000653b4SAndre Przywara <0 0 0 2 &gic 0 0 0 202 IRQ_TYPE_LEVEL_HIGH>, 194*000653b4SAndre Przywara <0 0 0 3 &gic 0 0 0 203 IRQ_TYPE_LEVEL_HIGH>, 195*000653b4SAndre Przywara <0 0 0 4 &gic 0 0 0 204 IRQ_TYPE_LEVEL_HIGH>; 196*000653b4SAndre Przywara msi-map = <0 &its_ccix 0 0x10000>; 197*000653b4SAndre Przywara iommu-map = <0 &smmu_ccix 0 0x10000>; 198*000653b4SAndre Przywara status = "disabled"; 199*000653b4SAndre Przywara }; 200*000653b4SAndre Przywara 201*000653b4SAndre Przywara soc_uart0: serial@2a400000 { 202*000653b4SAndre Przywara compatible = "arm,pl011", "arm,primecell"; 203*000653b4SAndre Przywara reg = <0x0 0x2a400000 0x0 0x1000>; 204*000653b4SAndre Przywara interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 205*000653b4SAndre Przywara clocks = <&soc_uartclk>, <&soc_refclk100mhz>; 206*000653b4SAndre Przywara clock-names = "uartclk", "apb_pclk"; 207*000653b4SAndre Przywara status = "disabled"; 208*000653b4SAndre Przywara }; 209*000653b4SAndre Przywara }; 210*000653b4SAndre Przywara}; 211