18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * dts file for AppliedMicro (APM) X-Gene Shadowcat SOC
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Copyright (C) 2015, Applied Micro Circuits Corporation
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci/ {
98c2ecf20Sopenharmony_ci	compatible = "apm,xgene-shadowcat";
108c2ecf20Sopenharmony_ci	interrupt-parent = <&gic>;
118c2ecf20Sopenharmony_ci	#address-cells = <2>;
128c2ecf20Sopenharmony_ci	#size-cells = <2>;
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci	cpus {
158c2ecf20Sopenharmony_ci		#address-cells = <2>;
168c2ecf20Sopenharmony_ci		#size-cells = <0>;
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci		cpu@0 {
198c2ecf20Sopenharmony_ci			device_type = "cpu";
208c2ecf20Sopenharmony_ci			compatible = "apm,strega";
218c2ecf20Sopenharmony_ci			reg = <0x0 0x000>;
228c2ecf20Sopenharmony_ci			enable-method = "spin-table";
238c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
248c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_0>;
258c2ecf20Sopenharmony_ci			#clock-cells = <1>;
268c2ecf20Sopenharmony_ci			clocks = <&pmd0clk 0>;
278c2ecf20Sopenharmony_ci		};
288c2ecf20Sopenharmony_ci		cpu@1 {
298c2ecf20Sopenharmony_ci			device_type = "cpu";
308c2ecf20Sopenharmony_ci			compatible = "apm,strega";
318c2ecf20Sopenharmony_ci			reg = <0x0 0x001>;
328c2ecf20Sopenharmony_ci			enable-method = "spin-table";
338c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
348c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_0>;
358c2ecf20Sopenharmony_ci			#clock-cells = <1>;
368c2ecf20Sopenharmony_ci			clocks = <&pmd0clk 0>;
378c2ecf20Sopenharmony_ci		};
388c2ecf20Sopenharmony_ci		cpu@100 {
398c2ecf20Sopenharmony_ci			device_type = "cpu";
408c2ecf20Sopenharmony_ci			compatible = "apm,strega";
418c2ecf20Sopenharmony_ci			reg = <0x0 0x100>;
428c2ecf20Sopenharmony_ci			enable-method = "spin-table";
438c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
448c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_1>;
458c2ecf20Sopenharmony_ci			#clock-cells = <1>;
468c2ecf20Sopenharmony_ci			clocks = <&pmd1clk 0>;
478c2ecf20Sopenharmony_ci		};
488c2ecf20Sopenharmony_ci		cpu@101 {
498c2ecf20Sopenharmony_ci			device_type = "cpu";
508c2ecf20Sopenharmony_ci			compatible = "apm,strega";
518c2ecf20Sopenharmony_ci			reg = <0x0 0x101>;
528c2ecf20Sopenharmony_ci			enable-method = "spin-table";
538c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
548c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_1>;
558c2ecf20Sopenharmony_ci			#clock-cells = <1>;
568c2ecf20Sopenharmony_ci			clocks = <&pmd1clk 0>;
578c2ecf20Sopenharmony_ci		};
588c2ecf20Sopenharmony_ci		cpu@200 {
598c2ecf20Sopenharmony_ci			device_type = "cpu";
608c2ecf20Sopenharmony_ci			compatible = "apm,strega";
618c2ecf20Sopenharmony_ci			reg = <0x0 0x200>;
628c2ecf20Sopenharmony_ci			enable-method = "spin-table";
638c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
648c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_2>;
658c2ecf20Sopenharmony_ci			#clock-cells = <1>;
668c2ecf20Sopenharmony_ci			clocks = <&pmd2clk 0>;
678c2ecf20Sopenharmony_ci		};
688c2ecf20Sopenharmony_ci		cpu@201 {
698c2ecf20Sopenharmony_ci			device_type = "cpu";
708c2ecf20Sopenharmony_ci			compatible = "apm,strega";
718c2ecf20Sopenharmony_ci			reg = <0x0 0x201>;
728c2ecf20Sopenharmony_ci			enable-method = "spin-table";
738c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
748c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_2>;
758c2ecf20Sopenharmony_ci			#clock-cells = <1>;
768c2ecf20Sopenharmony_ci			clocks = <&pmd2clk 0>;
778c2ecf20Sopenharmony_ci		};
788c2ecf20Sopenharmony_ci		cpu@300 {
798c2ecf20Sopenharmony_ci			device_type = "cpu";
808c2ecf20Sopenharmony_ci			compatible = "apm,strega";
818c2ecf20Sopenharmony_ci			reg = <0x0 0x300>;
828c2ecf20Sopenharmony_ci			enable-method = "spin-table";
838c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
848c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_3>;
858c2ecf20Sopenharmony_ci			#clock-cells = <1>;
868c2ecf20Sopenharmony_ci			clocks = <&pmd3clk 0>;
878c2ecf20Sopenharmony_ci		};
888c2ecf20Sopenharmony_ci		cpu@301 {
898c2ecf20Sopenharmony_ci			device_type = "cpu";
908c2ecf20Sopenharmony_ci			compatible = "apm,strega";
918c2ecf20Sopenharmony_ci			reg = <0x0 0x301>;
928c2ecf20Sopenharmony_ci			enable-method = "spin-table";
938c2ecf20Sopenharmony_ci			cpu-release-addr = <0x1 0x0000fff8>;
948c2ecf20Sopenharmony_ci			next-level-cache = <&xgene_L2_3>;
958c2ecf20Sopenharmony_ci			#clock-cells = <1>;
968c2ecf20Sopenharmony_ci			clocks = <&pmd3clk 0>;
978c2ecf20Sopenharmony_ci		};
988c2ecf20Sopenharmony_ci		xgene_L2_0: l2-cache-0 {
998c2ecf20Sopenharmony_ci			compatible = "cache";
1008c2ecf20Sopenharmony_ci		};
1018c2ecf20Sopenharmony_ci		xgene_L2_1: l2-cache-1 {
1028c2ecf20Sopenharmony_ci			compatible = "cache";
1038c2ecf20Sopenharmony_ci		};
1048c2ecf20Sopenharmony_ci		xgene_L2_2: l2-cache-2 {
1058c2ecf20Sopenharmony_ci			compatible = "cache";
1068c2ecf20Sopenharmony_ci		};
1078c2ecf20Sopenharmony_ci		xgene_L2_3: l2-cache-3 {
1088c2ecf20Sopenharmony_ci			compatible = "cache";
1098c2ecf20Sopenharmony_ci		};
1108c2ecf20Sopenharmony_ci	};
1118c2ecf20Sopenharmony_ci
1128c2ecf20Sopenharmony_ci	gic: interrupt-controller@78090000 {
1138c2ecf20Sopenharmony_ci		compatible = "arm,cortex-a15-gic";
1148c2ecf20Sopenharmony_ci		#interrupt-cells = <3>;
1158c2ecf20Sopenharmony_ci		#address-cells = <2>;
1168c2ecf20Sopenharmony_ci		#size-cells = <2>;
1178c2ecf20Sopenharmony_ci		interrupt-controller;
1188c2ecf20Sopenharmony_ci		interrupts = <1 9 0xf04>;	/* GIC Maintenence IRQ */
1198c2ecf20Sopenharmony_ci		ranges = <0 0 0 0x79000000 0x0 0x800000>; /* MSI Range */
1208c2ecf20Sopenharmony_ci		reg = <0x0 0x78090000 0x0 0x10000>,	/* GIC Dist */
1218c2ecf20Sopenharmony_ci		      <0x0 0x780a0000 0x0 0x20000>,	/* GIC CPU */
1228c2ecf20Sopenharmony_ci		      <0x0 0x780c0000 0x0 0x10000>,	/* GIC VCPU Control */
1238c2ecf20Sopenharmony_ci		      <0x0 0x780e0000 0x0 0x20000>;	/* GIC VCPU */
1248c2ecf20Sopenharmony_ci		v2m0: v2m@0 {
1258c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1268c2ecf20Sopenharmony_ci			msi-controller;
1278c2ecf20Sopenharmony_ci			reg = <0x0 0x0 0x0 0x1000>;
1288c2ecf20Sopenharmony_ci		};
1298c2ecf20Sopenharmony_ci		v2m1: v2m@10000 {
1308c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1318c2ecf20Sopenharmony_ci			msi-controller;
1328c2ecf20Sopenharmony_ci			reg = <0x0 0x10000 0x0 0x1000>;
1338c2ecf20Sopenharmony_ci		};
1348c2ecf20Sopenharmony_ci		v2m2: v2m@20000 {
1358c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1368c2ecf20Sopenharmony_ci			msi-controller;
1378c2ecf20Sopenharmony_ci			reg = <0x0 0x20000 0x0 0x1000>;
1388c2ecf20Sopenharmony_ci		};
1398c2ecf20Sopenharmony_ci		v2m3: v2m@30000 {
1408c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1418c2ecf20Sopenharmony_ci			msi-controller;
1428c2ecf20Sopenharmony_ci			reg = <0x0 0x30000 0x0 0x1000>;
1438c2ecf20Sopenharmony_ci		};
1448c2ecf20Sopenharmony_ci		v2m4: v2m@40000 {
1458c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1468c2ecf20Sopenharmony_ci			msi-controller;
1478c2ecf20Sopenharmony_ci			reg = <0x0 0x40000 0x0 0x1000>;
1488c2ecf20Sopenharmony_ci		};
1498c2ecf20Sopenharmony_ci		v2m5: v2m@50000 {
1508c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1518c2ecf20Sopenharmony_ci			msi-controller;
1528c2ecf20Sopenharmony_ci			reg = <0x0 0x50000 0x0 0x1000>;
1538c2ecf20Sopenharmony_ci		};
1548c2ecf20Sopenharmony_ci		v2m6: v2m@60000 {
1558c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1568c2ecf20Sopenharmony_ci			msi-controller;
1578c2ecf20Sopenharmony_ci			reg = <0x0 0x60000 0x0 0x1000>;
1588c2ecf20Sopenharmony_ci		};
1598c2ecf20Sopenharmony_ci		v2m7: v2m@70000 {
1608c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1618c2ecf20Sopenharmony_ci			msi-controller;
1628c2ecf20Sopenharmony_ci			reg = <0x0 0x70000 0x0 0x1000>;
1638c2ecf20Sopenharmony_ci		};
1648c2ecf20Sopenharmony_ci		v2m8: v2m@80000 {
1658c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1668c2ecf20Sopenharmony_ci			msi-controller;
1678c2ecf20Sopenharmony_ci			reg = <0x0 0x80000 0x0 0x1000>;
1688c2ecf20Sopenharmony_ci		};
1698c2ecf20Sopenharmony_ci		v2m9: v2m@90000 {
1708c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1718c2ecf20Sopenharmony_ci			msi-controller;
1728c2ecf20Sopenharmony_ci			reg = <0x0 0x90000 0x0 0x1000>;
1738c2ecf20Sopenharmony_ci		};
1748c2ecf20Sopenharmony_ci		v2m10: v2m@a0000 {
1758c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1768c2ecf20Sopenharmony_ci			msi-controller;
1778c2ecf20Sopenharmony_ci			reg = <0x0 0xa0000 0x0 0x1000>;
1788c2ecf20Sopenharmony_ci		};
1798c2ecf20Sopenharmony_ci		v2m11: v2m@b0000 {
1808c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1818c2ecf20Sopenharmony_ci			msi-controller;
1828c2ecf20Sopenharmony_ci			reg = <0x0 0xb0000 0x0 0x1000>;
1838c2ecf20Sopenharmony_ci		};
1848c2ecf20Sopenharmony_ci		v2m12: v2m@c0000 {
1858c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1868c2ecf20Sopenharmony_ci			msi-controller;
1878c2ecf20Sopenharmony_ci			reg = <0x0 0xc0000 0x0 0x1000>;
1888c2ecf20Sopenharmony_ci		};
1898c2ecf20Sopenharmony_ci		v2m13: v2m@d0000 {
1908c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1918c2ecf20Sopenharmony_ci			msi-controller;
1928c2ecf20Sopenharmony_ci			reg = <0x0 0xd0000 0x0 0x1000>;
1938c2ecf20Sopenharmony_ci		};
1948c2ecf20Sopenharmony_ci		v2m14: v2m@e0000 {
1958c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
1968c2ecf20Sopenharmony_ci			msi-controller;
1978c2ecf20Sopenharmony_ci			reg = <0x0 0xe0000 0x0 0x1000>;
1988c2ecf20Sopenharmony_ci		};
1998c2ecf20Sopenharmony_ci		v2m15: v2m@f0000 {
2008c2ecf20Sopenharmony_ci			compatible = "arm,gic-v2m-frame";
2018c2ecf20Sopenharmony_ci			msi-controller;
2028c2ecf20Sopenharmony_ci			reg = <0x0 0xf0000 0x0 0x1000>;
2038c2ecf20Sopenharmony_ci		};
2048c2ecf20Sopenharmony_ci	};
2058c2ecf20Sopenharmony_ci
2068c2ecf20Sopenharmony_ci	pmu {
2078c2ecf20Sopenharmony_ci		compatible = "arm,armv8-pmuv3";
2088c2ecf20Sopenharmony_ci		interrupts = <1 12 0xff04>;
2098c2ecf20Sopenharmony_ci	};
2108c2ecf20Sopenharmony_ci
2118c2ecf20Sopenharmony_ci	timer {
2128c2ecf20Sopenharmony_ci		compatible = "arm,armv8-timer";
2138c2ecf20Sopenharmony_ci		interrupts = <1 0 0xff08>,	/* Secure Phys IRQ */
2148c2ecf20Sopenharmony_ci			     <1 13 0xff08>,	/* Non-secure Phys IRQ */
2158c2ecf20Sopenharmony_ci			     <1 14 0xff08>,	/* Virt IRQ */
2168c2ecf20Sopenharmony_ci			     <1 15 0xff08>;	/* Hyp IRQ */
2178c2ecf20Sopenharmony_ci		clock-frequency = <50000000>;
2188c2ecf20Sopenharmony_ci	};
2198c2ecf20Sopenharmony_ci
2208c2ecf20Sopenharmony_ci	soc {
2218c2ecf20Sopenharmony_ci		compatible = "simple-bus";
2228c2ecf20Sopenharmony_ci		#address-cells = <2>;
2238c2ecf20Sopenharmony_ci		#size-cells = <2>;
2248c2ecf20Sopenharmony_ci		ranges;
2258c2ecf20Sopenharmony_ci
2268c2ecf20Sopenharmony_ci		clocks {
2278c2ecf20Sopenharmony_ci			#address-cells = <2>;
2288c2ecf20Sopenharmony_ci			#size-cells = <2>;
2298c2ecf20Sopenharmony_ci			ranges;
2308c2ecf20Sopenharmony_ci
2318c2ecf20Sopenharmony_ci			refclk: refclk {
2328c2ecf20Sopenharmony_ci				compatible = "fixed-clock";
2338c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2348c2ecf20Sopenharmony_ci				clock-frequency = <100000000>;
2358c2ecf20Sopenharmony_ci				clock-output-names = "refclk";
2368c2ecf20Sopenharmony_ci			};
2378c2ecf20Sopenharmony_ci
2388c2ecf20Sopenharmony_ci			pmdpll: pmdpll@170000f0 {
2398c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pcppll-v2-clock";
2408c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2418c2ecf20Sopenharmony_ci				clocks = <&refclk 0>;
2428c2ecf20Sopenharmony_ci				reg = <0x0 0x170000f0 0x0 0x10>;
2438c2ecf20Sopenharmony_ci				clock-output-names = "pmdpll";
2448c2ecf20Sopenharmony_ci			};
2458c2ecf20Sopenharmony_ci
2468c2ecf20Sopenharmony_ci			pmd0clk: pmd0clk@7e200200 {
2478c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmd-clock";
2488c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2498c2ecf20Sopenharmony_ci				clocks = <&pmdpll 0>;
2508c2ecf20Sopenharmony_ci				reg = <0x0 0x7e200200 0x0 0x10>;
2518c2ecf20Sopenharmony_ci				clock-output-names = "pmd0clk";
2528c2ecf20Sopenharmony_ci			};
2538c2ecf20Sopenharmony_ci
2548c2ecf20Sopenharmony_ci			pmd1clk: pmd1clk@7e200210 {
2558c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmd-clock";
2568c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2578c2ecf20Sopenharmony_ci				clocks = <&pmdpll 0>;
2588c2ecf20Sopenharmony_ci				reg = <0x0 0x7e200210 0x0 0x10>;
2598c2ecf20Sopenharmony_ci				clock-output-names = "pmd1clk";
2608c2ecf20Sopenharmony_ci			};
2618c2ecf20Sopenharmony_ci
2628c2ecf20Sopenharmony_ci			pmd2clk: pmd2clk@7e200220 {
2638c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmd-clock";
2648c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2658c2ecf20Sopenharmony_ci				clocks = <&pmdpll 0>;
2668c2ecf20Sopenharmony_ci				reg = <0x0 0x7e200220 0x0 0x10>;
2678c2ecf20Sopenharmony_ci				clock-output-names = "pmd2clk";
2688c2ecf20Sopenharmony_ci			};
2698c2ecf20Sopenharmony_ci
2708c2ecf20Sopenharmony_ci			pmd3clk: pmd3clk@7e200230 {
2718c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmd-clock";
2728c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2738c2ecf20Sopenharmony_ci				clocks = <&pmdpll 0>;
2748c2ecf20Sopenharmony_ci				reg = <0x0 0x7e200230 0x0 0x10>;
2758c2ecf20Sopenharmony_ci				clock-output-names = "pmd3clk";
2768c2ecf20Sopenharmony_ci			};
2778c2ecf20Sopenharmony_ci
2788c2ecf20Sopenharmony_ci			socpll: socpll@17000120 {
2798c2ecf20Sopenharmony_ci				compatible = "apm,xgene-socpll-v2-clock";
2808c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2818c2ecf20Sopenharmony_ci				clocks = <&refclk 0>;
2828c2ecf20Sopenharmony_ci				reg = <0x0 0x17000120 0x0 0x1000>;
2838c2ecf20Sopenharmony_ci				clock-output-names = "socpll";
2848c2ecf20Sopenharmony_ci			};
2858c2ecf20Sopenharmony_ci
2868c2ecf20Sopenharmony_ci			socplldiv2: socplldiv2  {
2878c2ecf20Sopenharmony_ci				compatible = "fixed-factor-clock";
2888c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2898c2ecf20Sopenharmony_ci				clocks = <&socpll 0>;
2908c2ecf20Sopenharmony_ci				clock-mult = <1>;
2918c2ecf20Sopenharmony_ci				clock-div = <2>;
2928c2ecf20Sopenharmony_ci				clock-output-names = "socplldiv2";
2938c2ecf20Sopenharmony_ci			};
2948c2ecf20Sopenharmony_ci
2958c2ecf20Sopenharmony_ci			ahbclk: ahbclk@17000000 {
2968c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
2978c2ecf20Sopenharmony_ci				#clock-cells = <1>;
2988c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
2998c2ecf20Sopenharmony_ci				reg = <0x0 0x17000000 0x0 0x2000>;
3008c2ecf20Sopenharmony_ci				reg-names = "div-reg";
3018c2ecf20Sopenharmony_ci				divider-offset = <0x164>;
3028c2ecf20Sopenharmony_ci				divider-width = <0x5>;
3038c2ecf20Sopenharmony_ci				divider-shift = <0x0>;
3048c2ecf20Sopenharmony_ci				clock-output-names = "ahbclk";
3058c2ecf20Sopenharmony_ci			};
3068c2ecf20Sopenharmony_ci
3078c2ecf20Sopenharmony_ci			sbapbclk: sbapbclk@1704c000 {
3088c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3098c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3108c2ecf20Sopenharmony_ci				clocks = <&ahbclk 0>;
3118c2ecf20Sopenharmony_ci				reg = <0x0 0x1704c000 0x0 0x2000>;
3128c2ecf20Sopenharmony_ci				reg-names = "div-reg";
3138c2ecf20Sopenharmony_ci				divider-offset = <0x10>;
3148c2ecf20Sopenharmony_ci				divider-width = <0x2>;
3158c2ecf20Sopenharmony_ci				divider-shift = <0x0>;
3168c2ecf20Sopenharmony_ci				clock-output-names = "sbapbclk";
3178c2ecf20Sopenharmony_ci			};
3188c2ecf20Sopenharmony_ci
3198c2ecf20Sopenharmony_ci			sdioclk: sdioclk@1f2ac000 {
3208c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3218c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3228c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
3238c2ecf20Sopenharmony_ci				reg = <0x0 0x1f2ac000 0x0 0x1000
3248c2ecf20Sopenharmony_ci					0x0 0x17000000 0x0 0x2000>;
3258c2ecf20Sopenharmony_ci				reg-names = "csr-reg", "div-reg";
3268c2ecf20Sopenharmony_ci				csr-offset = <0x0>;
3278c2ecf20Sopenharmony_ci				csr-mask = <0x2>;
3288c2ecf20Sopenharmony_ci				enable-offset = <0x8>;
3298c2ecf20Sopenharmony_ci				enable-mask = <0x2>;
3308c2ecf20Sopenharmony_ci				divider-offset = <0x178>;
3318c2ecf20Sopenharmony_ci				divider-width = <0x8>;
3328c2ecf20Sopenharmony_ci				divider-shift = <0x0>;
3338c2ecf20Sopenharmony_ci				clock-output-names = "sdioclk";
3348c2ecf20Sopenharmony_ci			};
3358c2ecf20Sopenharmony_ci
3368c2ecf20Sopenharmony_ci			pcie0clk: pcie0clk@1f2bc000 {
3378c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3388c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3398c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
3408c2ecf20Sopenharmony_ci				reg = <0x0 0x1f2bc000 0x0 0x1000>;
3418c2ecf20Sopenharmony_ci				reg-names = "csr-reg";
3428c2ecf20Sopenharmony_ci				clock-output-names = "pcie0clk";
3438c2ecf20Sopenharmony_ci			};
3448c2ecf20Sopenharmony_ci
3458c2ecf20Sopenharmony_ci			pcie1clk: pcie1clk@1f2cc000 {
3468c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3478c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3488c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
3498c2ecf20Sopenharmony_ci				reg = <0x0 0x1f2cc000 0x0 0x1000>;
3508c2ecf20Sopenharmony_ci				reg-names = "csr-reg";
3518c2ecf20Sopenharmony_ci				clock-output-names = "pcie1clk";
3528c2ecf20Sopenharmony_ci			};
3538c2ecf20Sopenharmony_ci
3548c2ecf20Sopenharmony_ci			xge0clk: xge0clk@1f61c000 {
3558c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3568c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3578c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
3588c2ecf20Sopenharmony_ci				reg = <0x0 0x1f61c000 0x0 0x1000>;
3598c2ecf20Sopenharmony_ci				reg-names = "csr-reg";
3608c2ecf20Sopenharmony_ci				enable-mask = <0x3>;
3618c2ecf20Sopenharmony_ci				csr-mask = <0x3>;
3628c2ecf20Sopenharmony_ci				clock-output-names = "xge0clk";
3638c2ecf20Sopenharmony_ci			};
3648c2ecf20Sopenharmony_ci
3658c2ecf20Sopenharmony_ci			xge1clk: xge1clk@1f62c000 {
3668c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3678c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3688c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
3698c2ecf20Sopenharmony_ci				reg = <0x0 0x1f62c000 0x0 0x1000>;
3708c2ecf20Sopenharmony_ci				reg-names = "csr-reg";
3718c2ecf20Sopenharmony_ci				enable-mask = <0x3>;
3728c2ecf20Sopenharmony_ci				csr-mask = <0x3>;
3738c2ecf20Sopenharmony_ci				clock-output-names = "xge1clk";
3748c2ecf20Sopenharmony_ci			};
3758c2ecf20Sopenharmony_ci
3768c2ecf20Sopenharmony_ci			rngpkaclk: rngpkaclk@17000000 {
3778c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3788c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3798c2ecf20Sopenharmony_ci				clocks = <&socplldiv2 0>;
3808c2ecf20Sopenharmony_ci				reg = <0x0 0x17000000 0x0 0x2000>;
3818c2ecf20Sopenharmony_ci				reg-names = "csr-reg";
3828c2ecf20Sopenharmony_ci				csr-offset = <0xc>;
3838c2ecf20Sopenharmony_ci				csr-mask = <0x10>;
3848c2ecf20Sopenharmony_ci				enable-offset = <0x10>;
3858c2ecf20Sopenharmony_ci				enable-mask = <0x10>;
3868c2ecf20Sopenharmony_ci				clock-output-names = "rngpkaclk";
3878c2ecf20Sopenharmony_ci			};
3888c2ecf20Sopenharmony_ci
3898c2ecf20Sopenharmony_ci			i2c4clk: i2c4clk@1704c000 {
3908c2ecf20Sopenharmony_ci				compatible = "apm,xgene-device-clock";
3918c2ecf20Sopenharmony_ci				#clock-cells = <1>;
3928c2ecf20Sopenharmony_ci				clocks = <&sbapbclk 0>;
3938c2ecf20Sopenharmony_ci				reg = <0x0 0x1704c000 0x0 0x1000>;
3948c2ecf20Sopenharmony_ci				reg-names = "csr-reg";
3958c2ecf20Sopenharmony_ci				csr-offset = <0x0>;
3968c2ecf20Sopenharmony_ci				csr-mask = <0x40>;
3978c2ecf20Sopenharmony_ci				enable-offset = <0x8>;
3988c2ecf20Sopenharmony_ci				enable-mask = <0x40>;
3998c2ecf20Sopenharmony_ci				clock-output-names = "i2c4clk";
4008c2ecf20Sopenharmony_ci			};
4018c2ecf20Sopenharmony_ci		};
4028c2ecf20Sopenharmony_ci
4038c2ecf20Sopenharmony_ci		scu: system-clk-controller@17000000 {
4048c2ecf20Sopenharmony_ci			compatible = "apm,xgene-scu","syscon";
4058c2ecf20Sopenharmony_ci			reg = <0x0 0x17000000 0x0 0x400>;
4068c2ecf20Sopenharmony_ci		};
4078c2ecf20Sopenharmony_ci
4088c2ecf20Sopenharmony_ci		reboot: reboot@17000014 {
4098c2ecf20Sopenharmony_ci			compatible = "syscon-reboot";
4108c2ecf20Sopenharmony_ci			regmap = <&scu>;
4118c2ecf20Sopenharmony_ci			offset = <0x14>;
4128c2ecf20Sopenharmony_ci			mask = <0x1>;
4138c2ecf20Sopenharmony_ci		};
4148c2ecf20Sopenharmony_ci
4158c2ecf20Sopenharmony_ci		csw: csw@7e200000 {
4168c2ecf20Sopenharmony_ci			compatible = "apm,xgene-csw", "syscon";
4178c2ecf20Sopenharmony_ci			reg = <0x0 0x7e200000 0x0 0x1000>;
4188c2ecf20Sopenharmony_ci		};
4198c2ecf20Sopenharmony_ci
4208c2ecf20Sopenharmony_ci		mcba: mcba@7e700000 {
4218c2ecf20Sopenharmony_ci			compatible = "apm,xgene-mcb", "syscon";
4228c2ecf20Sopenharmony_ci			reg = <0x0 0x7e700000 0x0 0x1000>;
4238c2ecf20Sopenharmony_ci		};
4248c2ecf20Sopenharmony_ci
4258c2ecf20Sopenharmony_ci		mcbb: mcbb@7e720000 {
4268c2ecf20Sopenharmony_ci			compatible = "apm,xgene-mcb", "syscon";
4278c2ecf20Sopenharmony_ci			reg = <0x0 0x7e720000 0x0 0x1000>;
4288c2ecf20Sopenharmony_ci		};
4298c2ecf20Sopenharmony_ci
4308c2ecf20Sopenharmony_ci		efuse: efuse@1054a000 {
4318c2ecf20Sopenharmony_ci			compatible = "apm,xgene-efuse", "syscon";
4328c2ecf20Sopenharmony_ci			reg = <0x0 0x1054a000 0x0 0x20>;
4338c2ecf20Sopenharmony_ci		};
4348c2ecf20Sopenharmony_ci
4358c2ecf20Sopenharmony_ci		edac@78800000 {
4368c2ecf20Sopenharmony_ci			compatible = "apm,xgene-edac";
4378c2ecf20Sopenharmony_ci			#address-cells = <2>;
4388c2ecf20Sopenharmony_ci			#size-cells = <2>;
4398c2ecf20Sopenharmony_ci			ranges;
4408c2ecf20Sopenharmony_ci			regmap-csw = <&csw>;
4418c2ecf20Sopenharmony_ci			regmap-mcba = <&mcba>;
4428c2ecf20Sopenharmony_ci			regmap-mcbb = <&mcbb>;
4438c2ecf20Sopenharmony_ci			regmap-efuse = <&efuse>;
4448c2ecf20Sopenharmony_ci			reg = <0x0 0x78800000 0x0 0x100>;
4458c2ecf20Sopenharmony_ci			interrupts = <0x0 0x20 0x4>,
4468c2ecf20Sopenharmony_ci				     <0x0 0x21 0x4>,
4478c2ecf20Sopenharmony_ci				     <0x0 0x27 0x4>;
4488c2ecf20Sopenharmony_ci
4498c2ecf20Sopenharmony_ci			edacmc@7e800000 {
4508c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-mc";
4518c2ecf20Sopenharmony_ci				reg = <0x0 0x7e800000 0x0 0x1000>;
4528c2ecf20Sopenharmony_ci				memory-controller = <0>;
4538c2ecf20Sopenharmony_ci			};
4548c2ecf20Sopenharmony_ci
4558c2ecf20Sopenharmony_ci			edacmc@7e840000 {
4568c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-mc";
4578c2ecf20Sopenharmony_ci				reg = <0x0 0x7e840000 0x0 0x1000>;
4588c2ecf20Sopenharmony_ci				memory-controller = <1>;
4598c2ecf20Sopenharmony_ci			};
4608c2ecf20Sopenharmony_ci
4618c2ecf20Sopenharmony_ci			edacmc@7e880000 {
4628c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-mc";
4638c2ecf20Sopenharmony_ci				reg = <0x0 0x7e880000 0x0 0x1000>;
4648c2ecf20Sopenharmony_ci				memory-controller = <2>;
4658c2ecf20Sopenharmony_ci			};
4668c2ecf20Sopenharmony_ci
4678c2ecf20Sopenharmony_ci			edacmc@7e8c0000 {
4688c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-mc";
4698c2ecf20Sopenharmony_ci				reg = <0x0 0x7e8c0000 0x0 0x1000>;
4708c2ecf20Sopenharmony_ci				memory-controller = <3>;
4718c2ecf20Sopenharmony_ci			};
4728c2ecf20Sopenharmony_ci
4738c2ecf20Sopenharmony_ci			edacpmd@7c000000 {
4748c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-pmd";
4758c2ecf20Sopenharmony_ci				reg = <0x0 0x7c000000 0x0 0x200000>;
4768c2ecf20Sopenharmony_ci				pmd-controller = <0>;
4778c2ecf20Sopenharmony_ci			};
4788c2ecf20Sopenharmony_ci
4798c2ecf20Sopenharmony_ci			edacpmd@7c200000 {
4808c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-pmd";
4818c2ecf20Sopenharmony_ci				reg = <0x0 0x7c200000 0x0 0x200000>;
4828c2ecf20Sopenharmony_ci				pmd-controller = <1>;
4838c2ecf20Sopenharmony_ci			};
4848c2ecf20Sopenharmony_ci
4858c2ecf20Sopenharmony_ci			edacpmd@7c400000 {
4868c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-pmd";
4878c2ecf20Sopenharmony_ci				reg = <0x0 0x7c400000 0x0 0x200000>;
4888c2ecf20Sopenharmony_ci				pmd-controller = <2>;
4898c2ecf20Sopenharmony_ci			};
4908c2ecf20Sopenharmony_ci
4918c2ecf20Sopenharmony_ci			edacpmd@7c600000 {
4928c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-pmd";
4938c2ecf20Sopenharmony_ci				reg = <0x0 0x7c600000 0x0 0x200000>;
4948c2ecf20Sopenharmony_ci				pmd-controller = <3>;
4958c2ecf20Sopenharmony_ci			};
4968c2ecf20Sopenharmony_ci
4978c2ecf20Sopenharmony_ci			edacl3@7e600000 {
4988c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-l3-v2";
4998c2ecf20Sopenharmony_ci				reg = <0x0 0x7e600000 0x0 0x1000>;
5008c2ecf20Sopenharmony_ci			};
5018c2ecf20Sopenharmony_ci
5028c2ecf20Sopenharmony_ci			edacsoc@7e930000 {
5038c2ecf20Sopenharmony_ci				compatible = "apm,xgene-edac-soc";
5048c2ecf20Sopenharmony_ci				reg = <0x0 0x7e930000 0x0 0x1000>;
5058c2ecf20Sopenharmony_ci			};
5068c2ecf20Sopenharmony_ci		};
5078c2ecf20Sopenharmony_ci
5088c2ecf20Sopenharmony_ci		pmu: pmu@78810000 {
5098c2ecf20Sopenharmony_ci			compatible = "apm,xgene-pmu-v2";
5108c2ecf20Sopenharmony_ci			#address-cells = <2>;
5118c2ecf20Sopenharmony_ci			#size-cells = <2>;
5128c2ecf20Sopenharmony_ci			ranges;
5138c2ecf20Sopenharmony_ci			regmap-csw = <&csw>;
5148c2ecf20Sopenharmony_ci			regmap-mcba = <&mcba>;
5158c2ecf20Sopenharmony_ci			regmap-mcbb = <&mcbb>;
5168c2ecf20Sopenharmony_ci			reg = <0x0 0x78810000 0x0 0x1000>;
5178c2ecf20Sopenharmony_ci			interrupts = <0x0 0x22 0x4>;
5188c2ecf20Sopenharmony_ci
5198c2ecf20Sopenharmony_ci			pmul3c@7e610000 {
5208c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-l3c";
5218c2ecf20Sopenharmony_ci				reg = <0x0 0x7e610000 0x0 0x1000>;
5228c2ecf20Sopenharmony_ci			};
5238c2ecf20Sopenharmony_ci
5248c2ecf20Sopenharmony_ci			pmuiob@7e940000 {
5258c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-iob";
5268c2ecf20Sopenharmony_ci				reg = <0x0 0x7e940000 0x0 0x1000>;
5278c2ecf20Sopenharmony_ci			};
5288c2ecf20Sopenharmony_ci
5298c2ecf20Sopenharmony_ci			pmucmcb@7e710000 {
5308c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-mcb";
5318c2ecf20Sopenharmony_ci				reg = <0x0 0x7e710000 0x0 0x1000>;
5328c2ecf20Sopenharmony_ci				enable-bit-index = <0>;
5338c2ecf20Sopenharmony_ci			};
5348c2ecf20Sopenharmony_ci
5358c2ecf20Sopenharmony_ci			pmucmcb@7e730000 {
5368c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-mcb";
5378c2ecf20Sopenharmony_ci				reg = <0x0 0x7e730000 0x0 0x1000>;
5388c2ecf20Sopenharmony_ci				enable-bit-index = <1>;
5398c2ecf20Sopenharmony_ci			};
5408c2ecf20Sopenharmony_ci
5418c2ecf20Sopenharmony_ci			pmucmc@7e810000 {
5428c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-mc";
5438c2ecf20Sopenharmony_ci				reg = <0x0 0x7e810000 0x0 0x1000>;
5448c2ecf20Sopenharmony_ci				enable-bit-index = <0>;
5458c2ecf20Sopenharmony_ci			};
5468c2ecf20Sopenharmony_ci
5478c2ecf20Sopenharmony_ci			pmucmc@7e850000 {
5488c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-mc";
5498c2ecf20Sopenharmony_ci				reg = <0x0 0x7e850000 0x0 0x1000>;
5508c2ecf20Sopenharmony_ci				enable-bit-index = <1>;
5518c2ecf20Sopenharmony_ci			};
5528c2ecf20Sopenharmony_ci
5538c2ecf20Sopenharmony_ci			pmucmc@7e890000 {
5548c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-mc";
5558c2ecf20Sopenharmony_ci				reg = <0x0 0x7e890000 0x0 0x1000>;
5568c2ecf20Sopenharmony_ci				enable-bit-index = <2>;
5578c2ecf20Sopenharmony_ci			};
5588c2ecf20Sopenharmony_ci
5598c2ecf20Sopenharmony_ci			pmucmc@7e8d0000 {
5608c2ecf20Sopenharmony_ci				compatible = "apm,xgene-pmu-mc";
5618c2ecf20Sopenharmony_ci				reg = <0x0 0x7e8d0000 0x0 0x1000>;
5628c2ecf20Sopenharmony_ci				enable-bit-index = <3>;
5638c2ecf20Sopenharmony_ci			};
5648c2ecf20Sopenharmony_ci		};
5658c2ecf20Sopenharmony_ci
5668c2ecf20Sopenharmony_ci		mailbox: mailbox@10540000 {
5678c2ecf20Sopenharmony_ci			compatible = "apm,xgene-slimpro-mbox";
5688c2ecf20Sopenharmony_ci			reg = <0x0 0x10540000 0x0 0x8000>;
5698c2ecf20Sopenharmony_ci			#mbox-cells = <1>;
5708c2ecf20Sopenharmony_ci			interrupts =   <0x0 0x0 0x4
5718c2ecf20Sopenharmony_ci					0x0 0x1 0x4
5728c2ecf20Sopenharmony_ci					0x0 0x2 0x4
5738c2ecf20Sopenharmony_ci					0x0 0x3 0x4
5748c2ecf20Sopenharmony_ci					0x0 0x4 0x4
5758c2ecf20Sopenharmony_ci					0x0 0x5 0x4
5768c2ecf20Sopenharmony_ci					0x0 0x6 0x4
5778c2ecf20Sopenharmony_ci					0x0 0x7 0x4>;
5788c2ecf20Sopenharmony_ci		};
5798c2ecf20Sopenharmony_ci
5808c2ecf20Sopenharmony_ci		i2cslimpro {
5818c2ecf20Sopenharmony_ci			compatible = "apm,xgene-slimpro-i2c";
5828c2ecf20Sopenharmony_ci			mboxes = <&mailbox 0>;
5838c2ecf20Sopenharmony_ci		};
5848c2ecf20Sopenharmony_ci
5858c2ecf20Sopenharmony_ci		hwmonslimpro {
5868c2ecf20Sopenharmony_ci			compatible = "apm,xgene-slimpro-hwmon";
5878c2ecf20Sopenharmony_ci			mboxes = <&mailbox 7>;
5888c2ecf20Sopenharmony_ci		};
5898c2ecf20Sopenharmony_ci
5908c2ecf20Sopenharmony_ci		serial0: serial@10600000 {
5918c2ecf20Sopenharmony_ci			device_type = "serial";
5928c2ecf20Sopenharmony_ci			compatible = "ns16550";
5938c2ecf20Sopenharmony_ci			reg = <0 0x10600000 0x0 0x1000>;
5948c2ecf20Sopenharmony_ci			reg-shift = <2>;
5958c2ecf20Sopenharmony_ci			clock-frequency = <10000000>;
5968c2ecf20Sopenharmony_ci			interrupt-parent = <&gic>;
5978c2ecf20Sopenharmony_ci			interrupts = <0x0 0x4c 0x4>;
5988c2ecf20Sopenharmony_ci		};
5998c2ecf20Sopenharmony_ci
6008c2ecf20Sopenharmony_ci		/* Do not change dwusb name, coded for backward compatibility */
6018c2ecf20Sopenharmony_ci		usb0: dwusb@19000000 {
6028c2ecf20Sopenharmony_ci			status = "disabled";
6038c2ecf20Sopenharmony_ci			compatible = "snps,dwc3";
6048c2ecf20Sopenharmony_ci			reg =  <0x0 0x19000000 0x0 0x100000>;
6058c2ecf20Sopenharmony_ci			interrupts = <0x0 0x5d 0x4>;
6068c2ecf20Sopenharmony_ci			dma-coherent;
6078c2ecf20Sopenharmony_ci			dr_mode = "host";
6088c2ecf20Sopenharmony_ci		};
6098c2ecf20Sopenharmony_ci
6108c2ecf20Sopenharmony_ci		pcie0: pcie@1f2b0000 {
6118c2ecf20Sopenharmony_ci			status = "disabled";
6128c2ecf20Sopenharmony_ci			device_type = "pci";
6138c2ecf20Sopenharmony_ci			compatible = "apm,xgene-pcie", "apm,xgene2-pcie";
6148c2ecf20Sopenharmony_ci			#interrupt-cells = <1>;
6158c2ecf20Sopenharmony_ci			#size-cells = <2>;
6168c2ecf20Sopenharmony_ci			#address-cells = <3>;
6178c2ecf20Sopenharmony_ci			reg = < 0x00 0x1f2b0000 0x0 0x00010000   /* Controller registers */
6188c2ecf20Sopenharmony_ci				0xc0 0xd0000000 0x0 0x00040000>; /* PCI config space */
6198c2ecf20Sopenharmony_ci			reg-names = "csr", "cfg";
6208c2ecf20Sopenharmony_ci			ranges = <0x01000000 0x00 0x00000000 0xc0 0x10000000 0x00 0x00010000   /* io */
6218c2ecf20Sopenharmony_ci				  0x02000000 0x00 0x20000000 0xc1 0x20000000 0x00 0x20000000   /* mem */
6228c2ecf20Sopenharmony_ci				  0x43000000 0xe0 0x00000000 0xe0 0x00000000 0x20 0x00000000>; /* mem */
6238c2ecf20Sopenharmony_ci			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
6248c2ecf20Sopenharmony_ci				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
6258c2ecf20Sopenharmony_ci			bus-range = <0x00 0xff>;
6268c2ecf20Sopenharmony_ci			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
6278c2ecf20Sopenharmony_ci			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0x0 0x0 0x10 0x4
6288c2ecf20Sopenharmony_ci					 0x0 0x0 0x0 0x2 &gic 0x0 0x0 0x0 0x11 0x4
6298c2ecf20Sopenharmony_ci					 0x0 0x0 0x0 0x3 &gic 0x0 0x0 0x0 0x12 0x4
6308c2ecf20Sopenharmony_ci					 0x0 0x0 0x0 0x4 &gic 0x0 0x0 0x0 0x13 0x4>;
6318c2ecf20Sopenharmony_ci			dma-coherent;
6328c2ecf20Sopenharmony_ci			clocks = <&pcie0clk 0>;
6338c2ecf20Sopenharmony_ci			msi-parent = <&v2m0>;
6348c2ecf20Sopenharmony_ci		};
6358c2ecf20Sopenharmony_ci
6368c2ecf20Sopenharmony_ci		pcie1: pcie@1f2c0000 {
6378c2ecf20Sopenharmony_ci			status = "disabled";
6388c2ecf20Sopenharmony_ci			device_type = "pci";
6398c2ecf20Sopenharmony_ci			compatible = "apm,xgene-pcie", "apm,xgene2-pcie";
6408c2ecf20Sopenharmony_ci			#interrupt-cells = <1>;
6418c2ecf20Sopenharmony_ci			#size-cells = <2>;
6428c2ecf20Sopenharmony_ci			#address-cells = <3>;
6438c2ecf20Sopenharmony_ci			reg = < 0x00 0x1f2c0000 0x0 0x00010000   /* Controller registers */
6448c2ecf20Sopenharmony_ci				0xa0 0xd0000000 0x0 0x00040000>; /* PCI config space */
6458c2ecf20Sopenharmony_ci			reg-names = "csr", "cfg";
6468c2ecf20Sopenharmony_ci			ranges = <0x01000000 0x00 0x00000000 0xa0 0x10000000 0x00 0x00010000   /* io */
6478c2ecf20Sopenharmony_ci				  0x02000000 0x00 0x20000000 0xa1 0x20000000 0x00 0x20000000   /* mem */
6488c2ecf20Sopenharmony_ci				  0x43000000 0xb0 0x00000000 0xb0 0x00000000 0x10 0x00000000>; /* mem */
6498c2ecf20Sopenharmony_ci			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
6508c2ecf20Sopenharmony_ci				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
6518c2ecf20Sopenharmony_ci			bus-range = <0x00 0xff>;
6528c2ecf20Sopenharmony_ci			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
6538c2ecf20Sopenharmony_ci			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0x0 0x0 0x16 0x4
6548c2ecf20Sopenharmony_ci					 0x0 0x0 0x0 0x2 &gic 0x0 0x0 0x0 0x17 0x4
6558c2ecf20Sopenharmony_ci					 0x0 0x0 0x0 0x3 &gic 0x0 0x0 0x0 0x18 0x4
6568c2ecf20Sopenharmony_ci					 0x0 0x0 0x0 0x4 &gic 0x0 0x0 0x0 0x19 0x4>;
6578c2ecf20Sopenharmony_ci			dma-coherent;
6588c2ecf20Sopenharmony_ci			clocks = <&pcie1clk 0>;
6598c2ecf20Sopenharmony_ci			msi-parent = <&v2m0>;
6608c2ecf20Sopenharmony_ci		};
6618c2ecf20Sopenharmony_ci
6628c2ecf20Sopenharmony_ci		sata1: sata@1a000000 {
6638c2ecf20Sopenharmony_ci			compatible = "apm,xgene-ahci-v2";
6648c2ecf20Sopenharmony_ci			reg = <0x0 0x1a000000 0x0 0x1000>,
6658c2ecf20Sopenharmony_ci			      <0x0 0x1f200000 0x0 0x1000>,
6668c2ecf20Sopenharmony_ci			      <0x0 0x1f20d000 0x0 0x1000>,
6678c2ecf20Sopenharmony_ci			      <0x0 0x1f20e000 0x0 0x1000>;
6688c2ecf20Sopenharmony_ci			interrupts = <0x0 0x5a 0x4>;
6698c2ecf20Sopenharmony_ci			dma-coherent;
6708c2ecf20Sopenharmony_ci		};
6718c2ecf20Sopenharmony_ci
6728c2ecf20Sopenharmony_ci		sata2: sata@1a200000 {
6738c2ecf20Sopenharmony_ci			compatible = "apm,xgene-ahci-v2";
6748c2ecf20Sopenharmony_ci			reg = <0x0 0x1a200000 0x0 0x1000>,
6758c2ecf20Sopenharmony_ci			      <0x0 0x1f210000 0x0 0x1000>,
6768c2ecf20Sopenharmony_ci			      <0x0 0x1f21d000 0x0 0x1000>,
6778c2ecf20Sopenharmony_ci			      <0x0 0x1f21e000 0x0 0x1000>;
6788c2ecf20Sopenharmony_ci			interrupts = <0x0 0x5b 0x4>;
6798c2ecf20Sopenharmony_ci			dma-coherent;
6808c2ecf20Sopenharmony_ci		};
6818c2ecf20Sopenharmony_ci
6828c2ecf20Sopenharmony_ci		sata3: sata@1a400000 {
6838c2ecf20Sopenharmony_ci			compatible = "apm,xgene-ahci-v2";
6848c2ecf20Sopenharmony_ci			reg = <0x0 0x1a400000 0x0 0x1000>,
6858c2ecf20Sopenharmony_ci			      <0x0 0x1f220000 0x0 0x1000>,
6868c2ecf20Sopenharmony_ci			      <0x0 0x1f22d000 0x0 0x1000>,
6878c2ecf20Sopenharmony_ci			      <0x0 0x1f22e000 0x0 0x1000>;
6888c2ecf20Sopenharmony_ci			interrupts = <0x0 0x5c 0x4>;
6898c2ecf20Sopenharmony_ci			dma-coherent;
6908c2ecf20Sopenharmony_ci		};
6918c2ecf20Sopenharmony_ci
6928c2ecf20Sopenharmony_ci		mmc0: mmc@1c000000 {
6938c2ecf20Sopenharmony_ci			compatible = "arasan,sdhci-4.9a";
6948c2ecf20Sopenharmony_ci			reg = <0x0 0x1c000000 0x0 0x100>;
6958c2ecf20Sopenharmony_ci			interrupts = <0x0 0x49 0x4>;
6968c2ecf20Sopenharmony_ci			dma-coherent;
6978c2ecf20Sopenharmony_ci			no-1-8-v;
6988c2ecf20Sopenharmony_ci			clock-names = "clk_xin", "clk_ahb";
6998c2ecf20Sopenharmony_ci			clocks = <&sdioclk 0>, <&ahbclk 0>;
7008c2ecf20Sopenharmony_ci		};
7018c2ecf20Sopenharmony_ci
7028c2ecf20Sopenharmony_ci		gfcgpio: gpio@1f63c000 {
7038c2ecf20Sopenharmony_ci			compatible = "apm,xgene-gpio";
7048c2ecf20Sopenharmony_ci			reg = <0x0 0x1f63c000 0x0 0x40>;
7058c2ecf20Sopenharmony_ci			gpio-controller;
7068c2ecf20Sopenharmony_ci			#gpio-cells = <2>;
7078c2ecf20Sopenharmony_ci		};
7088c2ecf20Sopenharmony_ci
7098c2ecf20Sopenharmony_ci		dwgpio: gpio@1c024000 {
7108c2ecf20Sopenharmony_ci			compatible = "snps,dw-apb-gpio";
7118c2ecf20Sopenharmony_ci			reg = <0x0 0x1c024000 0x0 0x1000>;
7128c2ecf20Sopenharmony_ci			#address-cells = <1>;
7138c2ecf20Sopenharmony_ci			#size-cells = <0>;
7148c2ecf20Sopenharmony_ci
7158c2ecf20Sopenharmony_ci			porta: gpio-controller@0 {
7168c2ecf20Sopenharmony_ci				compatible = "snps,dw-apb-gpio-port";
7178c2ecf20Sopenharmony_ci				gpio-controller;
7188c2ecf20Sopenharmony_ci				#gpio-cells = <2>;
7198c2ecf20Sopenharmony_ci				snps,nr-gpios = <32>;
7208c2ecf20Sopenharmony_ci				reg = <0>;
7218c2ecf20Sopenharmony_ci			};
7228c2ecf20Sopenharmony_ci		};
7238c2ecf20Sopenharmony_ci
7248c2ecf20Sopenharmony_ci		sbgpio: gpio@17001000{
7258c2ecf20Sopenharmony_ci			compatible = "apm,xgene-gpio-sb";
7268c2ecf20Sopenharmony_ci			reg = <0x0 0x17001000 0x0 0x400>;
7278c2ecf20Sopenharmony_ci			#gpio-cells = <2>;
7288c2ecf20Sopenharmony_ci			gpio-controller;
7298c2ecf20Sopenharmony_ci			interrupts = <0x0 0x28 0x1>,
7308c2ecf20Sopenharmony_ci				     <0x0 0x29 0x1>,
7318c2ecf20Sopenharmony_ci				     <0x0 0x2a 0x1>,
7328c2ecf20Sopenharmony_ci				     <0x0 0x2b 0x1>,
7338c2ecf20Sopenharmony_ci				     <0x0 0x2c 0x1>,
7348c2ecf20Sopenharmony_ci				     <0x0 0x2d 0x1>,
7358c2ecf20Sopenharmony_ci				     <0x0 0x2e 0x1>,
7368c2ecf20Sopenharmony_ci				     <0x0 0x2f 0x1>;
7378c2ecf20Sopenharmony_ci			interrupt-parent = <&gic>;
7388c2ecf20Sopenharmony_ci			#interrupt-cells = <2>;
7398c2ecf20Sopenharmony_ci			interrupt-controller;
7408c2ecf20Sopenharmony_ci			apm,nr-gpios = <22>;
7418c2ecf20Sopenharmony_ci			apm,nr-irqs = <8>;
7428c2ecf20Sopenharmony_ci			apm,irq-start = <8>;
7438c2ecf20Sopenharmony_ci		};
7448c2ecf20Sopenharmony_ci
7458c2ecf20Sopenharmony_ci		mdio: mdio@1f610000 {
7468c2ecf20Sopenharmony_ci			compatible = "apm,xgene-mdio-xfi";
7478c2ecf20Sopenharmony_ci			#address-cells = <1>;
7488c2ecf20Sopenharmony_ci			#size-cells = <0>;
7498c2ecf20Sopenharmony_ci			reg = <0x0 0x1f610000 0x0 0xd100>;
7508c2ecf20Sopenharmony_ci			clocks = <&xge0clk 0>;
7518c2ecf20Sopenharmony_ci		};
7528c2ecf20Sopenharmony_ci
7538c2ecf20Sopenharmony_ci		sgenet0: ethernet@1f610000 {
7548c2ecf20Sopenharmony_ci			compatible = "apm,xgene2-sgenet";
7558c2ecf20Sopenharmony_ci			status = "disabled";
7568c2ecf20Sopenharmony_ci			reg = <0x0 0x1f610000 0x0 0xd100>,
7578c2ecf20Sopenharmony_ci			      <0x0 0x1f600000 0x0 0xd100>,
7588c2ecf20Sopenharmony_ci			      <0x0 0x20000000 0x0 0x20000>;
7598c2ecf20Sopenharmony_ci			interrupts = <0 96 4>,
7608c2ecf20Sopenharmony_ci				     <0 97 4>;
7618c2ecf20Sopenharmony_ci			dma-coherent;
7628c2ecf20Sopenharmony_ci			clocks = <&xge0clk 0>;
7638c2ecf20Sopenharmony_ci			local-mac-address = [00 01 73 00 00 01];
7648c2ecf20Sopenharmony_ci			phy-connection-type = "sgmii";
7658c2ecf20Sopenharmony_ci			phy-handle = <&sgenet0phy>;
7668c2ecf20Sopenharmony_ci		};
7678c2ecf20Sopenharmony_ci
7688c2ecf20Sopenharmony_ci		xgenet1: ethernet@1f620000 {
7698c2ecf20Sopenharmony_ci			compatible = "apm,xgene2-xgenet";
7708c2ecf20Sopenharmony_ci			status = "disabled";
7718c2ecf20Sopenharmony_ci			reg = <0x0 0x1f620000 0x0 0x10000>,
7728c2ecf20Sopenharmony_ci			      <0x0 0x1f600000 0x0 0xd100>,
7738c2ecf20Sopenharmony_ci			      <0x0 0x20000000 0x0 0x220000>;
7748c2ecf20Sopenharmony_ci			interrupts = <0 108 4>,
7758c2ecf20Sopenharmony_ci				     <0 109 4>,
7768c2ecf20Sopenharmony_ci				     <0 110 4>,
7778c2ecf20Sopenharmony_ci				     <0 111 4>,
7788c2ecf20Sopenharmony_ci				     <0 112 4>,
7798c2ecf20Sopenharmony_ci				     <0 113 4>,
7808c2ecf20Sopenharmony_ci				     <0 114 4>,
7818c2ecf20Sopenharmony_ci				     <0 115 4>;
7828c2ecf20Sopenharmony_ci			channel = <12>;
7838c2ecf20Sopenharmony_ci			port-id = <1>;
7848c2ecf20Sopenharmony_ci			dma-coherent;
7858c2ecf20Sopenharmony_ci			clocks = <&xge1clk 0>;
7868c2ecf20Sopenharmony_ci			local-mac-address = [00 01 73 00 00 02];
7878c2ecf20Sopenharmony_ci			phy-connection-type = "xgmii";
7888c2ecf20Sopenharmony_ci		};
7898c2ecf20Sopenharmony_ci
7908c2ecf20Sopenharmony_ci		rng: rng@10520000 {
7918c2ecf20Sopenharmony_ci			compatible = "apm,xgene-rng";
7928c2ecf20Sopenharmony_ci			reg = <0x0 0x10520000 0x0 0x100>;
7938c2ecf20Sopenharmony_ci			interrupts = <0x0 0x41 0x4>;
7948c2ecf20Sopenharmony_ci			clocks = <&rngpkaclk 0>;
7958c2ecf20Sopenharmony_ci		};
7968c2ecf20Sopenharmony_ci
7978c2ecf20Sopenharmony_ci		i2c1: i2c@10511000 {
7988c2ecf20Sopenharmony_ci			#address-cells = <1>;
7998c2ecf20Sopenharmony_ci			#size-cells = <0>;
8008c2ecf20Sopenharmony_ci			compatible = "snps,designware-i2c";
8018c2ecf20Sopenharmony_ci			reg = <0x0 0x10511000 0x0 0x1000>;
8028c2ecf20Sopenharmony_ci			interrupts = <0 0x45 0x4>;
8038c2ecf20Sopenharmony_ci			#clock-cells = <1>;
8048c2ecf20Sopenharmony_ci			clocks = <&sbapbclk 0>;
8058c2ecf20Sopenharmony_ci			bus_num = <1>;
8068c2ecf20Sopenharmony_ci		};
8078c2ecf20Sopenharmony_ci
8088c2ecf20Sopenharmony_ci		i2c4: i2c@10640000 {
8098c2ecf20Sopenharmony_ci			#address-cells = <1>;
8108c2ecf20Sopenharmony_ci			#size-cells = <0>;
8118c2ecf20Sopenharmony_ci			compatible = "snps,designware-i2c";
8128c2ecf20Sopenharmony_ci			reg = <0x0 0x10640000 0x0 0x1000>;
8138c2ecf20Sopenharmony_ci			interrupts = <0 0x3a 0x4>;
8148c2ecf20Sopenharmony_ci			clocks = <&i2c4clk 0>;
8158c2ecf20Sopenharmony_ci			bus_num = <4>;
8168c2ecf20Sopenharmony_ci		};
8178c2ecf20Sopenharmony_ci	};
8188c2ecf20Sopenharmony_ci};
819