xref: /rk3399_ARM-atf/fdts/n1sdp-multi-chip.dts (revision 35d626bb2710103951b05f82dfb02ad49e3e22a4)
1000653b4SAndre Przywara// SPDX-License-Identifier: (GPL-2.0 or BSD-3-Clause)
2000653b4SAndre Przywara/*
3000653b4SAndre Przywara * Copyright (c) 2019-2020, Arm Limited.
4000653b4SAndre Przywara */
5000653b4SAndre Przywara
6000653b4SAndre Przywara#include "n1sdp-single-chip.dts"
7000653b4SAndre Przywara
8000653b4SAndre Przywara/ {
9000653b4SAndre Przywara	cpus {
10000653b4SAndre Przywara		cpu4@100000000 {
11000653b4SAndre Przywara			compatible = "arm,neoverse-n1";
12000653b4SAndre Przywara			reg = <0x1 0x0>;
13000653b4SAndre Przywara			device_type = "cpu";
14000653b4SAndre Przywara			enable-method = "psci";
15000653b4SAndre Przywara			numa-node-id = <1>;
16000653b4SAndre Przywara		};
17000653b4SAndre Przywara		cpu5@100000100 {
18000653b4SAndre Przywara			compatible = "arm,neoverse-n1";
19000653b4SAndre Przywara			reg = <0x1 0x00000100>;
20000653b4SAndre Przywara			device_type = "cpu";
21000653b4SAndre Przywara			enable-method = "psci";
22000653b4SAndre Przywara			numa-node-id = <1>;
23000653b4SAndre Przywara		};
24000653b4SAndre Przywara		cpu6@100010000 {
25000653b4SAndre Przywara			compatible = "arm,neoverse-n1";
26000653b4SAndre Przywara			reg = <0x1 0x00010000>;
27000653b4SAndre Przywara			device_type = "cpu";
28000653b4SAndre Przywara			enable-method = "psci";
29000653b4SAndre Przywara			numa-node-id = <1>;
30000653b4SAndre Przywara		};
31000653b4SAndre Przywara		cpu7@100010100 {
32000653b4SAndre Przywara			compatible = "arm,neoverse-n1";
33000653b4SAndre Przywara			reg = <0x1 0x00010100>;
34000653b4SAndre Przywara			device_type = "cpu";
35000653b4SAndre Przywara			enable-method = "psci";
36000653b4SAndre Przywara			numa-node-id = <1>;
37000653b4SAndre Przywara		};
38000653b4SAndre Przywara	};
39000653b4SAndre Przywara
40000653b4SAndre Przywara	/* Remote N1SDP board address is mapped at offset 4TB.
41000653b4SAndre Przywara	 * First DRAM Bank of remote N1SDP board is mapped at 4TB + 2GB.
42000653b4SAndre Przywara	 */
43000653b4SAndre Przywara	memory@40080000000 {
44000653b4SAndre Przywara		device_type = "memory";
45000653b4SAndre Przywara		reg = <0x00000400 0x80000000 0x0 0x80000000>,
46000653b4SAndre Przywara			<0x00000480 0x80000000 0x3 0x80000000>;
47000653b4SAndre Przywara		numa-node-id = <1>;
48000653b4SAndre Przywara	};
49000653b4SAndre Przywara
50000653b4SAndre Przywara	distance-map {
51000653b4SAndre Przywara		compatible = "numa-distance-map-v1";
52000653b4SAndre Przywara		distance-matrix =   <0 0 10>,
53000653b4SAndre Przywara				    <0 1 20>,
54000653b4SAndre Przywara				    <1 1 10>;
55000653b4SAndre Przywara	};
56*35d626bbSSayanta Pattanayak
57*35d626bbSSayanta Pattanayak	smmu_slave_pcie: iommu@4004f400000 {
58*35d626bbSSayanta Pattanayak		compatible = "arm,smmu-v3";
59*35d626bbSSayanta Pattanayak		reg = <0x400 0x4f400000 0 0x40000>;
60*35d626bbSSayanta Pattanayak		interrupts = <GIC_SPI 715 IRQ_TYPE_EDGE_RISING>,
61*35d626bbSSayanta Pattanayak				<GIC_SPI 716 IRQ_TYPE_EDGE_RISING>,
62*35d626bbSSayanta Pattanayak				<GIC_SPI 717 IRQ_TYPE_EDGE_RISING>;
63*35d626bbSSayanta Pattanayak		interrupt-names = "eventq", "cmdq-sync", "gerror";
64*35d626bbSSayanta Pattanayak		msi-parent = <&its2_slave 0>;
65*35d626bbSSayanta Pattanayak		#iommu-cells = <1>;
66*35d626bbSSayanta Pattanayak		dma-coherent;
67*35d626bbSSayanta Pattanayak	};
68*35d626bbSSayanta Pattanayak
69*35d626bbSSayanta Pattanayak	pcie_slave_ctlr: pcie@40070000000 {
70*35d626bbSSayanta Pattanayak		compatible = "arm,n1sdp-pcie";
71*35d626bbSSayanta Pattanayak		device_type = "pci";
72*35d626bbSSayanta Pattanayak		reg = <0x400 0x70000000 0 0x1200000>;
73*35d626bbSSayanta Pattanayak		bus-range = <0 0xff>;
74*35d626bbSSayanta Pattanayak		linux,pci-domain = <2>;
75*35d626bbSSayanta Pattanayak		#address-cells = <3>;
76*35d626bbSSayanta Pattanayak		#size-cells = <2>;
77*35d626bbSSayanta Pattanayak		dma-coherent;
78*35d626bbSSayanta Pattanayak		ranges = <0x01000000 0x00 0x00000000 0x400 0x75200000 0x00 0x00010000>,
79*35d626bbSSayanta Pattanayak			 <0x02000000 0x00 0x71200000 0x400 0x71200000 0x00 0x04000000>,
80*35d626bbSSayanta Pattanayak			 <0x42000000 0x09 0x00000000 0x409 0x00000000 0x20 0x00000000>;
81*35d626bbSSayanta Pattanayak		#interrupt-cells = <1>;
82*35d626bbSSayanta Pattanayak		interrupt-map-mask = <0 0 0 7>;
83*35d626bbSSayanta Pattanayak		interrupt-map = <0 0 0 1 &gic 0 0 0 649 IRQ_TYPE_LEVEL_HIGH>,
84*35d626bbSSayanta Pattanayak				<0 0 0 2 &gic 0 0 0 650 IRQ_TYPE_LEVEL_HIGH>,
85*35d626bbSSayanta Pattanayak				<0 0 0 3 &gic 0 0 0 651 IRQ_TYPE_LEVEL_HIGH>,
86*35d626bbSSayanta Pattanayak				<0 0 0 4 &gic 0 0 0 652 IRQ_TYPE_LEVEL_HIGH>;
87*35d626bbSSayanta Pattanayak		msi-map = <0 &its_slave_pcie 0 0x10000>;
88*35d626bbSSayanta Pattanayak		iommu-map = <0 &smmu_slave_pcie 0 0x10000>;
89*35d626bbSSayanta Pattanayak		status = "okay";
90*35d626bbSSayanta Pattanayak	};
91*35d626bbSSayanta Pattanayak
92000653b4SAndre Przywara};
93000653b4SAndre Przywara
94000653b4SAndre Przywara&gic {
95000653b4SAndre Przywara	#redistributor-regions = <2>;
96000653b4SAndre Przywara	reg =   <0x0 0x30000000 0 0x10000>,	/* GICD */
97000653b4SAndre Przywara		<0x0 0x300c0000 0 0x80000>,	/* GICR */
98000653b4SAndre Przywara		<0x400 0x300c0000 0 0x80000>;	/* GICR */
99*35d626bbSSayanta Pattanayak
100*35d626bbSSayanta Pattanayak	its2_slave: its@40030060000 {
101*35d626bbSSayanta Pattanayak		compatible = "arm,gic-v3-its";
102*35d626bbSSayanta Pattanayak		msi-controller;
103*35d626bbSSayanta Pattanayak		#msi-cells = <1>;
104*35d626bbSSayanta Pattanayak		reg = <0x400 0x30060000 0x0 0x20000>;
105*35d626bbSSayanta Pattanayak	};
106*35d626bbSSayanta Pattanayak
107*35d626bbSSayanta Pattanayak	its_slave_pcie: its@400300a0000 {
108*35d626bbSSayanta Pattanayak		compatible = "arm,gic-v3-its";
109*35d626bbSSayanta Pattanayak		msi-controller;
110*35d626bbSSayanta Pattanayak		#msi-cells = <1>;
111*35d626bbSSayanta Pattanayak		reg = <0x400 0x300a0000 0x0 0x20000>;
112*35d626bbSSayanta Pattanayak	};
113000653b4SAndre Przywara};
114