10b798427SLi Pengcheng/*
20b798427SLi Pengcheng * dtsi file for Hisilicon Hi6220 coresight
30b798427SLi Pengcheng *
40b798427SLi Pengcheng * Copyright (C) 2017 Hisilicon Ltd.
50b798427SLi Pengcheng *
60b798427SLi Pengcheng * Author: Pengcheng Li <lipengcheng8@huawei.com>
70b798427SLi Pengcheng *         Leo Yan <leo.yan@linaro.org>
80b798427SLi Pengcheng *
90b798427SLi Pengcheng * This program is free software; you can redistribute it and/or modify
100b798427SLi Pengcheng * it under the terms of the GNU General Public License version 2 as
110b798427SLi Pengcheng * publishhed by the Free Software Foundation.
120b798427SLi Pengcheng *
130b798427SLi Pengcheng */
140b798427SLi Pengcheng
150b798427SLi Pengcheng/ {
160b798427SLi Pengcheng	soc {
170b798427SLi Pengcheng		funnel@f6401000 {
18b6f7cd7fSLeo Yan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
190b798427SLi Pengcheng			reg = <0 0xf6401000 0 0x1000>;
200b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
210b798427SLi Pengcheng			clock-names = "apb_pclk";
220b798427SLi Pengcheng
23e917b943SSuzuki K Poulose			out-ports {
24e917b943SSuzuki K Poulose				port {
250b798427SLi Pengcheng					soc_funnel_out: endpoint {
260b798427SLi Pengcheng						remote-endpoint =
270b798427SLi Pengcheng							<&etf_in>;
280b798427SLi Pengcheng					};
290b798427SLi Pengcheng				};
30e917b943SSuzuki K Poulose			};
310b798427SLi Pengcheng
32e917b943SSuzuki K Poulose			in-ports {
33e917b943SSuzuki K Poulose				port {
340b798427SLi Pengcheng					soc_funnel_in: endpoint {
350b798427SLi Pengcheng						remote-endpoint =
360b798427SLi Pengcheng							<&acpu_funnel_out>;
370b798427SLi Pengcheng					};
380b798427SLi Pengcheng				};
390b798427SLi Pengcheng			};
400b798427SLi Pengcheng		};
410b798427SLi Pengcheng
420b798427SLi Pengcheng		etf@f6402000 {
430b798427SLi Pengcheng			compatible = "arm,coresight-tmc", "arm,primecell";
440b798427SLi Pengcheng			reg = <0 0xf6402000 0 0x1000>;
450b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
460b798427SLi Pengcheng			clock-names = "apb_pclk";
470b798427SLi Pengcheng
48e917b943SSuzuki K Poulose			in-ports {
49e917b943SSuzuki K Poulose				port {
500b798427SLi Pengcheng					etf_in: endpoint {
510b798427SLi Pengcheng						remote-endpoint =
520b798427SLi Pengcheng							<&soc_funnel_out>;
530b798427SLi Pengcheng					};
540b798427SLi Pengcheng				};
55e917b943SSuzuki K Poulose			};
560b798427SLi Pengcheng
57e917b943SSuzuki K Poulose			out-ports {
58e917b943SSuzuki K Poulose				port {
590b798427SLi Pengcheng					etf_out: endpoint {
600b798427SLi Pengcheng						remote-endpoint =
610b798427SLi Pengcheng							<&replicator_in>;
620b798427SLi Pengcheng					};
630b798427SLi Pengcheng				};
640b798427SLi Pengcheng			};
650b798427SLi Pengcheng		};
660b798427SLi Pengcheng
670b798427SLi Pengcheng		replicator {
68b6f7cd7fSLeo Yan			compatible = "arm,coresight-static-replicator";
690b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
700b798427SLi Pengcheng			clock-names = "apb_pclk";
710b798427SLi Pengcheng
72e917b943SSuzuki K Poulose			in-ports {
73e917b943SSuzuki K Poulose				port {
740b798427SLi Pengcheng					replicator_in: endpoint {
750b798427SLi Pengcheng						remote-endpoint =
760b798427SLi Pengcheng							<&etf_out>;
770b798427SLi Pengcheng					};
780b798427SLi Pengcheng				};
79e917b943SSuzuki K Poulose			};
800b798427SLi Pengcheng
81e917b943SSuzuki K Poulose			out-ports {
82e917b943SSuzuki K Poulose				#address-cells = <1>;
83e917b943SSuzuki K Poulose				#size-cells = <0>;
84e917b943SSuzuki K Poulose
85e917b943SSuzuki K Poulose				port@0 {
860b798427SLi Pengcheng					reg = <0>;
870b798427SLi Pengcheng					replicator_out0: endpoint {
880b798427SLi Pengcheng						remote-endpoint =
890b798427SLi Pengcheng							<&etr_in>;
900b798427SLi Pengcheng					};
910b798427SLi Pengcheng				};
920b798427SLi Pengcheng
93e917b943SSuzuki K Poulose				port@1 {
940b798427SLi Pengcheng					reg = <1>;
950b798427SLi Pengcheng					replicator_out1: endpoint {
960b798427SLi Pengcheng						remote-endpoint =
970b798427SLi Pengcheng							<&tpiu_in>;
980b798427SLi Pengcheng					};
990b798427SLi Pengcheng				};
1000b798427SLi Pengcheng			};
1010b798427SLi Pengcheng		};
1020b798427SLi Pengcheng
1030b798427SLi Pengcheng		etr@f6404000 {
1040b798427SLi Pengcheng			compatible = "arm,coresight-tmc", "arm,primecell";
1050b798427SLi Pengcheng			reg = <0 0xf6404000 0 0x1000>;
1060b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
1070b798427SLi Pengcheng			clock-names = "apb_pclk";
1080b798427SLi Pengcheng
109e917b943SSuzuki K Poulose			in-ports {
110e917b943SSuzuki K Poulose				port {
1110b798427SLi Pengcheng					etr_in: endpoint {
1120b798427SLi Pengcheng						remote-endpoint =
1130b798427SLi Pengcheng							<&replicator_out0>;
1140b798427SLi Pengcheng					};
1150b798427SLi Pengcheng				};
1160b798427SLi Pengcheng			};
1170b798427SLi Pengcheng		};
1180b798427SLi Pengcheng
1190b798427SLi Pengcheng		tpiu@f6405000 {
1200b798427SLi Pengcheng			compatible = "arm,coresight-tpiu", "arm,primecell";
1210b798427SLi Pengcheng			reg = <0 0xf6405000 0 0x1000>;
1220b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
1230b798427SLi Pengcheng			clock-names = "apb_pclk";
1240b798427SLi Pengcheng
125e917b943SSuzuki K Poulose			in-ports {
126e917b943SSuzuki K Poulose				port {
1270b798427SLi Pengcheng					tpiu_in: endpoint {
1280b798427SLi Pengcheng						remote-endpoint =
1290b798427SLi Pengcheng							<&replicator_out1>;
1300b798427SLi Pengcheng					};
1310b798427SLi Pengcheng				};
1320b798427SLi Pengcheng			};
1330b798427SLi Pengcheng		};
1340b798427SLi Pengcheng
1350b798427SLi Pengcheng		funnel@f6501000 {
136b6f7cd7fSLeo Yan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1370b798427SLi Pengcheng			reg = <0 0xf6501000 0 0x1000>;
1380b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
1390b798427SLi Pengcheng			clock-names = "apb_pclk";
1400b798427SLi Pengcheng
141e917b943SSuzuki K Poulose			out-ports {
142e917b943SSuzuki K Poulose				port {
1430b798427SLi Pengcheng					acpu_funnel_out: endpoint {
1440b798427SLi Pengcheng						remote-endpoint =
1450b798427SLi Pengcheng							<&soc_funnel_in>;
1460b798427SLi Pengcheng					};
1470b798427SLi Pengcheng				};
148e917b943SSuzuki K Poulose			};
1490b798427SLi Pengcheng
150e917b943SSuzuki K Poulose			in-ports {
151e917b943SSuzuki K Poulose				#address-cells = <1>;
152e917b943SSuzuki K Poulose				#size-cells = <0>;
153e917b943SSuzuki K Poulose
154e917b943SSuzuki K Poulose				port@0 {
1550b798427SLi Pengcheng					reg = <0>;
1560b798427SLi Pengcheng					acpu_funnel_in0: endpoint {
1570b798427SLi Pengcheng						remote-endpoint =
1580b798427SLi Pengcheng							<&etm0_out>;
1590b798427SLi Pengcheng					};
1600b798427SLi Pengcheng				};
1610b798427SLi Pengcheng
162e917b943SSuzuki K Poulose				port@1 {
1630b798427SLi Pengcheng					reg = <1>;
1640b798427SLi Pengcheng					acpu_funnel_in1: endpoint {
1650b798427SLi Pengcheng						remote-endpoint =
1660b798427SLi Pengcheng							<&etm1_out>;
1670b798427SLi Pengcheng					};
1680b798427SLi Pengcheng				};
1690b798427SLi Pengcheng
170e917b943SSuzuki K Poulose				port@2 {
1710b798427SLi Pengcheng					reg = <2>;
1720b798427SLi Pengcheng					acpu_funnel_in2: endpoint {
1730b798427SLi Pengcheng						remote-endpoint =
1740b798427SLi Pengcheng							<&etm2_out>;
1750b798427SLi Pengcheng					};
1760b798427SLi Pengcheng				};
1770b798427SLi Pengcheng
178e917b943SSuzuki K Poulose				port@3 {
1790b798427SLi Pengcheng					reg = <3>;
1800b798427SLi Pengcheng					acpu_funnel_in3: endpoint {
1810b798427SLi Pengcheng						remote-endpoint =
1820b798427SLi Pengcheng							<&etm3_out>;
1830b798427SLi Pengcheng					};
1840b798427SLi Pengcheng				};
1850b798427SLi Pengcheng
186e917b943SSuzuki K Poulose				port@4 {
1870b798427SLi Pengcheng					reg = <4>;
1880b798427SLi Pengcheng					acpu_funnel_in4: endpoint {
1890b798427SLi Pengcheng						remote-endpoint =
1900b798427SLi Pengcheng							<&etm4_out>;
1910b798427SLi Pengcheng					};
1920b798427SLi Pengcheng				};
1930b798427SLi Pengcheng
194e917b943SSuzuki K Poulose				port@5 {
1950b798427SLi Pengcheng					reg = <5>;
1960b798427SLi Pengcheng					acpu_funnel_in5: endpoint {
1970b798427SLi Pengcheng						remote-endpoint =
1980b798427SLi Pengcheng							<&etm5_out>;
1990b798427SLi Pengcheng					};
2000b798427SLi Pengcheng				};
2010b798427SLi Pengcheng
202e917b943SSuzuki K Poulose				port@6 {
2030b798427SLi Pengcheng					reg = <6>;
2040b798427SLi Pengcheng					acpu_funnel_in6: endpoint {
2050b798427SLi Pengcheng						remote-endpoint =
2060b798427SLi Pengcheng							<&etm6_out>;
2070b798427SLi Pengcheng					};
2080b798427SLi Pengcheng				};
2090b798427SLi Pengcheng
210e917b943SSuzuki K Poulose				port@7 {
2110b798427SLi Pengcheng					reg = <7>;
2120b798427SLi Pengcheng					acpu_funnel_in7: endpoint {
2130b798427SLi Pengcheng						remote-endpoint =
2140b798427SLi Pengcheng							<&etm7_out>;
2150b798427SLi Pengcheng					};
2160b798427SLi Pengcheng				};
2170b798427SLi Pengcheng			};
2180b798427SLi Pengcheng		};
2190b798427SLi Pengcheng
2200b798427SLi Pengcheng		etm@f659c000 {
2210b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
2220b798427SLi Pengcheng			reg = <0 0xf659c000 0 0x1000>;
2230b798427SLi Pengcheng
2240b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
2250b798427SLi Pengcheng			clock-names = "apb_pclk";
2260b798427SLi Pengcheng
2270b798427SLi Pengcheng			cpu = <&cpu0>;
2280b798427SLi Pengcheng
229e917b943SSuzuki K Poulose			out-ports {
2300b798427SLi Pengcheng				port {
2310b798427SLi Pengcheng					etm0_out: endpoint {
2320b798427SLi Pengcheng						remote-endpoint =
2330b798427SLi Pengcheng							<&acpu_funnel_in0>;
2340b798427SLi Pengcheng					};
2350b798427SLi Pengcheng				};
2360b798427SLi Pengcheng			};
237e917b943SSuzuki K Poulose		};
2380b798427SLi Pengcheng
2390b798427SLi Pengcheng		etm@f659d000 {
2400b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
2410b798427SLi Pengcheng			reg = <0 0xf659d000 0 0x1000>;
2420b798427SLi Pengcheng
2430b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
2440b798427SLi Pengcheng			clock-names = "apb_pclk";
2450b798427SLi Pengcheng
2460b798427SLi Pengcheng			cpu = <&cpu1>;
2470b798427SLi Pengcheng
248e917b943SSuzuki K Poulose			out-ports {
2490b798427SLi Pengcheng				port {
2500b798427SLi Pengcheng					etm1_out: endpoint {
2510b798427SLi Pengcheng						remote-endpoint =
2520b798427SLi Pengcheng							<&acpu_funnel_in1>;
2530b798427SLi Pengcheng					};
2540b798427SLi Pengcheng				};
2550b798427SLi Pengcheng			};
256e917b943SSuzuki K Poulose		};
2570b798427SLi Pengcheng
2580b798427SLi Pengcheng		etm@f659e000 {
2590b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
2600b798427SLi Pengcheng			reg = <0 0xf659e000 0 0x1000>;
2610b798427SLi Pengcheng
2620b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
2630b798427SLi Pengcheng			clock-names = "apb_pclk";
2640b798427SLi Pengcheng
2650b798427SLi Pengcheng			cpu = <&cpu2>;
2660b798427SLi Pengcheng
267e917b943SSuzuki K Poulose			out-ports {
2680b798427SLi Pengcheng				port {
2690b798427SLi Pengcheng					etm2_out: endpoint {
2700b798427SLi Pengcheng						remote-endpoint =
2710b798427SLi Pengcheng							<&acpu_funnel_in2>;
2720b798427SLi Pengcheng					};
2730b798427SLi Pengcheng				};
2740b798427SLi Pengcheng			};
275e917b943SSuzuki K Poulose		};
2760b798427SLi Pengcheng
2770b798427SLi Pengcheng		etm@f659f000 {
2780b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
2790b798427SLi Pengcheng			reg = <0 0xf659f000 0 0x1000>;
2800b798427SLi Pengcheng
2810b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
2820b798427SLi Pengcheng			clock-names = "apb_pclk";
2830b798427SLi Pengcheng
2840b798427SLi Pengcheng			cpu = <&cpu3>;
2850b798427SLi Pengcheng
286e917b943SSuzuki K Poulose			out-ports {
2870b798427SLi Pengcheng				port {
2880b798427SLi Pengcheng					etm3_out: endpoint {
2890b798427SLi Pengcheng						remote-endpoint =
2900b798427SLi Pengcheng							<&acpu_funnel_in3>;
2910b798427SLi Pengcheng					};
2920b798427SLi Pengcheng				};
2930b798427SLi Pengcheng			};
294e917b943SSuzuki K Poulose		};
2950b798427SLi Pengcheng
2960b798427SLi Pengcheng		etm@f65dc000 {
2970b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
2980b798427SLi Pengcheng			reg = <0 0xf65dc000 0 0x1000>;
2990b798427SLi Pengcheng
3000b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
3010b798427SLi Pengcheng			clock-names = "apb_pclk";
3020b798427SLi Pengcheng
3030b798427SLi Pengcheng			cpu = <&cpu4>;
3040b798427SLi Pengcheng
305e917b943SSuzuki K Poulose			out-ports {
3060b798427SLi Pengcheng				port {
3070b798427SLi Pengcheng					etm4_out: endpoint {
3080b798427SLi Pengcheng						remote-endpoint =
3090b798427SLi Pengcheng							<&acpu_funnel_in4>;
3100b798427SLi Pengcheng					};
3110b798427SLi Pengcheng				};
3120b798427SLi Pengcheng			};
313e917b943SSuzuki K Poulose		};
3140b798427SLi Pengcheng
3150b798427SLi Pengcheng		etm@f65dd000 {
3160b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
3170b798427SLi Pengcheng			reg = <0 0xf65dd000 0 0x1000>;
3180b798427SLi Pengcheng
3190b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
3200b798427SLi Pengcheng			clock-names = "apb_pclk";
3210b798427SLi Pengcheng
3220b798427SLi Pengcheng			cpu = <&cpu5>;
3230b798427SLi Pengcheng
324e917b943SSuzuki K Poulose			out-ports {
3250b798427SLi Pengcheng				port {
3260b798427SLi Pengcheng					etm5_out: endpoint {
3270b798427SLi Pengcheng						remote-endpoint =
3280b798427SLi Pengcheng							<&acpu_funnel_in5>;
3290b798427SLi Pengcheng					};
3300b798427SLi Pengcheng				};
3310b798427SLi Pengcheng			};
332e917b943SSuzuki K Poulose		};
3330b798427SLi Pengcheng
3340b798427SLi Pengcheng		etm@f65de000 {
3350b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
3360b798427SLi Pengcheng			reg = <0 0xf65de000 0 0x1000>;
3370b798427SLi Pengcheng
3380b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
3390b798427SLi Pengcheng			clock-names = "apb_pclk";
3400b798427SLi Pengcheng
3410b798427SLi Pengcheng			cpu = <&cpu6>;
3420b798427SLi Pengcheng
343e917b943SSuzuki K Poulose			out-ports {
3440b798427SLi Pengcheng				port {
3450b798427SLi Pengcheng					etm6_out: endpoint {
3460b798427SLi Pengcheng						remote-endpoint =
3470b798427SLi Pengcheng							<&acpu_funnel_in6>;
3480b798427SLi Pengcheng					};
3490b798427SLi Pengcheng				};
3500b798427SLi Pengcheng			};
351e917b943SSuzuki K Poulose		};
3520b798427SLi Pengcheng
3530b798427SLi Pengcheng		etm@f65df000 {
3540b798427SLi Pengcheng			compatible = "arm,coresight-etm4x", "arm,primecell";
3550b798427SLi Pengcheng			reg = <0 0xf65df000 0 0x1000>;
3560b798427SLi Pengcheng
3570b798427SLi Pengcheng			clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>;
3580b798427SLi Pengcheng			clock-names = "apb_pclk";
3590b798427SLi Pengcheng
3600b798427SLi Pengcheng			cpu = <&cpu7>;
3610b798427SLi Pengcheng
362e917b943SSuzuki K Poulose			out-ports {
3630b798427SLi Pengcheng				port {
3640b798427SLi Pengcheng					etm7_out: endpoint {
3650b798427SLi Pengcheng						remote-endpoint =
3660b798427SLi Pengcheng							<&acpu_funnel_in7>;
3670b798427SLi Pengcheng					};
3680b798427SLi Pengcheng				};
3690b798427SLi Pengcheng			};
3700b798427SLi Pengcheng		};
3710b798427SLi Pengcheng	};
372e917b943SSuzuki K Poulose};
373