Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.2.
  1// SPDX-License-Identifier: (GPL-2.0 OR MIT)
  2/*
  3 * Unisoc UMS9620 DTS file
  4 *
  5 * Copyright (C) 2023, Unisoc Inc.
  6 */
  7
  8#include <dt-bindings/interrupt-controller/arm-gic.h>
  9
 10/ {
 11	interrupt-parent = <&gic>;
 12	#address-cells = <2>;
 13	#size-cells = <2>;
 14
 15	cpus {
 16		#address-cells = <2>;
 17		#size-cells = <0>;
 18
 19		cpu-map {
 20			cluster0 {
 21				core0 {
 22					cpu = <&CPU0>;
 23				};
 24				core1 {
 25					cpu = <&CPU1>;
 26				};
 27				core2 {
 28					cpu = <&CPU2>;
 29				};
 30				core3 {
 31					cpu = <&CPU3>;
 32				};
 33				core4 {
 34					cpu = <&CPU4>;
 35				};
 36				core5 {
 37					cpu = <&CPU5>;
 38				};
 39				core6 {
 40					cpu = <&CPU6>;
 41				};
 42				core7 {
 43					cpu = <&CPU7>;
 44				};
 45			};
 46		};
 47
 48		CPU0: cpu@0 {
 49			device_type = "cpu";
 50			compatible = "arm,cortex-a55";
 51			reg = <0x0 0x0>;
 52			enable-method = "psci";
 53			cpu-idle-states = <&LIT_CORE_PD>;
 54		};
 55
 56		CPU1: cpu@100 {
 57			device_type = "cpu";
 58			compatible = "arm,cortex-a55";
 59			reg = <0x0 0x100>;
 60			enable-method = "psci";
 61			cpu-idle-states = <&LIT_CORE_PD>;
 62		};
 63
 64		CPU2: cpu@200 {
 65			device_type = "cpu";
 66			compatible = "arm,cortex-a55";
 67			reg = <0x0 0x200>;
 68			enable-method = "psci";
 69			cpu-idle-states = <&LIT_CORE_PD>;
 70		};
 71
 72		CPU3: cpu@300 {
 73			device_type = "cpu";
 74			compatible = "arm,cortex-a55";
 75			reg = <0x0 0x300>;
 76			enable-method = "psci";
 77			cpu-idle-states = <&LIT_CORE_PD>;
 78		};
 79
 80		CPU4: cpu@400 {
 81			device_type = "cpu";
 82			compatible = "arm,cortex-a76";
 83			reg = <0x0 0x400>;
 84			enable-method = "psci";
 85			cpu-idle-states = <&BIG_CORE_PD>;
 86		};
 87
 88		CPU5: cpu@500 {
 89			device_type = "cpu";
 90			compatible = "arm,cortex-a76";
 91			reg = <0x0 0x500>;
 92			enable-method = "psci";
 93			cpu-idle-states = <&BIG_CORE_PD>;
 94		};
 95
 96		CPU6: cpu@600 {
 97			device_type = "cpu";
 98			compatible = "arm,cortex-a76";
 99			reg = <0x0 0x600>;
100			enable-method = "psci";
101			cpu-idle-states = <&BIG_CORE_PD>;
102		};
103
104		CPU7: cpu@700 {
105			device_type = "cpu";
106			compatible = "arm,cortex-a76";
107			reg = <0x0 0x700>;
108			enable-method = "psci";
109			cpu-idle-states = <&BIG_CORE_PD>;
110		};
111	};
112
113	idle-states {
114		entry-method = "psci";
115		LIT_CORE_PD: cpu-pd-lit {
116			compatible = "arm,idle-state";
117			entry-latency-us = <1000>;
118			exit-latency-us = <500>;
119			min-residency-us = <2500>;
120			local-timer-stop;
121			arm,psci-suspend-param = <0x00010000>;
122		};
123
124		BIG_CORE_PD: cpu-pd-big {
125			compatible = "arm,idle-state";
126			entry-latency-us = <4000>;
127			exit-latency-us = <4000>;
128			min-residency-us = <10000>;
129			local-timer-stop;
130			arm,psci-suspend-param = <0x00010000>;
131		};
132	};
133
134	psci {
135		compatible = "arm,psci-0.2";
136		method = "smc";
137	};
138
139	timer {
140		compatible = "arm,armv8-timer";
141		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, /* Physical Secure PPI */
142			     <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, /* Physical Non-Secure PPI */
143			     <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, /* Virtual PPI */
144			     <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; /* Hipervisor PPI */
145	};
146
147	pmu-a55 {
148		compatible = "arm,cortex-a55-pmu";
149		interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>,
150			     <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
151			     <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>,
152			     <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
153		interrupt-affinity = <&CPU0>, <&CPU1>, <&CPU2>, <&CPU3>;
154	};
155
156	pmu-a76 {
157		compatible = "arm,cortex-a76-pmu";
158		interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
159			     <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
160			     <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
161			     <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
162		interrupt-affinity = <&CPU4>, <&CPU5>, <&CPU6>, <&CPU7>;
163	};
164
165	soc: soc {
166		compatible = "simple-bus";
167		ranges;
168		#address-cells = <2>;
169		#size-cells = <2>;
170
171		gic: interrupt-controller@12000000 {
172			compatible = "arm,gic-v3";
173			reg = <0x0 0x12000000 0 0x20000>,	/* GICD */
174			      <0x0 0x12040000 0 0x100000>;	/* GICR */
175			#interrupt-cells = <3>;
176			#address-cells = <2>;
177			#size-cells = <2>;
178			redistributor-stride = <0x0 0x20000>;	/* 128KB stride */
179			#redistributor-regions = <1>;
180			interrupt-controller;
181			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
182		};
183
184		apb@20200000 {
185			compatible = "simple-bus";
186			ranges = <0 0 0x20200000 0x100000>;
187			#address-cells = <1>;
188			#size-cells = <1>;
189
190			uart0: serial@0 {
191				compatible = "sprd,ums9620-uart",
192					     "sprd,sc9836-uart";
193				reg = <0 0x100>;
194				interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
195				clocks = <&ext_26m>;
196				status = "disabled";
197			};
198
199			uart1: serial@10000 {
200				compatible = "sprd,ums9620-uart",
201					     "sprd,sc9836-uart";
202				reg = <0x10000 0x100>;
203				interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
204				clocks = <&ext_26m>;
205				status = "disabled";
206			};
207		};
208	};
209
210	ext_26m: clk-26m {
211		compatible = "fixed-clock";
212		#clock-cells = <0>;
213		clock-frequency = <26000000>;
214		clock-output-names = "ext-26m";
215	};
216
217	ext_4m: clk-4m {
218		compatible = "fixed-clock";
219		#clock-cells = <0>;
220		clock-frequency = <4000000>;
221		clock-output-names = "ext-4m";
222	};
223
224	ext_32k: clk-32k {
225		compatible = "fixed-clock";
226		#clock-cells = <0>;
227		clock-frequency = <32768>;
228		clock-output-names = "ext-32k";
229	};
230
231	rco_100m: clk-100m {
232		compatible = "fixed-clock";
233		#clock-cells = <0>;
234		clock-frequency = <100000000>;
235		clock-output-names = "rco-100m";
236	};
237
238	dphy_312m5: dphy-312m5 {
239		compatible = "fixed-clock";
240		#clock-cells = <0>;
241		clock-frequency = <312500000>;
242		clock-output-names = "dphy-312m5";
243	};
244
245	dphy_416m7: dphy-416m7 {
246		compatible = "fixed-clock";
247		#clock-cells = <0>;
248		clock-frequency = <416700000>;
249		clock-output-names = "dphy-416m7";
250	};
251};