xref: /freebsd/sys/contrib/device-tree/src/arm64/nuvoton/nuvoton-npcm845.dtsi (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1b97ee269SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2b97ee269SEmmanuel Vadot// Copyright (c) 2021 Nuvoton Technology tomer.maimon@nuvoton.com
3b97ee269SEmmanuel Vadot
4b97ee269SEmmanuel Vadot#include "nuvoton-common-npcm8xx.dtsi"
5b97ee269SEmmanuel Vadot
6b97ee269SEmmanuel Vadot/ {
7b97ee269SEmmanuel Vadot	#address-cells = <2>;
8b97ee269SEmmanuel Vadot	#size-cells = <2>;
9b97ee269SEmmanuel Vadot
10b97ee269SEmmanuel Vadot	cpus {
11b97ee269SEmmanuel Vadot		#address-cells = <2>;
12b97ee269SEmmanuel Vadot		#size-cells = <0>;
13b97ee269SEmmanuel Vadot
14b97ee269SEmmanuel Vadot		cpu0: cpu@0 {
15b97ee269SEmmanuel Vadot			device_type = "cpu";
16b97ee269SEmmanuel Vadot			compatible = "arm,cortex-a35";
17b97ee269SEmmanuel Vadot			clocks = <&clk NPCM8XX_CLK_CPU>;
18b97ee269SEmmanuel Vadot			reg = <0x0 0x0>;
19b97ee269SEmmanuel Vadot			next-level-cache = <&l2>;
20b97ee269SEmmanuel Vadot			enable-method = "psci";
21b97ee269SEmmanuel Vadot		};
22b97ee269SEmmanuel Vadot
23b97ee269SEmmanuel Vadot		cpu1: cpu@1 {
24b97ee269SEmmanuel Vadot			device_type = "cpu";
25b97ee269SEmmanuel Vadot			compatible = "arm,cortex-a35";
26b97ee269SEmmanuel Vadot			clocks = <&clk NPCM8XX_CLK_CPU>;
27b97ee269SEmmanuel Vadot			reg = <0x0 0x1>;
28b97ee269SEmmanuel Vadot			next-level-cache = <&l2>;
29b97ee269SEmmanuel Vadot			enable-method = "psci";
30b97ee269SEmmanuel Vadot		};
31b97ee269SEmmanuel Vadot
32b97ee269SEmmanuel Vadot		cpu2: cpu@2 {
33b97ee269SEmmanuel Vadot			device_type = "cpu";
34b97ee269SEmmanuel Vadot			compatible = "arm,cortex-a35";
35b97ee269SEmmanuel Vadot			clocks = <&clk NPCM8XX_CLK_CPU>;
36b97ee269SEmmanuel Vadot			reg = <0x0 0x2>;
37b97ee269SEmmanuel Vadot			next-level-cache = <&l2>;
38b97ee269SEmmanuel Vadot			enable-method = "psci";
39b97ee269SEmmanuel Vadot		};
40b97ee269SEmmanuel Vadot
41b97ee269SEmmanuel Vadot		cpu3: cpu@3 {
42b97ee269SEmmanuel Vadot			device_type = "cpu";
43b97ee269SEmmanuel Vadot			compatible = "arm,cortex-a35";
44b97ee269SEmmanuel Vadot			clocks = <&clk NPCM8XX_CLK_CPU>;
45b97ee269SEmmanuel Vadot			reg = <0x0 0x3>;
46b97ee269SEmmanuel Vadot			next-level-cache = <&l2>;
47b97ee269SEmmanuel Vadot			enable-method = "psci";
48b97ee269SEmmanuel Vadot		};
49b97ee269SEmmanuel Vadot
50b97ee269SEmmanuel Vadot		l2: l2-cache {
51b97ee269SEmmanuel Vadot			compatible = "cache";
52*aa1a8ff2SEmmanuel Vadot			cache-level = <2>;
53*aa1a8ff2SEmmanuel Vadot			cache-unified;
54b97ee269SEmmanuel Vadot		};
55b97ee269SEmmanuel Vadot	};
56b97ee269SEmmanuel Vadot
57b97ee269SEmmanuel Vadot	arm-pmu {
58b97ee269SEmmanuel Vadot		compatible = "arm,cortex-a35-pmu";
59b97ee269SEmmanuel Vadot		interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>,
60b97ee269SEmmanuel Vadot			     <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>,
61b97ee269SEmmanuel Vadot			     <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
62b97ee269SEmmanuel Vadot			     <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>;
63b97ee269SEmmanuel Vadot		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
64b97ee269SEmmanuel Vadot	};
65b97ee269SEmmanuel Vadot
66b97ee269SEmmanuel Vadot	psci {
67b97ee269SEmmanuel Vadot		compatible      = "arm,psci-1.0";
68b97ee269SEmmanuel Vadot		method          = "smc";
69b97ee269SEmmanuel Vadot	};
70b97ee269SEmmanuel Vadot
71b97ee269SEmmanuel Vadot	timer {
72b97ee269SEmmanuel Vadot		compatible = "arm,armv8-timer";
73b97ee269SEmmanuel Vadot		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
74b97ee269SEmmanuel Vadot			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
75b97ee269SEmmanuel Vadot			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
76b97ee269SEmmanuel Vadot			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
77b97ee269SEmmanuel Vadot	};
78b97ee269SEmmanuel Vadot};
79