xref: /linux/scripts/dtc/include-prefixes/arm64/realtek/rtd139x.dtsi (revision 769c00a2f10b4f43fe764077a48d9a594010686b)
1*769c00a2SAndreas Färber// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)
2*769c00a2SAndreas Färber/*
3*769c00a2SAndreas Färber * Realtek RTD1395 SoC family
4*769c00a2SAndreas Färber *
5*769c00a2SAndreas Färber * Copyright (c) 2019 Andreas Färber
6*769c00a2SAndreas Färber */
7*769c00a2SAndreas Färber
8*769c00a2SAndreas Färber/memreserve/	0x0000000000000000 0x000000000002f000;
9*769c00a2SAndreas Färber/memreserve/	0x000000000002f000 0x00000000000d1000;
10*769c00a2SAndreas Färber
11*769c00a2SAndreas Färber#include <dt-bindings/interrupt-controller/arm-gic.h>
12*769c00a2SAndreas Färber#include <dt-bindings/reset/realtek,rtd1295.h>
13*769c00a2SAndreas Färber
14*769c00a2SAndreas Färber/ {
15*769c00a2SAndreas Färber	interrupt-parent = <&gic>;
16*769c00a2SAndreas Färber	#address-cells = <1>;
17*769c00a2SAndreas Färber	#size-cells = <1>;
18*769c00a2SAndreas Färber
19*769c00a2SAndreas Färber	reserved-memory {
20*769c00a2SAndreas Färber		#address-cells = <1>;
21*769c00a2SAndreas Färber		#size-cells = <1>;
22*769c00a2SAndreas Färber		ranges;
23*769c00a2SAndreas Färber
24*769c00a2SAndreas Färber		rpc_comm: rpc@2f000 {
25*769c00a2SAndreas Färber			reg = <0x2f000 0x1000>;
26*769c00a2SAndreas Färber		};
27*769c00a2SAndreas Färber
28*769c00a2SAndreas Färber		rpc_ringbuf: rpc@1ffe000 {
29*769c00a2SAndreas Färber			reg = <0x1ffe000 0x4000>;
30*769c00a2SAndreas Färber		};
31*769c00a2SAndreas Färber
32*769c00a2SAndreas Färber		tee: tee@10100000 {
33*769c00a2SAndreas Färber			reg = <0x10100000 0xf00000>;
34*769c00a2SAndreas Färber			no-map;
35*769c00a2SAndreas Färber		};
36*769c00a2SAndreas Färber	};
37*769c00a2SAndreas Färber
38*769c00a2SAndreas Färber	arm_pmu: arm-pmu {
39*769c00a2SAndreas Färber		compatible = "arm,cortex-a53-pmu";
40*769c00a2SAndreas Färber		interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
41*769c00a2SAndreas Färber	};
42*769c00a2SAndreas Färber
43*769c00a2SAndreas Färber	osc27M: osc {
44*769c00a2SAndreas Färber		compatible = "fixed-clock";
45*769c00a2SAndreas Färber		clock-frequency = <27000000>;
46*769c00a2SAndreas Färber		#clock-cells = <0>;
47*769c00a2SAndreas Färber		clock-output-names = "osc27M";
48*769c00a2SAndreas Färber	};
49*769c00a2SAndreas Färber
50*769c00a2SAndreas Färber	soc {
51*769c00a2SAndreas Färber		compatible = "simple-bus";
52*769c00a2SAndreas Färber		#address-cells = <1>;
53*769c00a2SAndreas Färber		#size-cells = <1>;
54*769c00a2SAndreas Färber		ranges = <0x00000000 0x00000000 0x0001f000>, /* boot ROM */
55*769c00a2SAndreas Färber			 <0x98000000 0x98000000 0x68000000>;
56*769c00a2SAndreas Färber
57*769c00a2SAndreas Färber		rbus: bus@98000000 {
58*769c00a2SAndreas Färber			compatible = "simple-bus";
59*769c00a2SAndreas Färber			reg = <0x98000000 0x200000>;
60*769c00a2SAndreas Färber			#address-cells = <1>;
61*769c00a2SAndreas Färber			#size-cells = <1>;
62*769c00a2SAndreas Färber			ranges = <0x0 0x98000000 0x200000>;
63*769c00a2SAndreas Färber
64*769c00a2SAndreas Färber			reset1: reset-controller@0 {
65*769c00a2SAndreas Färber				compatible = "snps,dw-low-reset";
66*769c00a2SAndreas Färber				reg = <0x0 0x4>;
67*769c00a2SAndreas Färber				#reset-cells = <1>;
68*769c00a2SAndreas Färber			};
69*769c00a2SAndreas Färber
70*769c00a2SAndreas Färber			reset2: reset-controller@4 {
71*769c00a2SAndreas Färber				compatible = "snps,dw-low-reset";
72*769c00a2SAndreas Färber				reg = <0x4 0x4>;
73*769c00a2SAndreas Färber				#reset-cells = <1>;
74*769c00a2SAndreas Färber			};
75*769c00a2SAndreas Färber
76*769c00a2SAndreas Färber			reset3: reset-controller@8 {
77*769c00a2SAndreas Färber				compatible = "snps,dw-low-reset";
78*769c00a2SAndreas Färber				reg = <0x8 0x4>;
79*769c00a2SAndreas Färber				#reset-cells = <1>;
80*769c00a2SAndreas Färber			};
81*769c00a2SAndreas Färber
82*769c00a2SAndreas Färber			reset4: reset-controller@50 {
83*769c00a2SAndreas Färber				compatible = "snps,dw-low-reset";
84*769c00a2SAndreas Färber				reg = <0x50 0x4>;
85*769c00a2SAndreas Färber				#reset-cells = <1>;
86*769c00a2SAndreas Färber			};
87*769c00a2SAndreas Färber
88*769c00a2SAndreas Färber			iso_reset: reset-controller@7088 {
89*769c00a2SAndreas Färber				compatible = "snps,dw-low-reset";
90*769c00a2SAndreas Färber				reg = <0x7088 0x4>;
91*769c00a2SAndreas Färber				#reset-cells = <1>;
92*769c00a2SAndreas Färber			};
93*769c00a2SAndreas Färber
94*769c00a2SAndreas Färber			wdt: watchdog@7680 {
95*769c00a2SAndreas Färber				compatible = "realtek,rtd1295-watchdog";
96*769c00a2SAndreas Färber				reg = <0x7680 0x100>;
97*769c00a2SAndreas Färber				clocks = <&osc27M>;
98*769c00a2SAndreas Färber			};
99*769c00a2SAndreas Färber
100*769c00a2SAndreas Färber			uart0: serial@7800 {
101*769c00a2SAndreas Färber				compatible = "snps,dw-apb-uart";
102*769c00a2SAndreas Färber				reg = <0x7800 0x400>;
103*769c00a2SAndreas Färber				reg-shift = <2>;
104*769c00a2SAndreas Färber				reg-io-width = <4>;
105*769c00a2SAndreas Färber				clock-frequency = <27000000>;
106*769c00a2SAndreas Färber				resets = <&iso_reset RTD1295_ISO_RSTN_UR0>;
107*769c00a2SAndreas Färber				status = "disabled";
108*769c00a2SAndreas Färber			};
109*769c00a2SAndreas Färber
110*769c00a2SAndreas Färber			uart1: serial@1b200 {
111*769c00a2SAndreas Färber				compatible = "snps,dw-apb-uart";
112*769c00a2SAndreas Färber				reg = <0x1b200 0x100>;
113*769c00a2SAndreas Färber				reg-shift = <2>;
114*769c00a2SAndreas Färber				reg-io-width = <4>;
115*769c00a2SAndreas Färber				clock-frequency = <432000000>;
116*769c00a2SAndreas Färber				resets = <&reset2 RTD1295_RSTN_UR1>;
117*769c00a2SAndreas Färber				status = "disabled";
118*769c00a2SAndreas Färber			};
119*769c00a2SAndreas Färber
120*769c00a2SAndreas Färber			uart2: serial@1b400 {
121*769c00a2SAndreas Färber				compatible = "snps,dw-apb-uart";
122*769c00a2SAndreas Färber				reg = <0x1b400 0x100>;
123*769c00a2SAndreas Färber				reg-shift = <2>;
124*769c00a2SAndreas Färber				reg-io-width = <4>;
125*769c00a2SAndreas Färber				clock-frequency = <432000000>;
126*769c00a2SAndreas Färber				resets = <&reset2 RTD1295_RSTN_UR2>;
127*769c00a2SAndreas Färber				status = "disabled";
128*769c00a2SAndreas Färber			};
129*769c00a2SAndreas Färber		};
130*769c00a2SAndreas Färber
131*769c00a2SAndreas Färber		gic: interrupt-controller@ff011000 {
132*769c00a2SAndreas Färber			compatible = "arm,gic-400";
133*769c00a2SAndreas Färber			reg = <0xff011000 0x1000>,
134*769c00a2SAndreas Färber			      <0xff012000 0x2000>,
135*769c00a2SAndreas Färber			      <0xff014000 0x2000>,
136*769c00a2SAndreas Färber			      <0xff016000 0x2000>;
137*769c00a2SAndreas Färber			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
138*769c00a2SAndreas Färber			interrupt-controller;
139*769c00a2SAndreas Färber			#interrupt-cells = <3>;
140*769c00a2SAndreas Färber		};
141*769c00a2SAndreas Färber	};
142*769c00a2SAndreas Färber};
143