xref: /linux/arch/arm64/boot/dts/exynos/google/gs101.dtsi (revision 028a87e91fcd8c485afcf8bd0d26ae34a0872438)
1ea89fdf2SPeter Griffin// SPDX-License-Identifier: GPL-2.0-only
2ea89fdf2SPeter Griffin/*
3ea89fdf2SPeter Griffin * GS101 SoC
4ea89fdf2SPeter Griffin *
5ea89fdf2SPeter Griffin * Copyright 2019-2023 Google LLC
6ea89fdf2SPeter Griffin * Copyright 2023 Linaro Ltd - <peter.griffin@linaro.org>
7ea89fdf2SPeter Griffin */
8ea89fdf2SPeter Griffin
9ea89fdf2SPeter Griffin#include <dt-bindings/clock/google,gs101.h>
10ea89fdf2SPeter Griffin#include <dt-bindings/gpio/gpio.h>
11ea89fdf2SPeter Griffin#include <dt-bindings/interrupt-controller/arm-gic.h>
12ea89fdf2SPeter Griffin#include <dt-bindings/soc/samsung,exynos-usi.h>
13ea89fdf2SPeter Griffin
14ea89fdf2SPeter Griffin/ {
15ea89fdf2SPeter Griffin	compatible = "google,gs101";
16ea89fdf2SPeter Griffin	#address-cells = <2>;
17ea89fdf2SPeter Griffin	#size-cells = <1>;
18ea89fdf2SPeter Griffin
19ea89fdf2SPeter Griffin	interrupt-parent = <&gic>;
20ea89fdf2SPeter Griffin
21ea89fdf2SPeter Griffin	aliases {
22ea89fdf2SPeter Griffin		pinctrl0 = &pinctrl_gpio_alive;
23ea89fdf2SPeter Griffin		pinctrl1 = &pinctrl_far_alive;
24ea89fdf2SPeter Griffin		pinctrl2 = &pinctrl_gsacore;
25ea89fdf2SPeter Griffin		pinctrl3 = &pinctrl_gsactrl;
26ea89fdf2SPeter Griffin		pinctrl4 = &pinctrl_peric0;
27ea89fdf2SPeter Griffin		pinctrl5 = &pinctrl_peric1;
28ea89fdf2SPeter Griffin		pinctrl6 = &pinctrl_hsi1;
29ea89fdf2SPeter Griffin		pinctrl7 = &pinctrl_hsi2;
30ea89fdf2SPeter Griffin	};
31ea89fdf2SPeter Griffin
32ea89fdf2SPeter Griffin	cpus {
33ea89fdf2SPeter Griffin		#address-cells = <1>;
34ea89fdf2SPeter Griffin		#size-cells = <0>;
35ea89fdf2SPeter Griffin
36ea89fdf2SPeter Griffin		cpu-map {
37ea89fdf2SPeter Griffin			cluster0 {
38ea89fdf2SPeter Griffin				core0 {
39ea89fdf2SPeter Griffin					cpu = <&cpu0>;
40ea89fdf2SPeter Griffin				};
41ea89fdf2SPeter Griffin				core1 {
42ea89fdf2SPeter Griffin					cpu = <&cpu1>;
43ea89fdf2SPeter Griffin				};
44ea89fdf2SPeter Griffin				core2 {
45ea89fdf2SPeter Griffin					cpu = <&cpu2>;
46ea89fdf2SPeter Griffin				};
47ea89fdf2SPeter Griffin				core3 {
48ea89fdf2SPeter Griffin					cpu = <&cpu3>;
49ea89fdf2SPeter Griffin				};
50ea89fdf2SPeter Griffin			};
51ea89fdf2SPeter Griffin
52ea89fdf2SPeter Griffin			cluster1 {
53ea89fdf2SPeter Griffin				core0 {
54ea89fdf2SPeter Griffin					cpu = <&cpu4>;
55ea89fdf2SPeter Griffin				};
56ea89fdf2SPeter Griffin				core1 {
57ea89fdf2SPeter Griffin					cpu = <&cpu5>;
58ea89fdf2SPeter Griffin				};
59ea89fdf2SPeter Griffin			};
60ea89fdf2SPeter Griffin
61ea89fdf2SPeter Griffin			cluster2 {
62ea89fdf2SPeter Griffin				core0 {
63ea89fdf2SPeter Griffin					cpu = <&cpu6>;
64ea89fdf2SPeter Griffin				};
65ea89fdf2SPeter Griffin				core1 {
66ea89fdf2SPeter Griffin					cpu = <&cpu7>;
67ea89fdf2SPeter Griffin				};
68ea89fdf2SPeter Griffin			};
69ea89fdf2SPeter Griffin		};
70ea89fdf2SPeter Griffin
71ea89fdf2SPeter Griffin		cpu0: cpu@0 {
72ea89fdf2SPeter Griffin			device_type = "cpu";
73ea89fdf2SPeter Griffin			compatible = "arm,cortex-a55";
74ea89fdf2SPeter Griffin			reg = <0x0000>;
75ea89fdf2SPeter Griffin			enable-method = "psci";
76ea89fdf2SPeter Griffin			cpu-idle-states = <&ANANKE_CPU_SLEEP>;
77ea89fdf2SPeter Griffin			capacity-dmips-mhz = <250>;
78ea89fdf2SPeter Griffin			dynamic-power-coefficient = <70>;
79ea89fdf2SPeter Griffin		};
80ea89fdf2SPeter Griffin
81ea89fdf2SPeter Griffin		cpu1: cpu@100 {
82ea89fdf2SPeter Griffin			device_type = "cpu";
83ea89fdf2SPeter Griffin			compatible = "arm,cortex-a55";
84ea89fdf2SPeter Griffin			reg = <0x0100>;
85ea89fdf2SPeter Griffin			enable-method = "psci";
86ea89fdf2SPeter Griffin			cpu-idle-states = <&ANANKE_CPU_SLEEP>;
87ea89fdf2SPeter Griffin			capacity-dmips-mhz = <250>;
88ea89fdf2SPeter Griffin			dynamic-power-coefficient = <70>;
89ea89fdf2SPeter Griffin		};
90ea89fdf2SPeter Griffin
91ea89fdf2SPeter Griffin		cpu2: cpu@200 {
92ea89fdf2SPeter Griffin			device_type = "cpu";
93ea89fdf2SPeter Griffin			compatible = "arm,cortex-a55";
94ea89fdf2SPeter Griffin			reg = <0x0200>;
95ea89fdf2SPeter Griffin			enable-method = "psci";
96ea89fdf2SPeter Griffin			cpu-idle-states = <&ANANKE_CPU_SLEEP>;
97ea89fdf2SPeter Griffin			capacity-dmips-mhz = <250>;
98ea89fdf2SPeter Griffin			dynamic-power-coefficient = <70>;
99ea89fdf2SPeter Griffin		};
100ea89fdf2SPeter Griffin
101ea89fdf2SPeter Griffin		cpu3: cpu@300 {
102ea89fdf2SPeter Griffin			device_type = "cpu";
103ea89fdf2SPeter Griffin			compatible = "arm,cortex-a55";
104ea89fdf2SPeter Griffin			reg = <0x0300>;
105ea89fdf2SPeter Griffin			enable-method = "psci";
106ea89fdf2SPeter Griffin			cpu-idle-states = <&ANANKE_CPU_SLEEP>;
107ea89fdf2SPeter Griffin			capacity-dmips-mhz = <250>;
108ea89fdf2SPeter Griffin			dynamic-power-coefficient = <70>;
109ea89fdf2SPeter Griffin		};
110ea89fdf2SPeter Griffin
111ea89fdf2SPeter Griffin		cpu4: cpu@400 {
112ea89fdf2SPeter Griffin			device_type = "cpu";
113ea89fdf2SPeter Griffin			compatible = "arm,cortex-a76";
114ea89fdf2SPeter Griffin			reg = <0x0400>;
115ea89fdf2SPeter Griffin			enable-method = "psci";
116ea89fdf2SPeter Griffin			cpu-idle-states = <&ENYO_CPU_SLEEP>;
117ea89fdf2SPeter Griffin			capacity-dmips-mhz = <620>;
118ea89fdf2SPeter Griffin			dynamic-power-coefficient = <284>;
119ea89fdf2SPeter Griffin		};
120ea89fdf2SPeter Griffin
121ea89fdf2SPeter Griffin		cpu5: cpu@500 {
122ea89fdf2SPeter Griffin			device_type = "cpu";
123ea89fdf2SPeter Griffin			compatible = "arm,cortex-a76";
124ea89fdf2SPeter Griffin			reg = <0x0500>;
125ea89fdf2SPeter Griffin			enable-method = "psci";
126ea89fdf2SPeter Griffin			cpu-idle-states = <&ENYO_CPU_SLEEP>;
127ea89fdf2SPeter Griffin			capacity-dmips-mhz = <620>;
128ea89fdf2SPeter Griffin			dynamic-power-coefficient = <284>;
129ea89fdf2SPeter Griffin		};
130ea89fdf2SPeter Griffin
131ea89fdf2SPeter Griffin		cpu6: cpu@600 {
132ea89fdf2SPeter Griffin			device_type = "cpu";
133ea89fdf2SPeter Griffin			compatible = "arm,cortex-x1";
134ea89fdf2SPeter Griffin			reg = <0x0600>;
135ea89fdf2SPeter Griffin			enable-method = "psci";
136ea89fdf2SPeter Griffin			cpu-idle-states = <&HERA_CPU_SLEEP>;
137ea89fdf2SPeter Griffin			capacity-dmips-mhz = <1024>;
138ea89fdf2SPeter Griffin			dynamic-power-coefficient = <650>;
139ea89fdf2SPeter Griffin		};
140ea89fdf2SPeter Griffin
141ea89fdf2SPeter Griffin		cpu7: cpu@700 {
142ea89fdf2SPeter Griffin			device_type = "cpu";
143ea89fdf2SPeter Griffin			compatible = "arm,cortex-x1";
144ea89fdf2SPeter Griffin			reg = <0x0700>;
145ea89fdf2SPeter Griffin			enable-method = "psci";
146ea89fdf2SPeter Griffin			cpu-idle-states = <&HERA_CPU_SLEEP>;
147ea89fdf2SPeter Griffin			capacity-dmips-mhz = <1024>;
148ea89fdf2SPeter Griffin			dynamic-power-coefficient = <650>;
149ea89fdf2SPeter Griffin		};
150ea89fdf2SPeter Griffin
151ea89fdf2SPeter Griffin		idle-states {
152ea89fdf2SPeter Griffin			entry-method = "psci";
153ea89fdf2SPeter Griffin
154ea89fdf2SPeter Griffin			ANANKE_CPU_SLEEP: cpu-ananke-sleep {
155ea89fdf2SPeter Griffin				idle-state-name = "c2";
156ea89fdf2SPeter Griffin				compatible = "arm,idle-state";
157ea89fdf2SPeter Griffin				arm,psci-suspend-param = <0x0010000>;
158ea89fdf2SPeter Griffin				entry-latency-us = <70>;
159ea89fdf2SPeter Griffin				exit-latency-us = <160>;
160ea89fdf2SPeter Griffin				min-residency-us = <2000>;
161ea89fdf2SPeter Griffin			};
162ea89fdf2SPeter Griffin
163ea89fdf2SPeter Griffin			ENYO_CPU_SLEEP: cpu-enyo-sleep {
164ea89fdf2SPeter Griffin				idle-state-name = "c2";
165ea89fdf2SPeter Griffin				compatible = "arm,idle-state";
166ea89fdf2SPeter Griffin				arm,psci-suspend-param = <0x0010000>;
167ea89fdf2SPeter Griffin				entry-latency-us = <150>;
168ea89fdf2SPeter Griffin				exit-latency-us = <190>;
169ea89fdf2SPeter Griffin				min-residency-us = <2500>;
170ea89fdf2SPeter Griffin			};
171ea89fdf2SPeter Griffin
172ea89fdf2SPeter Griffin			HERA_CPU_SLEEP: cpu-hera-sleep {
173ea89fdf2SPeter Griffin				idle-state-name = "c2";
174ea89fdf2SPeter Griffin				compatible = "arm,idle-state";
175ea89fdf2SPeter Griffin				arm,psci-suspend-param = <0x0010000>;
176ea89fdf2SPeter Griffin				entry-latency-us = <235>;
177ea89fdf2SPeter Griffin				exit-latency-us = <220>;
178ea89fdf2SPeter Griffin				min-residency-us = <3500>;
179ea89fdf2SPeter Griffin			};
180ea89fdf2SPeter Griffin		};
181ea89fdf2SPeter Griffin	};
182ea89fdf2SPeter Griffin
183ea89fdf2SPeter Griffin	/* ect node is required to be present by bootloader */
184ea89fdf2SPeter Griffin	ect {
185ea89fdf2SPeter Griffin	};
186ea89fdf2SPeter Griffin
187ea89fdf2SPeter Griffin	ext_24_5m: clock-1 {
188ea89fdf2SPeter Griffin		compatible = "fixed-clock";
189ea89fdf2SPeter Griffin		#clock-cells = <0>;
190ea89fdf2SPeter Griffin		clock-output-names = "oscclk";
191ea89fdf2SPeter Griffin	};
192ea89fdf2SPeter Griffin
193ea89fdf2SPeter Griffin	ext_200m: clock-2 {
194ea89fdf2SPeter Griffin		compatible = "fixed-clock";
195ea89fdf2SPeter Griffin		#clock-cells = <0>;
196ea89fdf2SPeter Griffin		clock-output-names = "ext-200m";
197ea89fdf2SPeter Griffin	};
198ea89fdf2SPeter Griffin
199ea89fdf2SPeter Griffin	pmu-0 {
200ea89fdf2SPeter Griffin		compatible = "arm,cortex-a55-pmu";
201ea89fdf2SPeter Griffin		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster0>;
202ea89fdf2SPeter Griffin	};
203ea89fdf2SPeter Griffin
204ea89fdf2SPeter Griffin	pmu-1 {
205ea89fdf2SPeter Griffin		compatible = "arm,cortex-a76-pmu";
206ea89fdf2SPeter Griffin		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster1>;
207ea89fdf2SPeter Griffin	};
208ea89fdf2SPeter Griffin
209ea89fdf2SPeter Griffin	pmu-2 {
210ea89fdf2SPeter Griffin		compatible = "arm,cortex-x1-pmu";
211ea89fdf2SPeter Griffin		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster2>;
212ea89fdf2SPeter Griffin	};
213ea89fdf2SPeter Griffin
214ea89fdf2SPeter Griffin	pmu-3 {
215ea89fdf2SPeter Griffin		compatible = "arm,dsu-pmu";
216ea89fdf2SPeter Griffin		interrupts = <GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH 0>;
217ea89fdf2SPeter Griffin		cpus = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>,
218ea89fdf2SPeter Griffin		       <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
219ea89fdf2SPeter Griffin	};
220ea89fdf2SPeter Griffin
221ea89fdf2SPeter Griffin	psci {
222ea89fdf2SPeter Griffin		compatible = "arm,psci-1.0";
223ea89fdf2SPeter Griffin		method = "smc";
224ea89fdf2SPeter Griffin	};
225ea89fdf2SPeter Griffin
226ea89fdf2SPeter Griffin	reserved_memory: reserved-memory {
227ea89fdf2SPeter Griffin		#address-cells = <2>;
228ea89fdf2SPeter Griffin		#size-cells = <1>;
229ea89fdf2SPeter Griffin		ranges;
230ea89fdf2SPeter Griffin
231ea89fdf2SPeter Griffin		gsa_reserved_protected: gsa@90200000 {
232ea89fdf2SPeter Griffin			reg = <0x0 0x90200000 0x400000>;
233ea89fdf2SPeter Griffin			no-map;
234ea89fdf2SPeter Griffin		};
235ea89fdf2SPeter Griffin
236ea89fdf2SPeter Griffin		tpu_fw_reserved: tpu-fw@93000000 {
237ea89fdf2SPeter Griffin			reg = <0x0 0x93000000 0x1000000>;
238ea89fdf2SPeter Griffin			no-map;
239ea89fdf2SPeter Griffin		};
240ea89fdf2SPeter Griffin
241ea89fdf2SPeter Griffin		aoc_reserve: aoc@94000000 {
242ea89fdf2SPeter Griffin			reg = <0x0 0x94000000 0x03000000>;
243ea89fdf2SPeter Griffin			no-map;
244ea89fdf2SPeter Griffin		};
245ea89fdf2SPeter Griffin
246ea89fdf2SPeter Griffin		abl_reserved: abl@f8800000 {
247ea89fdf2SPeter Griffin			reg = <0x0 0xf8800000 0x02000000>;
248ea89fdf2SPeter Griffin			no-map;
249ea89fdf2SPeter Griffin		};
250ea89fdf2SPeter Griffin
251ea89fdf2SPeter Griffin		dss_log_reserved: dss-log-reserved@fd3f0000 {
252ea89fdf2SPeter Griffin			reg = <0x0 0xfd3f0000 0x0000e000>;
253ea89fdf2SPeter Griffin			no-map;
254ea89fdf2SPeter Griffin		};
255ea89fdf2SPeter Griffin
256ea89fdf2SPeter Griffin		debug_kinfo_reserved: debug-kinfo-reserved@fd3fe000 {
257ea89fdf2SPeter Griffin			reg = <0x0 0xfd3fe000 0x00001000>;
258ea89fdf2SPeter Griffin			no-map;
259ea89fdf2SPeter Griffin		};
260ea89fdf2SPeter Griffin
261ea89fdf2SPeter Griffin		bldr_log_reserved: bldr-log-reserved@fd800000 {
262ea89fdf2SPeter Griffin			reg = <0x0 0xfd800000 0x00100000>;
263ea89fdf2SPeter Griffin			no-map;
264ea89fdf2SPeter Griffin		};
265ea89fdf2SPeter Griffin
266ea89fdf2SPeter Griffin		bldr_log_hist_reserved: bldr-log-hist-reserved@fd900000 {
267ea89fdf2SPeter Griffin			reg = <0x0 0xfd900000 0x00002000>;
268ea89fdf2SPeter Griffin			no-map;
269ea89fdf2SPeter Griffin		};
270ea89fdf2SPeter Griffin	};
271ea89fdf2SPeter Griffin
272ea89fdf2SPeter Griffin	soc: soc@0 {
273ea89fdf2SPeter Griffin		compatible = "simple-bus";
274ea89fdf2SPeter Griffin		#address-cells = <1>;
275ea89fdf2SPeter Griffin		#size-cells = <1>;
276ea89fdf2SPeter Griffin		ranges = <0x0 0x0 0x0 0x40000000>;
277ea89fdf2SPeter Griffin
278ea89fdf2SPeter Griffin		cmu_misc: clock-controller@10010000 {
279ea89fdf2SPeter Griffin			compatible = "google,gs101-cmu-misc";
280ea89fdf2SPeter Griffin			reg = <0x10010000 0x8000>;
281ea89fdf2SPeter Griffin			#clock-cells = <1>;
282ea89fdf2SPeter Griffin			clocks = <&cmu_top CLK_DOUT_CMU_MISC_BUS>,
283ea89fdf2SPeter Griffin				 <&cmu_top CLK_DOUT_CMU_MISC_SSS>;
28480c86ff6STudor Ambarus			clock-names = "bus", "sss";
285ea89fdf2SPeter Griffin		};
286ea89fdf2SPeter Griffin
287927b46b5SPeter Griffin		timer@10050000 {
288927b46b5SPeter Griffin			compatible = "google,gs101-mct",
289927b46b5SPeter Griffin				     "samsung,exynos4210-mct";
290927b46b5SPeter Griffin			reg = <0x10050000 0x800>;
291927b46b5SPeter Griffin			interrupts = <GIC_SPI 753 IRQ_TYPE_LEVEL_HIGH 0>,
292927b46b5SPeter Griffin				     <GIC_SPI 754 IRQ_TYPE_LEVEL_HIGH 0>,
293927b46b5SPeter Griffin				     <GIC_SPI 755 IRQ_TYPE_LEVEL_HIGH 0>,
294927b46b5SPeter Griffin				     <GIC_SPI 756 IRQ_TYPE_LEVEL_HIGH 0>,
295927b46b5SPeter Griffin				     <GIC_SPI 757 IRQ_TYPE_LEVEL_HIGH 0>,
296927b46b5SPeter Griffin				     <GIC_SPI 758 IRQ_TYPE_LEVEL_HIGH 0>,
297927b46b5SPeter Griffin				     <GIC_SPI 759 IRQ_TYPE_LEVEL_HIGH 0>,
298927b46b5SPeter Griffin				     <GIC_SPI 760 IRQ_TYPE_LEVEL_HIGH 0>,
299927b46b5SPeter Griffin				     <GIC_SPI 761 IRQ_TYPE_LEVEL_HIGH 0>,
300927b46b5SPeter Griffin				     <GIC_SPI 762 IRQ_TYPE_LEVEL_HIGH 0>,
301927b46b5SPeter Griffin				     <GIC_SPI 763 IRQ_TYPE_LEVEL_HIGH 0>,
302927b46b5SPeter Griffin				     <GIC_SPI 764 IRQ_TYPE_LEVEL_HIGH 0>;
303927b46b5SPeter Griffin			clocks = <&ext_24_5m>, <&cmu_misc CLK_GOUT_MISC_MCT_PCLK>;
304927b46b5SPeter Griffin			clock-names = "fin_pll", "mct";
305927b46b5SPeter Griffin		};
306927b46b5SPeter Griffin
307ea89fdf2SPeter Griffin		watchdog_cl0: watchdog@10060000 {
308ea89fdf2SPeter Griffin			compatible = "google,gs101-wdt";
309ea89fdf2SPeter Griffin			reg = <0x10060000 0x100>;
310ea89fdf2SPeter Griffin			interrupts = <GIC_SPI 765 IRQ_TYPE_LEVEL_HIGH 0>;
311ea89fdf2SPeter Griffin			clocks = <&cmu_misc CLK_GOUT_MISC_WDT_CLUSTER0_PCLK>,
312ea89fdf2SPeter Griffin				 <&ext_24_5m>;
313ea89fdf2SPeter Griffin			clock-names = "watchdog", "watchdog_src";
314ea89fdf2SPeter Griffin			samsung,syscon-phandle = <&pmu_system_controller>;
315ea89fdf2SPeter Griffin			samsung,cluster-index = <0>;
316ea89fdf2SPeter Griffin			status = "disabled";
317ea89fdf2SPeter Griffin		};
318ea89fdf2SPeter Griffin
319ea89fdf2SPeter Griffin		watchdog_cl1: watchdog@10070000 {
320ea89fdf2SPeter Griffin			compatible = "google,gs101-wdt";
321ea89fdf2SPeter Griffin			reg = <0x10070000 0x100>;
322ea89fdf2SPeter Griffin			interrupts = <GIC_SPI 766 IRQ_TYPE_LEVEL_HIGH 0>;
323ea89fdf2SPeter Griffin			clocks = <&cmu_misc CLK_GOUT_MISC_WDT_CLUSTER1_PCLK>,
324ea89fdf2SPeter Griffin				 <&ext_24_5m>;
325ea89fdf2SPeter Griffin			clock-names = "watchdog", "watchdog_src";
326ea89fdf2SPeter Griffin			samsung,syscon-phandle = <&pmu_system_controller>;
327ea89fdf2SPeter Griffin			samsung,cluster-index = <1>;
328ea89fdf2SPeter Griffin			status = "disabled";
329ea89fdf2SPeter Griffin		};
330ea89fdf2SPeter Griffin
331ea89fdf2SPeter Griffin		gic: interrupt-controller@10400000 {
332ea89fdf2SPeter Griffin			compatible = "arm,gic-v3";
333ea89fdf2SPeter Griffin			#interrupt-cells = <4>;
334ea89fdf2SPeter Griffin			interrupt-controller;
335ea89fdf2SPeter Griffin			reg = <0x10400000 0x10000>, /* GICD */
336ea89fdf2SPeter Griffin			      <0x10440000 0x100000>;/* GICR * 8 */
337ea89fdf2SPeter Griffin			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>;
338ea89fdf2SPeter Griffin
339ea89fdf2SPeter Griffin			ppi-partitions {
340ea89fdf2SPeter Griffin				ppi_cluster0: interrupt-partition-0 {
341ea89fdf2SPeter Griffin					affinity = <&cpu0 &cpu1 &cpu2 &cpu3>;
342ea89fdf2SPeter Griffin				};
343ea89fdf2SPeter Griffin
344ea89fdf2SPeter Griffin				ppi_cluster1: interrupt-partition-1 {
345ea89fdf2SPeter Griffin					affinity = <&cpu4 &cpu5>;
346ea89fdf2SPeter Griffin				};
347ea89fdf2SPeter Griffin
348ea89fdf2SPeter Griffin				ppi_cluster2: interrupt-partition-2 {
349ea89fdf2SPeter Griffin					affinity = <&cpu6 &cpu7>;
350ea89fdf2SPeter Griffin				};
351ea89fdf2SPeter Griffin			};
352ea89fdf2SPeter Griffin		};
353ea89fdf2SPeter Griffin
354e62c706fSTudor Ambarus		cmu_peric0: clock-controller@10800000 {
355e62c706fSTudor Ambarus			compatible = "google,gs101-cmu-peric0";
356e62c706fSTudor Ambarus			reg = <0x10800000 0x4000>;
357e62c706fSTudor Ambarus			#clock-cells = <1>;
358e62c706fSTudor Ambarus			clocks = <&ext_24_5m>,
359e62c706fSTudor Ambarus				 <&cmu_top CLK_DOUT_CMU_PERIC0_BUS>,
360e62c706fSTudor Ambarus				 <&cmu_top CLK_DOUT_CMU_PERIC0_IP>;
361e62c706fSTudor Ambarus			clock-names = "oscclk", "bus", "ip";
362e62c706fSTudor Ambarus		};
363e62c706fSTudor Ambarus
364ea89fdf2SPeter Griffin		sysreg_peric0: syscon@10820000 {
365ea89fdf2SPeter Griffin			compatible = "google,gs101-peric0-sysreg", "syscon";
366ea89fdf2SPeter Griffin			reg = <0x10820000 0x10000>;
367ca487bc2SAndré Draszik			clocks = <&cmu_peric0 CLK_GOUT_PERIC0_SYSREG_PERIC0_PCLK>;
368ea89fdf2SPeter Griffin		};
369ea89fdf2SPeter Griffin
370ea89fdf2SPeter Griffin		pinctrl_peric0: pinctrl@10840000 {
371ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
372ea89fdf2SPeter Griffin			reg = <0x10840000 0x00001000>;
373ea89fdf2SPeter Griffin			interrupts = <GIC_SPI 625 IRQ_TYPE_LEVEL_HIGH 0>;
374ea89fdf2SPeter Griffin		};
375ea89fdf2SPeter Griffin
3766d44d1a1STudor Ambarus		usi8: usi@109700c0 {
377*028a87e9STudor Ambarus			compatible = "google,gs101-usi", "samsung,exynos850-usi";
3786d44d1a1STudor Ambarus			reg = <0x109700c0 0x20>;
3796d44d1a1STudor Ambarus			ranges;
3806d44d1a1STudor Ambarus			#address-cells = <1>;
3816d44d1a1STudor Ambarus			#size-cells = <1>;
382512b5a87SAndré Draszik			clocks = <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP0_PCLK_7>,
3836d44d1a1STudor Ambarus				 <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP0_IPCLK_7>;
3846d44d1a1STudor Ambarus			clock-names = "pclk", "ipclk";
3856d44d1a1STudor Ambarus			samsung,sysreg = <&sysreg_peric0 0x101c>;
3866d44d1a1STudor Ambarus			status = "disabled";
3876d44d1a1STudor Ambarus
3886d44d1a1STudor Ambarus			hsi2c_8: i2c@10970000 {
3896d44d1a1STudor Ambarus				compatible = "google,gs101-hsi2c",
3906d44d1a1STudor Ambarus					     "samsung,exynosautov9-hsi2c";
3916d44d1a1STudor Ambarus				reg = <0x10970000 0xc0>;
3926d44d1a1STudor Ambarus				interrupts = <GIC_SPI 642 IRQ_TYPE_LEVEL_HIGH 0>;
3936d44d1a1STudor Ambarus				#address-cells = <1>;
3946d44d1a1STudor Ambarus				#size-cells = <0>;
3956d44d1a1STudor Ambarus				clocks = <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP0_IPCLK_7>,
396512b5a87SAndré Draszik					 <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP0_PCLK_7>;
3976d44d1a1STudor Ambarus				clock-names = "hsi2c", "hsi2c_pclk";
398d978c70eSTudor Ambarus				pinctrl-0 = <&hsi2c8_bus>;
399d978c70eSTudor Ambarus				pinctrl-names = "default";
4006d44d1a1STudor Ambarus				status = "disabled";
4016d44d1a1STudor Ambarus			};
4026d44d1a1STudor Ambarus		};
4036d44d1a1STudor Ambarus
404ea89fdf2SPeter Griffin		usi_uart: usi@10a000c0 {
405*028a87e9STudor Ambarus			compatible = "google,gs101-usi", "samsung,exynos850-usi";
406ea89fdf2SPeter Griffin			reg = <0x10a000c0 0x20>;
407ea89fdf2SPeter Griffin			ranges;
408ea89fdf2SPeter Griffin			#address-cells = <1>;
409ea89fdf2SPeter Griffin			#size-cells = <1>;
41021e4e880SAndré Draszik			clocks = <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP1_PCLK_0>,
411d97b6c90STudor Ambarus				 <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP1_IPCLK_0>;
412ea89fdf2SPeter Griffin			clock-names = "pclk", "ipclk";
413ea89fdf2SPeter Griffin			samsung,sysreg = <&sysreg_peric0 0x1020>;
414ea89fdf2SPeter Griffin			samsung,mode = <USI_V2_UART>;
415ea89fdf2SPeter Griffin			status = "disabled";
416ea89fdf2SPeter Griffin
417ea89fdf2SPeter Griffin			serial_0: serial@10a00000 {
418ea89fdf2SPeter Griffin				compatible = "google,gs101-uart";
419ea89fdf2SPeter Griffin				reg = <0x10a00000 0xc0>;
420*028a87e9STudor Ambarus				interrupts = <GIC_SPI 634 IRQ_TYPE_LEVEL_HIGH 0>;
42121e4e880SAndré Draszik				clocks = <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP1_PCLK_0>,
422d97b6c90STudor Ambarus					 <&cmu_peric0 CLK_GOUT_PERIC0_PERIC0_TOP1_IPCLK_0>;
423ea89fdf2SPeter Griffin				clock-names = "uart", "clk_uart_baud0";
42473618dfaSTudor Ambarus				pinctrl-0 = <&uart0_bus>;
42573618dfaSTudor Ambarus				pinctrl-names = "default";
426ea89fdf2SPeter Griffin				samsung,uart-fifosize = <256>;
427ea89fdf2SPeter Griffin				status = "disabled";
428ea89fdf2SPeter Griffin			};
429ea89fdf2SPeter Griffin		};
430ea89fdf2SPeter Griffin
4317d66d98bSAndré Draszik		cmu_peric1: clock-controller@10c00000 {
4327d66d98bSAndré Draszik			compatible = "google,gs101-cmu-peric1";
4337d66d98bSAndré Draszik			reg = <0x10c00000 0x4000>;
4347d66d98bSAndré Draszik			#clock-cells = <1>;
4357d66d98bSAndré Draszik			clocks = <&ext_24_5m>,
4367d66d98bSAndré Draszik				 <&cmu_top CLK_DOUT_CMU_PERIC1_BUS>,
4377d66d98bSAndré Draszik				 <&cmu_top CLK_DOUT_CMU_PERIC1_IP>;
4387d66d98bSAndré Draszik			clock-names = "oscclk", "bus", "ip";
4397d66d98bSAndré Draszik		};
4407d66d98bSAndré Draszik
441ea89fdf2SPeter Griffin		sysreg_peric1: syscon@10c20000 {
442ea89fdf2SPeter Griffin			compatible = "google,gs101-peric1-sysreg", "syscon";
443ea89fdf2SPeter Griffin			reg = <0x10c20000 0x10000>;
4447d66d98bSAndré Draszik			clocks = <&cmu_peric1 CLK_GOUT_PERIC1_SYSREG_PERIC1_PCLK>;
445ea89fdf2SPeter Griffin		};
446ea89fdf2SPeter Griffin
447ea89fdf2SPeter Griffin		pinctrl_peric1: pinctrl@10c40000 {
448ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
449ea89fdf2SPeter Griffin			reg = <0x10c40000 0x00001000>;
450ea89fdf2SPeter Griffin			interrupts = <GIC_SPI 644 IRQ_TYPE_LEVEL_HIGH 0>;
451ea89fdf2SPeter Griffin		};
452ea89fdf2SPeter Griffin
453118261dfSAndré Draszik		usi12: usi@10d500c0 {
454*028a87e9STudor Ambarus			compatible = "google,gs101-usi", "samsung,exynos850-usi";
455118261dfSAndré Draszik			reg = <0x10d500c0 0x20>;
456118261dfSAndré Draszik			ranges;
457118261dfSAndré Draszik			#address-cells = <1>;
458118261dfSAndré Draszik			#size-cells = <1>;
459118261dfSAndré Draszik			clocks = <&cmu_peric1 CLK_GOUT_PERIC1_PERIC1_TOP0_PCLK_5>,
460118261dfSAndré Draszik				 <&cmu_peric1 CLK_GOUT_PERIC1_PERIC1_TOP0_IPCLK_5>;
461118261dfSAndré Draszik			clock-names = "pclk", "ipclk";
462118261dfSAndré Draszik			samsung,sysreg = <&sysreg_peric1 0x1010>;
463118261dfSAndré Draszik			status = "disabled";
464118261dfSAndré Draszik
465118261dfSAndré Draszik			hsi2c_12: i2c@10d50000 {
466118261dfSAndré Draszik				compatible = "google,gs101-hsi2c",
467118261dfSAndré Draszik					     "samsung,exynosautov9-hsi2c";
468118261dfSAndré Draszik				reg = <0x10d50000 0xc0>;
469118261dfSAndré Draszik				interrupts = <GIC_SPI 655 IRQ_TYPE_LEVEL_HIGH 0>;
470118261dfSAndré Draszik				#address-cells = <1>;
471118261dfSAndré Draszik				#size-cells = <0>;
472118261dfSAndré Draszik				clocks = <&cmu_peric1 CLK_GOUT_PERIC1_PERIC1_TOP0_IPCLK_5>,
473118261dfSAndré Draszik					 <&cmu_peric1 CLK_GOUT_PERIC1_PERIC1_TOP0_PCLK_5>;
474118261dfSAndré Draszik				clock-names = "hsi2c", "hsi2c_pclk";
475d978c70eSTudor Ambarus				pinctrl-0 = <&hsi2c12_bus>;
476d978c70eSTudor Ambarus				pinctrl-names = "default";
477118261dfSAndré Draszik				status = "disabled";
478118261dfSAndré Draszik			};
479118261dfSAndré Draszik		};
480118261dfSAndré Draszik
481ea89fdf2SPeter Griffin		pinctrl_hsi1: pinctrl@11840000 {
482ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
483ea89fdf2SPeter Griffin			reg = <0x11840000 0x00001000>;
484ea89fdf2SPeter Griffin			interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH 0>;
485ea89fdf2SPeter Griffin		};
486ea89fdf2SPeter Griffin
487ea89fdf2SPeter Griffin		pinctrl_hsi2: pinctrl@14440000 {
488ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
489ea89fdf2SPeter Griffin			reg = <0x14440000 0x00001000>;
490ea89fdf2SPeter Griffin			interrupts = <GIC_SPI 503 IRQ_TYPE_LEVEL_HIGH 0>;
491ea89fdf2SPeter Griffin		};
492ea89fdf2SPeter Griffin
493ea89fdf2SPeter Griffin		cmu_apm: clock-controller@17400000 {
494ea89fdf2SPeter Griffin			compatible = "google,gs101-cmu-apm";
495ea89fdf2SPeter Griffin			reg = <0x17400000 0x8000>;
496ea89fdf2SPeter Griffin			#clock-cells = <1>;
497ea89fdf2SPeter Griffin
498ea89fdf2SPeter Griffin			clocks = <&ext_24_5m>;
499ea89fdf2SPeter Griffin			clock-names = "oscclk";
500ea89fdf2SPeter Griffin		};
501ea89fdf2SPeter Griffin
502ea89fdf2SPeter Griffin		sysreg_apm: syscon@174204e0 {
503ea89fdf2SPeter Griffin			compatible = "google,gs101-apm-sysreg", "syscon";
504ea89fdf2SPeter Griffin			reg = <0x174204e0 0x1000>;
505ea89fdf2SPeter Griffin		};
506ea89fdf2SPeter Griffin
507ea89fdf2SPeter Griffin		pmu_system_controller: system-controller@17460000 {
508ea89fdf2SPeter Griffin			compatible = "google,gs101-pmu", "syscon";
509ea89fdf2SPeter Griffin			reg = <0x17460000 0x10000>;
510ea89fdf2SPeter Griffin		};
511ea89fdf2SPeter Griffin
512ea89fdf2SPeter Griffin		pinctrl_gpio_alive: pinctrl@174d0000 {
513ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
514ea89fdf2SPeter Griffin			reg = <0x174d0000 0x00001000>;
515ea89fdf2SPeter Griffin
516ea89fdf2SPeter Griffin			wakeup-interrupt-controller {
517ea89fdf2SPeter Griffin				compatible = "google,gs101-wakeup-eint",
518ea89fdf2SPeter Griffin					     "samsung,exynos850-wakeup-eint",
519ea89fdf2SPeter Griffin					     "samsung,exynos7-wakeup-eint";
520ea89fdf2SPeter Griffin			};
521ea89fdf2SPeter Griffin		};
522ea89fdf2SPeter Griffin
523ea89fdf2SPeter Griffin		pinctrl_far_alive: pinctrl@174e0000 {
524ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
525ea89fdf2SPeter Griffin			reg = <0x174e0000 0x00001000>;
526ea89fdf2SPeter Griffin
527ea89fdf2SPeter Griffin			wakeup-interrupt-controller {
528ea89fdf2SPeter Griffin				compatible = "google,gs101-wakeup-eint",
529ea89fdf2SPeter Griffin					     "samsung,exynos850-wakeup-eint",
530ea89fdf2SPeter Griffin					     "samsung,exynos7-wakeup-eint";
531ea89fdf2SPeter Griffin			};
532ea89fdf2SPeter Griffin		};
533ea89fdf2SPeter Griffin
534ea89fdf2SPeter Griffin		pinctrl_gsactrl: pinctrl@17940000 {
535ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
536ea89fdf2SPeter Griffin			reg = <0x17940000 0x00001000>;
537ea89fdf2SPeter Griffin		};
538ea89fdf2SPeter Griffin
539ea89fdf2SPeter Griffin		pinctrl_gsacore: pinctrl@17a80000 {
540ea89fdf2SPeter Griffin			compatible = "google,gs101-pinctrl";
541ea89fdf2SPeter Griffin			reg = <0x17a80000 0x00001000>;
542ea89fdf2SPeter Griffin		};
543ea89fdf2SPeter Griffin
544ea89fdf2SPeter Griffin		cmu_top: clock-controller@1e080000 {
545ea89fdf2SPeter Griffin			compatible = "google,gs101-cmu-top";
546ea89fdf2SPeter Griffin			reg = <0x1e080000 0x8000>;
547ea89fdf2SPeter Griffin			#clock-cells = <1>;
548ea89fdf2SPeter Griffin
549ea89fdf2SPeter Griffin			clocks = <&ext_24_5m>;
550ea89fdf2SPeter Griffin			clock-names = "oscclk";
551ea89fdf2SPeter Griffin		};
552ea89fdf2SPeter Griffin	};
553ea89fdf2SPeter Griffin
554ea89fdf2SPeter Griffin	timer {
555ea89fdf2SPeter Griffin		compatible = "arm,armv8-timer";
556ea89fdf2SPeter Griffin		interrupts =
557ea89fdf2SPeter Griffin		   <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW) 0>,
558ea89fdf2SPeter Griffin		   <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW) 0>,
559ea89fdf2SPeter Griffin		   <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW) 0>,
560ea89fdf2SPeter Griffin		   <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW) 0>;
561ea89fdf2SPeter Griffin	};
562ea89fdf2SPeter Griffin};
563ea89fdf2SPeter Griffin
564ea89fdf2SPeter Griffin#include "gs101-pinctrl.dtsi"
565