18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Device Tree Source for the R-Car V3U (R8A779A0) SoC
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Copyright (C) 2020 Renesas Electronics Corp.
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci#include <dt-bindings/clock/r8a779a0-cpg-mssr.h>
98c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h>
108c2ecf20Sopenharmony_ci#include <dt-bindings/power/r8a779a0-sysc.h>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci/ {
138c2ecf20Sopenharmony_ci	compatible = "renesas,r8a779a0";
148c2ecf20Sopenharmony_ci	#address-cells = <2>;
158c2ecf20Sopenharmony_ci	#size-cells = <2>;
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci	cpus {
188c2ecf20Sopenharmony_ci		#address-cells = <1>;
198c2ecf20Sopenharmony_ci		#size-cells = <0>;
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci		a76_0: cpu@0 {
228c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a76";
238c2ecf20Sopenharmony_ci			reg = <0>;
248c2ecf20Sopenharmony_ci			device_type = "cpu";
258c2ecf20Sopenharmony_ci			power-domains = <&sysc R8A779A0_PD_A1E0D0C0>;
268c2ecf20Sopenharmony_ci			next-level-cache = <&L3_CA76_0>;
278c2ecf20Sopenharmony_ci		};
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci		L3_CA76_0: cache-controller-0 {
308c2ecf20Sopenharmony_ci			compatible = "cache";
318c2ecf20Sopenharmony_ci			power-domains = <&sysc R8A779A0_PD_A2E0D0>;
328c2ecf20Sopenharmony_ci			cache-unified;
338c2ecf20Sopenharmony_ci			cache-level = <3>;
348c2ecf20Sopenharmony_ci		};
358c2ecf20Sopenharmony_ci	};
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci	extal_clk: extal {
388c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
398c2ecf20Sopenharmony_ci		#clock-cells = <0>;
408c2ecf20Sopenharmony_ci		/* This value must be overridden by the board */
418c2ecf20Sopenharmony_ci		clock-frequency = <0>;
428c2ecf20Sopenharmony_ci	};
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ci	extalr_clk: extalr {
458c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
468c2ecf20Sopenharmony_ci		#clock-cells = <0>;
478c2ecf20Sopenharmony_ci		/* This value must be overridden by the board */
488c2ecf20Sopenharmony_ci		clock-frequency = <0>;
498c2ecf20Sopenharmony_ci	};
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci	pmu_a76 {
528c2ecf20Sopenharmony_ci		compatible = "arm,cortex-a76-pmu";
538c2ecf20Sopenharmony_ci		interrupts-extended = <&gic GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
548c2ecf20Sopenharmony_ci	};
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci	/* External SCIF clock - to be overridden by boards that provide it */
578c2ecf20Sopenharmony_ci	scif_clk: scif {
588c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
598c2ecf20Sopenharmony_ci		#clock-cells = <0>;
608c2ecf20Sopenharmony_ci		clock-frequency = <0>;
618c2ecf20Sopenharmony_ci	};
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci	soc: soc {
648c2ecf20Sopenharmony_ci		compatible = "simple-bus";
658c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
668c2ecf20Sopenharmony_ci		#address-cells = <2>;
678c2ecf20Sopenharmony_ci		#size-cells = <2>;
688c2ecf20Sopenharmony_ci		ranges;
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci		cpg: clock-controller@e6150000 {
718c2ecf20Sopenharmony_ci			compatible = "renesas,r8a779a0-cpg-mssr";
728c2ecf20Sopenharmony_ci			reg = <0 0xe6150000 0 0x4000>;
738c2ecf20Sopenharmony_ci			clocks = <&extal_clk>, <&extalr_clk>;
748c2ecf20Sopenharmony_ci			clock-names = "extal", "extalr";
758c2ecf20Sopenharmony_ci			#clock-cells = <2>;
768c2ecf20Sopenharmony_ci			#power-domain-cells = <0>;
778c2ecf20Sopenharmony_ci			#reset-cells = <1>;
788c2ecf20Sopenharmony_ci		};
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci		rst: reset-controller@e6160000 {
818c2ecf20Sopenharmony_ci			compatible = "renesas,r8a779a0-rst";
828c2ecf20Sopenharmony_ci			reg = <0 0xe6160000 0 0x4000>;
838c2ecf20Sopenharmony_ci		};
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci		sysc: system-controller@e6180000 {
868c2ecf20Sopenharmony_ci			compatible = "renesas,r8a779a0-sysc";
878c2ecf20Sopenharmony_ci			reg = <0 0xe6180000 0 0x4000>;
888c2ecf20Sopenharmony_ci			#power-domain-cells = <1>;
898c2ecf20Sopenharmony_ci		};
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci		scif0: serial@e6e60000 {
928c2ecf20Sopenharmony_ci			compatible = "renesas,scif-r8a779a0",
938c2ecf20Sopenharmony_ci				     "renesas,rcar-gen3-scif", "renesas,scif";
948c2ecf20Sopenharmony_ci			reg = <0 0xe6e60000 0 64>;
958c2ecf20Sopenharmony_ci			interrupts = <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>;
968c2ecf20Sopenharmony_ci			clocks = <&cpg CPG_MOD 702>,
978c2ecf20Sopenharmony_ci				 <&cpg CPG_CORE R8A779A0_CLK_S1D2>,
988c2ecf20Sopenharmony_ci				 <&scif_clk>;
998c2ecf20Sopenharmony_ci			clock-names = "fck", "brg_int", "scif_clk";
1008c2ecf20Sopenharmony_ci			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
1018c2ecf20Sopenharmony_ci			resets = <&cpg 702>;
1028c2ecf20Sopenharmony_ci			status = "disabled";
1038c2ecf20Sopenharmony_ci		};
1048c2ecf20Sopenharmony_ci
1058c2ecf20Sopenharmony_ci		gic: interrupt-controller@f1000000 {
1068c2ecf20Sopenharmony_ci			compatible = "arm,gic-v3";
1078c2ecf20Sopenharmony_ci			#interrupt-cells = <3>;
1088c2ecf20Sopenharmony_ci			#address-cells = <0>;
1098c2ecf20Sopenharmony_ci			interrupt-controller;
1108c2ecf20Sopenharmony_ci			reg = <0x0 0xf1000000 0 0x20000>,
1118c2ecf20Sopenharmony_ci			      <0x0 0xf1060000 0 0x110000>;
1128c2ecf20Sopenharmony_ci			interrupts = <GIC_PPI 9
1138c2ecf20Sopenharmony_ci				      (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_HIGH)>;
1148c2ecf20Sopenharmony_ci		};
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ci		prr: chipid@fff00044 {
1178c2ecf20Sopenharmony_ci			compatible = "renesas,prr";
1188c2ecf20Sopenharmony_ci			reg = <0 0xfff00044 0 4>;
1198c2ecf20Sopenharmony_ci		};
1208c2ecf20Sopenharmony_ci	};
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ci	timer {
1238c2ecf20Sopenharmony_ci		compatible = "arm,armv8-timer";
1248c2ecf20Sopenharmony_ci		interrupts-extended = <&gic GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
1258c2ecf20Sopenharmony_ci				      <&gic GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
1268c2ecf20Sopenharmony_ci				      <&gic GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
1278c2ecf20Sopenharmony_ci				      <&gic GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>;
1288c2ecf20Sopenharmony_ci	};
1298c2ecf20Sopenharmony_ci};
130