xref: /freebsd-src/sys/contrib/device-tree/src/arm64/exynos/exynosautov920.dtsi (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
18d13bc63SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
28d13bc63SEmmanuel Vadot/*
38d13bc63SEmmanuel Vadot * Samsung's ExynosAutov920 SoC device tree source
48d13bc63SEmmanuel Vadot *
58d13bc63SEmmanuel Vadot * Copyright (c) 2023 Samsung Electronics Co., Ltd.
68d13bc63SEmmanuel Vadot *
78d13bc63SEmmanuel Vadot */
88d13bc63SEmmanuel Vadot
9*b2d2a78aSEmmanuel Vadot#include <dt-bindings/clock/samsung,exynosautov920.h>
108d13bc63SEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
118d13bc63SEmmanuel Vadot#include <dt-bindings/soc/samsung,exynos-usi.h>
128d13bc63SEmmanuel Vadot
138d13bc63SEmmanuel Vadot/ {
148d13bc63SEmmanuel Vadot	compatible = "samsung,exynosautov920";
158d13bc63SEmmanuel Vadot	#address-cells = <2>;
168d13bc63SEmmanuel Vadot	#size-cells = <1>;
178d13bc63SEmmanuel Vadot
188d13bc63SEmmanuel Vadot	interrupt-parent = <&gic>;
198d13bc63SEmmanuel Vadot
208d13bc63SEmmanuel Vadot	aliases {
218d13bc63SEmmanuel Vadot		pinctrl0 = &pinctrl_alive;
228d13bc63SEmmanuel Vadot		pinctrl1 = &pinctrl_aud;
238d13bc63SEmmanuel Vadot		pinctrl2 = &pinctrl_hsi0;
248d13bc63SEmmanuel Vadot		pinctrl3 = &pinctrl_hsi1;
258d13bc63SEmmanuel Vadot		pinctrl4 = &pinctrl_hsi2;
268d13bc63SEmmanuel Vadot		pinctrl5 = &pinctrl_hsi2ufs;
278d13bc63SEmmanuel Vadot		pinctrl6 = &pinctrl_peric0;
288d13bc63SEmmanuel Vadot		pinctrl7 = &pinctrl_peric1;
298d13bc63SEmmanuel Vadot	};
308d13bc63SEmmanuel Vadot
318d13bc63SEmmanuel Vadot	arm-pmu {
328d13bc63SEmmanuel Vadot		compatible = "arm,cortex-a78-pmu";
338d13bc63SEmmanuel Vadot		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
348d13bc63SEmmanuel Vadot	};
358d13bc63SEmmanuel Vadot
368d13bc63SEmmanuel Vadot	xtcxo: clock {
378d13bc63SEmmanuel Vadot		compatible = "fixed-clock";
388d13bc63SEmmanuel Vadot		#clock-cells = <0>;
398d13bc63SEmmanuel Vadot		clock-output-names = "oscclk";
408d13bc63SEmmanuel Vadot	};
418d13bc63SEmmanuel Vadot
428d13bc63SEmmanuel Vadot	cpus: cpus {
438d13bc63SEmmanuel Vadot		#address-cells = <2>;
448d13bc63SEmmanuel Vadot		#size-cells = <0>;
458d13bc63SEmmanuel Vadot
468d13bc63SEmmanuel Vadot		cpu-map {
478d13bc63SEmmanuel Vadot			cluster0 {
488d13bc63SEmmanuel Vadot				core0 {
498d13bc63SEmmanuel Vadot					cpu = <&cpu0>;
508d13bc63SEmmanuel Vadot				};
518d13bc63SEmmanuel Vadot				core1 {
528d13bc63SEmmanuel Vadot					cpu = <&cpu1>;
538d13bc63SEmmanuel Vadot				};
548d13bc63SEmmanuel Vadot				core2 {
558d13bc63SEmmanuel Vadot					cpu = <&cpu2>;
568d13bc63SEmmanuel Vadot				};
578d13bc63SEmmanuel Vadot				core3 {
588d13bc63SEmmanuel Vadot					cpu = <&cpu3>;
598d13bc63SEmmanuel Vadot				};
608d13bc63SEmmanuel Vadot			};
618d13bc63SEmmanuel Vadot
628d13bc63SEmmanuel Vadot			cluster1 {
638d13bc63SEmmanuel Vadot				core0 {
648d13bc63SEmmanuel Vadot					cpu = <&cpu4>;
658d13bc63SEmmanuel Vadot				};
668d13bc63SEmmanuel Vadot				core1 {
678d13bc63SEmmanuel Vadot					cpu = <&cpu5>;
688d13bc63SEmmanuel Vadot				};
698d13bc63SEmmanuel Vadot				core2 {
708d13bc63SEmmanuel Vadot					cpu = <&cpu6>;
718d13bc63SEmmanuel Vadot				};
728d13bc63SEmmanuel Vadot				core3 {
738d13bc63SEmmanuel Vadot					cpu = <&cpu7>;
748d13bc63SEmmanuel Vadot				};
758d13bc63SEmmanuel Vadot			};
768d13bc63SEmmanuel Vadot
778d13bc63SEmmanuel Vadot			cluster2 {
788d13bc63SEmmanuel Vadot				core0 {
798d13bc63SEmmanuel Vadot					cpu = <&cpu8>;
808d13bc63SEmmanuel Vadot				};
818d13bc63SEmmanuel Vadot				core1 {
828d13bc63SEmmanuel Vadot					cpu = <&cpu9>;
838d13bc63SEmmanuel Vadot				};
848d13bc63SEmmanuel Vadot			};
858d13bc63SEmmanuel Vadot		};
868d13bc63SEmmanuel Vadot
878d13bc63SEmmanuel Vadot		cpu0: cpu@0 {
888d13bc63SEmmanuel Vadot			device_type = "cpu";
898d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
908d13bc63SEmmanuel Vadot			reg = <0x0 0x0>;
918d13bc63SEmmanuel Vadot			enable-method = "psci";
928d13bc63SEmmanuel Vadot		};
938d13bc63SEmmanuel Vadot
948d13bc63SEmmanuel Vadot		cpu1: cpu@100 {
958d13bc63SEmmanuel Vadot			device_type = "cpu";
968d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
978d13bc63SEmmanuel Vadot			reg = <0x0 0x100>;
988d13bc63SEmmanuel Vadot			enable-method = "psci";
998d13bc63SEmmanuel Vadot		};
1008d13bc63SEmmanuel Vadot
1018d13bc63SEmmanuel Vadot		cpu2: cpu@200 {
1028d13bc63SEmmanuel Vadot			device_type = "cpu";
1038d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1048d13bc63SEmmanuel Vadot			reg = <0x0 0x200>;
1058d13bc63SEmmanuel Vadot			enable-method = "psci";
1068d13bc63SEmmanuel Vadot		};
1078d13bc63SEmmanuel Vadot
1088d13bc63SEmmanuel Vadot		cpu3: cpu@300 {
1098d13bc63SEmmanuel Vadot			device_type = "cpu";
1108d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1118d13bc63SEmmanuel Vadot			reg = <0x0 0x300>;
1128d13bc63SEmmanuel Vadot			enable-method = "psci";
1138d13bc63SEmmanuel Vadot		};
1148d13bc63SEmmanuel Vadot
1158d13bc63SEmmanuel Vadot		cpu4: cpu@10000 {
1168d13bc63SEmmanuel Vadot			device_type = "cpu";
1178d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1188d13bc63SEmmanuel Vadot			reg = <0x0 0x10000>;
1198d13bc63SEmmanuel Vadot			enable-method = "psci";
1208d13bc63SEmmanuel Vadot		};
1218d13bc63SEmmanuel Vadot
1228d13bc63SEmmanuel Vadot		cpu5: cpu@10100 {
1238d13bc63SEmmanuel Vadot			device_type = "cpu";
1248d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1258d13bc63SEmmanuel Vadot			reg = <0x0 0x10100>;
1268d13bc63SEmmanuel Vadot			enable-method = "psci";
1278d13bc63SEmmanuel Vadot		};
1288d13bc63SEmmanuel Vadot
1298d13bc63SEmmanuel Vadot		cpu6: cpu@10200 {
1308d13bc63SEmmanuel Vadot			device_type = "cpu";
1318d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1328d13bc63SEmmanuel Vadot			reg = <0x0 0x10200>;
1338d13bc63SEmmanuel Vadot			enable-method = "psci";
1348d13bc63SEmmanuel Vadot		};
1358d13bc63SEmmanuel Vadot
1368d13bc63SEmmanuel Vadot		cpu7: cpu@10300 {
1378d13bc63SEmmanuel Vadot			device_type = "cpu";
1388d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1398d13bc63SEmmanuel Vadot			reg = <0x0 0x10300>;
1408d13bc63SEmmanuel Vadot			enable-method = "psci";
1418d13bc63SEmmanuel Vadot		};
1428d13bc63SEmmanuel Vadot
1438d13bc63SEmmanuel Vadot		cpu8: cpu@20000 {
1448d13bc63SEmmanuel Vadot			device_type = "cpu";
1458d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1468d13bc63SEmmanuel Vadot			reg = <0x0 0x20000>;
1478d13bc63SEmmanuel Vadot			enable-method = "psci";
1488d13bc63SEmmanuel Vadot		};
1498d13bc63SEmmanuel Vadot
1508d13bc63SEmmanuel Vadot		cpu9: cpu@20100 {
1518d13bc63SEmmanuel Vadot			device_type = "cpu";
1528d13bc63SEmmanuel Vadot			compatible = "arm,cortex-a78ae";
1538d13bc63SEmmanuel Vadot			reg = <0x0 0x20100>;
1548d13bc63SEmmanuel Vadot			enable-method = "psci";
1558d13bc63SEmmanuel Vadot		};
1568d13bc63SEmmanuel Vadot	};
1578d13bc63SEmmanuel Vadot
1588d13bc63SEmmanuel Vadot	psci {
1598d13bc63SEmmanuel Vadot		compatible = "arm,psci-1.0";
1608d13bc63SEmmanuel Vadot		method = "smc";
1618d13bc63SEmmanuel Vadot	};
1628d13bc63SEmmanuel Vadot
1638d13bc63SEmmanuel Vadot	soc: soc@0 {
1648d13bc63SEmmanuel Vadot		compatible = "simple-bus";
1658d13bc63SEmmanuel Vadot		#address-cells = <1>;
1668d13bc63SEmmanuel Vadot		#size-cells = <1>;
1678d13bc63SEmmanuel Vadot		ranges = <0x0 0x0 0x0 0x20000000>;
1688d13bc63SEmmanuel Vadot
1698d13bc63SEmmanuel Vadot		chipid@10000000 {
1708d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-chipid",
1718d13bc63SEmmanuel Vadot				     "samsung,exynos850-chipid";
1728d13bc63SEmmanuel Vadot			reg = <0x10000000 0x24>;
1738d13bc63SEmmanuel Vadot		};
1748d13bc63SEmmanuel Vadot
1758d13bc63SEmmanuel Vadot		gic: interrupt-controller@10400000 {
1768d13bc63SEmmanuel Vadot			compatible = "arm,gic-v3";
1778d13bc63SEmmanuel Vadot			#interrupt-cells = <3>;
1788d13bc63SEmmanuel Vadot			#address-cells = <0>;
1798d13bc63SEmmanuel Vadot			interrupt-controller;
1808d13bc63SEmmanuel Vadot			reg = <0x10400000 0x10000>,
1818d13bc63SEmmanuel Vadot			      <0x10460000 0x140000>;
1828d13bc63SEmmanuel Vadot			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
1838d13bc63SEmmanuel Vadot		};
1848d13bc63SEmmanuel Vadot
185*b2d2a78aSEmmanuel Vadot		cmu_peric0: clock-controller@10800000 {
186*b2d2a78aSEmmanuel Vadot			compatible = "samsung,exynosautov920-cmu-peric0";
187*b2d2a78aSEmmanuel Vadot			reg = <0x10800000 0x8000>;
188*b2d2a78aSEmmanuel Vadot			#clock-cells = <1>;
189*b2d2a78aSEmmanuel Vadot
190*b2d2a78aSEmmanuel Vadot			clocks = <&xtcxo>,
191*b2d2a78aSEmmanuel Vadot				 <&cmu_top DOUT_CLKCMU_PERIC0_NOC>,
192*b2d2a78aSEmmanuel Vadot				 <&cmu_top DOUT_CLKCMU_PERIC0_IP>;
193*b2d2a78aSEmmanuel Vadot			clock-names = "oscclk",
194*b2d2a78aSEmmanuel Vadot				      "noc",
195*b2d2a78aSEmmanuel Vadot				      "ip";
196*b2d2a78aSEmmanuel Vadot		};
197*b2d2a78aSEmmanuel Vadot
1988d13bc63SEmmanuel Vadot		syscon_peric0: syscon@10820000 {
1998d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-peric0-sysreg",
2008d13bc63SEmmanuel Vadot				     "syscon";
2018d13bc63SEmmanuel Vadot			reg = <0x10820000 0x2000>;
2028d13bc63SEmmanuel Vadot		};
2038d13bc63SEmmanuel Vadot
2048d13bc63SEmmanuel Vadot		pinctrl_peric0: pinctrl@10830000 {
2058d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
2068d13bc63SEmmanuel Vadot			reg = <0x10830000 0x10000>;
2078d13bc63SEmmanuel Vadot			interrupts = <GIC_SPI 753 IRQ_TYPE_LEVEL_HIGH>;
2088d13bc63SEmmanuel Vadot		};
2098d13bc63SEmmanuel Vadot
2108d13bc63SEmmanuel Vadot		usi_0: usi@108800c0 {
2118d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-usi",
2128d13bc63SEmmanuel Vadot				     "samsung,exynos850-usi";
2138d13bc63SEmmanuel Vadot			reg = <0x108800c0 0x20>;
2148d13bc63SEmmanuel Vadot			samsung,sysreg = <&syscon_peric0 0x1000>;
2158d13bc63SEmmanuel Vadot			samsung,mode = <USI_V2_UART>;
2168d13bc63SEmmanuel Vadot			#address-cells = <1>;
2178d13bc63SEmmanuel Vadot			#size-cells = <1>;
2188d13bc63SEmmanuel Vadot			ranges;
219*b2d2a78aSEmmanuel Vadot			clocks = <&cmu_peric0 CLK_MOUT_PERIC0_NOC_USER>,
220*b2d2a78aSEmmanuel Vadot				 <&cmu_peric0 CLK_DOUT_PERIC0_USI00_USI>;
2218d13bc63SEmmanuel Vadot			clock-names = "pclk", "ipclk";
2228d13bc63SEmmanuel Vadot			status = "disabled";
2238d13bc63SEmmanuel Vadot
2248d13bc63SEmmanuel Vadot			serial_0: serial@10880000 {
2258d13bc63SEmmanuel Vadot				compatible = "samsung,exynosautov920-uart",
2268d13bc63SEmmanuel Vadot					     "samsung,exynos850-uart";
2278d13bc63SEmmanuel Vadot				reg = <0x10880000 0xc0>;
2288d13bc63SEmmanuel Vadot				interrupts = <GIC_SPI 764 IRQ_TYPE_LEVEL_HIGH>;
2298d13bc63SEmmanuel Vadot				pinctrl-names = "default";
2308d13bc63SEmmanuel Vadot				pinctrl-0 = <&uart0_bus>;
231*b2d2a78aSEmmanuel Vadot				clocks = <&cmu_peric0 CLK_MOUT_PERIC0_NOC_USER>,
232*b2d2a78aSEmmanuel Vadot					 <&cmu_peric0 CLK_DOUT_PERIC0_USI00_USI>;
2338d13bc63SEmmanuel Vadot				clock-names = "uart", "clk_uart_baud0";
2348d13bc63SEmmanuel Vadot				samsung,uart-fifosize = <256>;
2358d13bc63SEmmanuel Vadot				status = "disabled";
2368d13bc63SEmmanuel Vadot			};
2378d13bc63SEmmanuel Vadot		};
2388d13bc63SEmmanuel Vadot
2398d13bc63SEmmanuel Vadot		pwm: pwm@109b0000 {
2408d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pwm",
2418d13bc63SEmmanuel Vadot				     "samsung,exynos4210-pwm";
2428d13bc63SEmmanuel Vadot			reg = <0x109b0000 0x100>;
2438d13bc63SEmmanuel Vadot			samsung,pwm-outputs = <0>, <1>, <2>, <3>;
2448d13bc63SEmmanuel Vadot			#pwm-cells = <3>;
2458d13bc63SEmmanuel Vadot			clocks = <&xtcxo>;
2468d13bc63SEmmanuel Vadot			clock-names = "timers";
2478d13bc63SEmmanuel Vadot			status = "disabled";
2488d13bc63SEmmanuel Vadot		};
2498d13bc63SEmmanuel Vadot
2508d13bc63SEmmanuel Vadot		syscon_peric1: syscon@10c20000 {
2518d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-peric1-sysreg",
2528d13bc63SEmmanuel Vadot				     "syscon";
2538d13bc63SEmmanuel Vadot			reg = <0x10c20000 0x2000>;
2548d13bc63SEmmanuel Vadot		};
2558d13bc63SEmmanuel Vadot
2568d13bc63SEmmanuel Vadot		pinctrl_peric1: pinctrl@10c30000 {
2578d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
2588d13bc63SEmmanuel Vadot			reg = <0x10c30000 0x10000>;
2598d13bc63SEmmanuel Vadot			interrupts = <GIC_SPI 781 IRQ_TYPE_LEVEL_HIGH>;
2608d13bc63SEmmanuel Vadot		};
2618d13bc63SEmmanuel Vadot
262*b2d2a78aSEmmanuel Vadot		cmu_top: clock-controller@11000000 {
263*b2d2a78aSEmmanuel Vadot			compatible = "samsung,exynosautov920-cmu-top";
264*b2d2a78aSEmmanuel Vadot			reg = <0x11000000 0x8000>;
265*b2d2a78aSEmmanuel Vadot			#clock-cells = <1>;
266*b2d2a78aSEmmanuel Vadot
267*b2d2a78aSEmmanuel Vadot			clocks = <&xtcxo>;
268*b2d2a78aSEmmanuel Vadot			clock-names = "oscclk";
269*b2d2a78aSEmmanuel Vadot		};
270*b2d2a78aSEmmanuel Vadot
2718d13bc63SEmmanuel Vadot		pinctrl_alive: pinctrl@11850000 {
2728d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
2738d13bc63SEmmanuel Vadot			reg = <0x11850000 0x10000>;
2748d13bc63SEmmanuel Vadot
2758d13bc63SEmmanuel Vadot			wakeup-interrupt-controller {
2768d13bc63SEmmanuel Vadot				compatible = "samsung,exynosautov920-wakeup-eint";
2778d13bc63SEmmanuel Vadot			};
2788d13bc63SEmmanuel Vadot		};
2798d13bc63SEmmanuel Vadot
2808d13bc63SEmmanuel Vadot		pmu_system_controller: system-controller@11860000 {
2818d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pmu",
2828d13bc63SEmmanuel Vadot				     "samsung,exynos7-pmu","syscon";
2838d13bc63SEmmanuel Vadot			reg = <0x11860000 0x10000>;
2848d13bc63SEmmanuel Vadot		};
2858d13bc63SEmmanuel Vadot
2868d13bc63SEmmanuel Vadot		pinctrl_hsi0: pinctrl@16040000 {
2878d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
2888d13bc63SEmmanuel Vadot			reg = <0x16040000 0x10000>;
2898d13bc63SEmmanuel Vadot			interrupts = <GIC_SPI 442 IRQ_TYPE_LEVEL_HIGH>;
2908d13bc63SEmmanuel Vadot		};
2918d13bc63SEmmanuel Vadot
2928d13bc63SEmmanuel Vadot		pinctrl_hsi1: pinctrl@16450000 {
2938d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
2948d13bc63SEmmanuel Vadot			reg = <0x16450000 0x10000>;
2958d13bc63SEmmanuel Vadot			interrupts = <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>;
2968d13bc63SEmmanuel Vadot		};
2978d13bc63SEmmanuel Vadot
2988d13bc63SEmmanuel Vadot		pinctrl_hsi2: pinctrl@16c10000 {
2998d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
3008d13bc63SEmmanuel Vadot			reg = <0x16c10000 0x10000>;
3018d13bc63SEmmanuel Vadot			interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
3028d13bc63SEmmanuel Vadot		};
3038d13bc63SEmmanuel Vadot
3048d13bc63SEmmanuel Vadot		pinctrl_hsi2ufs: pinctrl@16d20000 {
3058d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
3068d13bc63SEmmanuel Vadot			reg = <0x16d20000 0x10000>;
3078d13bc63SEmmanuel Vadot			interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
3088d13bc63SEmmanuel Vadot		};
3098d13bc63SEmmanuel Vadot
3108d13bc63SEmmanuel Vadot		pinctrl_aud: pinctrl@1a460000 {
3118d13bc63SEmmanuel Vadot			compatible = "samsung,exynosautov920-pinctrl";
3128d13bc63SEmmanuel Vadot			reg = <0x1a460000 0x10000>;
3138d13bc63SEmmanuel Vadot		};
3148d13bc63SEmmanuel Vadot	};
3158d13bc63SEmmanuel Vadot
3168d13bc63SEmmanuel Vadot	timer {
3178d13bc63SEmmanuel Vadot		compatible = "arm,armv8-timer";
3188d13bc63SEmmanuel Vadot		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
3198d13bc63SEmmanuel Vadot			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
3208d13bc63SEmmanuel Vadot			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
3218d13bc63SEmmanuel Vadot			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>,
3228d13bc63SEmmanuel Vadot			     <GIC_PPI 12 IRQ_TYPE_LEVEL_LOW>;
3238d13bc63SEmmanuel Vadot	};
3248d13bc63SEmmanuel Vadot};
3258d13bc63SEmmanuel Vadot
3268d13bc63SEmmanuel Vadot#include "exynosautov920-pinctrl.dtsi"
327