1e9a12e14SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2e9a12e14SNeil Armstrong/*
3e9a12e14SNeil Armstrong * Copyright (c) 2019 BayLibre, SAS
4e9a12e14SNeil Armstrong * Author: Neil Armstrong <narmstrong@baylibre.com>
5e9a12e14SNeil Armstrong */
6e9a12e14SNeil Armstrong
7e9a12e14SNeil Armstrong#include "meson-g12-common.dtsi"
8b3b81691SJerome Brunet#include <dt-bindings/clock/axg-audio-clkc.h>
9f4f1c8d9SNeil Armstrong#include <dt-bindings/power/meson-sm1-power.h>
10b3b81691SJerome Brunet#include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
11b3b81691SJerome Brunet#include <dt-bindings/reset/amlogic,meson-g12a-audio-reset.h>
12e9a12e14SNeil Armstrong
13e9a12e14SNeil Armstrong/ {
14e9a12e14SNeil Armstrong	compatible = "amlogic,sm1";
15e9a12e14SNeil Armstrong
16b3b81691SJerome Brunet	tdmif_a: audio-controller-0 {
17b3b81691SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
18b3b81691SJerome Brunet		#sound-dai-cells = <0>;
19b3b81691SJerome Brunet		sound-name-prefix = "TDM_A";
20b3b81691SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>,
21b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_A_SCLK>,
22b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_A_LRCLK>;
23b3b81691SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
24b3b81691SJerome Brunet		status = "disabled";
25b3b81691SJerome Brunet	};
26b3b81691SJerome Brunet
27b3b81691SJerome Brunet	tdmif_b: audio-controller-1 {
28b3b81691SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
29b3b81691SJerome Brunet		#sound-dai-cells = <0>;
30b3b81691SJerome Brunet		sound-name-prefix = "TDM_B";
31b3b81691SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_B_MCLK>,
32b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_B_SCLK>,
33b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_B_LRCLK>;
34b3b81691SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
35b3b81691SJerome Brunet		status = "disabled";
36b3b81691SJerome Brunet	};
37b3b81691SJerome Brunet
38b3b81691SJerome Brunet	tdmif_c: audio-controller-2 {
39b3b81691SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
40b3b81691SJerome Brunet		#sound-dai-cells = <0>;
41b3b81691SJerome Brunet		sound-name-prefix = "TDM_C";
42b3b81691SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_C_MCLK>,
43b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_C_SCLK>,
44b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_C_LRCLK>;
45b3b81691SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
46b3b81691SJerome Brunet		status = "disabled";
47b3b81691SJerome Brunet	};
48b3b81691SJerome Brunet
49e9a12e14SNeil Armstrong	cpus {
50e9a12e14SNeil Armstrong		#address-cells = <0x2>;
51e9a12e14SNeil Armstrong		#size-cells = <0x0>;
52e9a12e14SNeil Armstrong
53e9a12e14SNeil Armstrong		cpu0: cpu@0 {
54e9a12e14SNeil Armstrong			device_type = "cpu";
55e9a12e14SNeil Armstrong			compatible = "arm,cortex-a55";
56e9a12e14SNeil Armstrong			reg = <0x0 0x0>;
57e9a12e14SNeil Armstrong			enable-method = "psci";
58e9a12e14SNeil Armstrong			next-level-cache = <&l2>;
59e9a12e14SNeil Armstrong		};
60e9a12e14SNeil Armstrong
61e9a12e14SNeil Armstrong		cpu1: cpu@1 {
62e9a12e14SNeil Armstrong			device_type = "cpu";
63e9a12e14SNeil Armstrong			compatible = "arm,cortex-a55";
64e9a12e14SNeil Armstrong			reg = <0x0 0x1>;
65e9a12e14SNeil Armstrong			enable-method = "psci";
66e9a12e14SNeil Armstrong			next-level-cache = <&l2>;
67e9a12e14SNeil Armstrong		};
68e9a12e14SNeil Armstrong
69e9a12e14SNeil Armstrong		cpu2: cpu@2 {
70e9a12e14SNeil Armstrong			device_type = "cpu";
71e9a12e14SNeil Armstrong			compatible = "arm,cortex-a55";
72e9a12e14SNeil Armstrong			reg = <0x0 0x2>;
73e9a12e14SNeil Armstrong			enable-method = "psci";
74e9a12e14SNeil Armstrong			next-level-cache = <&l2>;
75e9a12e14SNeil Armstrong		};
76e9a12e14SNeil Armstrong
77e9a12e14SNeil Armstrong		cpu3: cpu@3 {
78e9a12e14SNeil Armstrong			device_type = "cpu";
79e9a12e14SNeil Armstrong			compatible = "arm,cortex-a55";
80e9a12e14SNeil Armstrong			reg = <0x0 0x3>;
81e9a12e14SNeil Armstrong			enable-method = "psci";
82e9a12e14SNeil Armstrong			next-level-cache = <&l2>;
83e9a12e14SNeil Armstrong		};
84e9a12e14SNeil Armstrong
85e9a12e14SNeil Armstrong		l2: l2-cache0 {
86e9a12e14SNeil Armstrong			compatible = "cache";
87e9a12e14SNeil Armstrong		};
88e9a12e14SNeil Armstrong	};
893d9e7648SNeil Armstrong
903d9e7648SNeil Armstrong	cpu_opp_table: opp-table {
913d9e7648SNeil Armstrong		compatible = "operating-points-v2";
923d9e7648SNeil Armstrong		opp-shared;
933d9e7648SNeil Armstrong
943d9e7648SNeil Armstrong		opp-100000000 {
953d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <100000000>;
963d9e7648SNeil Armstrong			opp-microvolt = <730000>;
973d9e7648SNeil Armstrong		};
983d9e7648SNeil Armstrong
993d9e7648SNeil Armstrong		opp-250000000 {
1003d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <250000000>;
1013d9e7648SNeil Armstrong			opp-microvolt = <730000>;
1023d9e7648SNeil Armstrong		};
1033d9e7648SNeil Armstrong
1043d9e7648SNeil Armstrong		opp-500000000 {
1053d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <500000000>;
1063d9e7648SNeil Armstrong			opp-microvolt = <730000>;
1073d9e7648SNeil Armstrong		};
1083d9e7648SNeil Armstrong
1093d9e7648SNeil Armstrong		opp-667000000 {
1103d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <666666666>;
1113d9e7648SNeil Armstrong			opp-microvolt = <750000>;
1123d9e7648SNeil Armstrong		};
1133d9e7648SNeil Armstrong
1143d9e7648SNeil Armstrong		opp-1000000000 {
1153d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1000000000>;
1163d9e7648SNeil Armstrong			opp-microvolt = <770000>;
1173d9e7648SNeil Armstrong		};
1183d9e7648SNeil Armstrong
1193d9e7648SNeil Armstrong		opp-1200000000 {
1203d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1200000000>;
1213d9e7648SNeil Armstrong			opp-microvolt = <780000>;
1223d9e7648SNeil Armstrong		};
1233d9e7648SNeil Armstrong
1243d9e7648SNeil Armstrong		opp-1404000000 {
1253d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1404000000>;
1263d9e7648SNeil Armstrong			opp-microvolt = <790000>;
1273d9e7648SNeil Armstrong		};
1283d9e7648SNeil Armstrong
1293d9e7648SNeil Armstrong		opp-1512000000 {
1303d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1500000000>;
1313d9e7648SNeil Armstrong			opp-microvolt = <800000>;
1323d9e7648SNeil Armstrong		};
1333d9e7648SNeil Armstrong
1343d9e7648SNeil Armstrong		opp-1608000000 {
1353d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1608000000>;
1363d9e7648SNeil Armstrong			opp-microvolt = <810000>;
1373d9e7648SNeil Armstrong		};
1383d9e7648SNeil Armstrong
1393d9e7648SNeil Armstrong		opp-1704000000 {
1403d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1704000000>;
1413d9e7648SNeil Armstrong			opp-microvolt = <850000>;
1423d9e7648SNeil Armstrong		};
1433d9e7648SNeil Armstrong
1443d9e7648SNeil Armstrong		opp-1800000000 {
1453d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1800000000>;
1463d9e7648SNeil Armstrong			opp-microvolt = <900000>;
1473d9e7648SNeil Armstrong		};
1483d9e7648SNeil Armstrong
1493d9e7648SNeil Armstrong		opp-1908000000 {
1503d9e7648SNeil Armstrong			opp-hz = /bits/ 64 <1908000000>;
1513d9e7648SNeil Armstrong			opp-microvolt = <950000>;
1523d9e7648SNeil Armstrong		};
1533d9e7648SNeil Armstrong	};
154e9a12e14SNeil Armstrong};
155e9a12e14SNeil Armstrong
156b3b81691SJerome Brunet&apb {
157b3b81691SJerome Brunet	audio: bus@60000 {
158b3b81691SJerome Brunet		compatible = "simple-bus";
159b3b81691SJerome Brunet		reg = <0x0 0x60000 0x0 0x1000>;
160b3b81691SJerome Brunet		#address-cells = <2>;
161b3b81691SJerome Brunet		#size-cells = <2>;
162b3b81691SJerome Brunet		ranges = <0x0 0x0 0x0 0x60000 0x0 0x1000>;
163b3b81691SJerome Brunet
164b3b81691SJerome Brunet		clkc_audio: clock-controller@0 {
165b3b81691SJerome Brunet			status = "disabled";
166b3b81691SJerome Brunet			compatible = "amlogic,sm1-audio-clkc";
167b3b81691SJerome Brunet			reg = <0x0 0x0 0x0 0xb4>;
168b3b81691SJerome Brunet			#clock-cells = <1>;
169b3b81691SJerome Brunet			#reset-cells = <1>;
170b3b81691SJerome Brunet
171b3b81691SJerome Brunet			clocks = <&clkc CLKID_AUDIO>,
172b3b81691SJerome Brunet				 <&clkc CLKID_MPLL0>,
173b3b81691SJerome Brunet				 <&clkc CLKID_MPLL1>,
174b3b81691SJerome Brunet				 <&clkc CLKID_MPLL2>,
175b3b81691SJerome Brunet				 <&clkc CLKID_MPLL3>,
176b3b81691SJerome Brunet				 <&clkc CLKID_HIFI_PLL>,
177b3b81691SJerome Brunet				 <&clkc CLKID_FCLK_DIV3>,
178b3b81691SJerome Brunet				 <&clkc CLKID_FCLK_DIV4>,
179b3b81691SJerome Brunet				 <&clkc CLKID_FCLK_DIV5>;
180b3b81691SJerome Brunet			clock-names = "pclk",
181b3b81691SJerome Brunet				      "mst_in0",
182b3b81691SJerome Brunet				      "mst_in1",
183b3b81691SJerome Brunet				      "mst_in2",
184b3b81691SJerome Brunet				      "mst_in3",
185b3b81691SJerome Brunet				      "mst_in4",
186b3b81691SJerome Brunet				      "mst_in5",
187b3b81691SJerome Brunet				      "mst_in6",
188b3b81691SJerome Brunet				      "mst_in7";
189b3b81691SJerome Brunet
190b3b81691SJerome Brunet			resets = <&reset RESET_AUDIO>;
191b3b81691SJerome Brunet		};
192b3b81691SJerome Brunet
193b3b81691SJerome Brunet		toddr_a: audio-controller@100 {
194b3b81691SJerome Brunet			compatible = "amlogic,sm1-toddr",
195b3b81691SJerome Brunet				     "amlogic,axg-toddr";
196b3b81691SJerome Brunet			reg = <0x0 0x100 0x0 0x2c>;
197b3b81691SJerome Brunet			#sound-dai-cells = <0>;
198b3b81691SJerome Brunet			sound-name-prefix = "TODDR_A";
199b3b81691SJerome Brunet			interrupts = <GIC_SPI 148 IRQ_TYPE_EDGE_RISING>;
200b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
201b3b81691SJerome Brunet			resets = <&arb AXG_ARB_TODDR_A>,
202b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_A>;
203b3b81691SJerome Brunet			reset-names = "arb", "rst";
204b3b81691SJerome Brunet			status = "disabled";
205b3b81691SJerome Brunet		};
206b3b81691SJerome Brunet
207b3b81691SJerome Brunet		toddr_b: audio-controller@140 {
208b3b81691SJerome Brunet			compatible = "amlogic,sm1-toddr",
209b3b81691SJerome Brunet				     "amlogic,axg-toddr";
210b3b81691SJerome Brunet			reg = <0x0 0x140 0x0 0x2c>;
211b3b81691SJerome Brunet			#sound-dai-cells = <0>;
212b3b81691SJerome Brunet			sound-name-prefix = "TODDR_B";
213b3b81691SJerome Brunet			interrupts = <GIC_SPI 149 IRQ_TYPE_EDGE_RISING>;
214b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
215b3b81691SJerome Brunet			resets = <&arb AXG_ARB_TODDR_B>,
216b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_B>;
217b3b81691SJerome Brunet			reset-names = "arb", "rst";
218b3b81691SJerome Brunet			status = "disabled";
219b3b81691SJerome Brunet		};
220b3b81691SJerome Brunet
221b3b81691SJerome Brunet		toddr_c: audio-controller@180 {
222b3b81691SJerome Brunet			compatible = "amlogic,sm1-toddr",
223b3b81691SJerome Brunet				     "amlogic,axg-toddr";
224b3b81691SJerome Brunet			reg = <0x0 0x180 0x0 0x2c>;
225b3b81691SJerome Brunet			#sound-dai-cells = <0>;
226b3b81691SJerome Brunet			sound-name-prefix = "TODDR_C";
227b3b81691SJerome Brunet			interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>;
228b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
229b3b81691SJerome Brunet			resets = <&arb AXG_ARB_TODDR_C>,
230b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_C>;
231b3b81691SJerome Brunet			reset-names = "arb", "rst";
232b3b81691SJerome Brunet			status = "disabled";
233b3b81691SJerome Brunet		};
234b3b81691SJerome Brunet
235b3b81691SJerome Brunet		frddr_a: audio-controller@1c0 {
236b3b81691SJerome Brunet			compatible = "amlogic,sm1-frddr",
237b3b81691SJerome Brunet				     "amlogic,axg-frddr";
238b3b81691SJerome Brunet			reg = <0x0 0x1c0 0x0 0x2c>;
239b3b81691SJerome Brunet			#sound-dai-cells = <0>;
240b3b81691SJerome Brunet			sound-name-prefix = "FRDDR_A";
241b3b81691SJerome Brunet			interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>;
242b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
243b3b81691SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_A>,
244b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_A>;
245b3b81691SJerome Brunet			reset-names = "arb", "rst";
246b3b81691SJerome Brunet			status = "disabled";
247b3b81691SJerome Brunet		};
248b3b81691SJerome Brunet
249b3b81691SJerome Brunet		frddr_b: audio-controller@200 {
250b3b81691SJerome Brunet			compatible = "amlogic,sm1-frddr",
251b3b81691SJerome Brunet				     "amlogic,axg-frddr";
252b3b81691SJerome Brunet			reg = <0x0 0x200 0x0 0x2c>;
253b3b81691SJerome Brunet			#sound-dai-cells = <0>;
254b3b81691SJerome Brunet			sound-name-prefix = "FRDDR_B";
255b3b81691SJerome Brunet			interrupts = <GIC_SPI 153 IRQ_TYPE_EDGE_RISING>;
256b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
257b3b81691SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_B>,
258b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_B>;
259b3b81691SJerome Brunet			reset-names = "arb", "rst";
260b3b81691SJerome Brunet			status = "disabled";
261b3b81691SJerome Brunet		};
262b3b81691SJerome Brunet
263b3b81691SJerome Brunet		frddr_c: audio-controller@240 {
264b3b81691SJerome Brunet			compatible = "amlogic,sm1-frddr",
265b3b81691SJerome Brunet				     "amlogic,axg-frddr";
266b3b81691SJerome Brunet			reg = <0x0 0x240 0x0 0x2c>;
267b3b81691SJerome Brunet			#sound-dai-cells = <0>;
268b3b81691SJerome Brunet			sound-name-prefix = "FRDDR_C";
269b3b81691SJerome Brunet			interrupts = <GIC_SPI 154 IRQ_TYPE_EDGE_RISING>;
270b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
271b3b81691SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_C>,
272b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_C>;
273b3b81691SJerome Brunet			reset-names = "arb", "rst";
274b3b81691SJerome Brunet			status = "disabled";
275b3b81691SJerome Brunet		};
276b3b81691SJerome Brunet
277b3b81691SJerome Brunet		arb: reset-controller@280 {
278b3b81691SJerome Brunet			status = "disabled";
279b3b81691SJerome Brunet			compatible = "amlogic,meson-sm1-audio-arb";
280b3b81691SJerome Brunet			reg = <0x0 0x280 0x0 0x4>;
281b3b81691SJerome Brunet			#reset-cells = <1>;
282b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
283b3b81691SJerome Brunet		};
284b3b81691SJerome Brunet
285b3b81691SJerome Brunet		tdmin_a: audio-controller@300 {
286b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmin",
287b3b81691SJerome Brunet				     "amlogic,axg-tdmin";
288b3b81691SJerome Brunet			reg = <0x0 0x300 0x0 0x40>;
289b3b81691SJerome Brunet			sound-name-prefix = "TDMIN_A";
290b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_A>;
291b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_A>,
292b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>,
293b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>,
294b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>,
295b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>;
296b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
297b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
298b3b81691SJerome Brunet			status = "disabled";
299b3b81691SJerome Brunet		};
300b3b81691SJerome Brunet
301b3b81691SJerome Brunet		tdmin_b: audio-controller@340 {
302b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmin",
303b3b81691SJerome Brunet				     "amlogic,axg-tdmin";
304b3b81691SJerome Brunet			reg = <0x0 0x340 0x0 0x40>;
305b3b81691SJerome Brunet			sound-name-prefix = "TDMIN_B";
306b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_B>;
307b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_B>,
308b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>,
309b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>,
310b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>,
311b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>;
312b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
313b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
314b3b81691SJerome Brunet			status = "disabled";
315b3b81691SJerome Brunet		};
316b3b81691SJerome Brunet
317b3b81691SJerome Brunet		tdmin_c: audio-controller@380 {
318b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmin",
319b3b81691SJerome Brunet				     "amlogic,axg-tdmin";
320b3b81691SJerome Brunet			reg = <0x0 0x380 0x0 0x40>;
321b3b81691SJerome Brunet			sound-name-prefix = "TDMIN_C";
322b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_C>;
323b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_C>,
324b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>,
325b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>,
326b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>,
327b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>;
328b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
329b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
330b3b81691SJerome Brunet			status = "disabled";
331b3b81691SJerome Brunet		};
332b3b81691SJerome Brunet
333b3b81691SJerome Brunet		tdmin_lb: audio-controller@3c0 {
334b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmin",
335b3b81691SJerome Brunet				     "amlogic,axg-tdmin";
336b3b81691SJerome Brunet			reg = <0x0 0x3c0 0x0 0x40>;
337b3b81691SJerome Brunet			sound-name-prefix = "TDMIN_LB";
338b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_LB>;
339b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>,
340b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>,
341b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>,
342b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>,
343b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>;
344b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
345b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
346b3b81691SJerome Brunet			status = "disabled";
347b3b81691SJerome Brunet		};
348b3b81691SJerome Brunet
349b3b81691SJerome Brunet		tdmout_a: audio-controller@500 {
350b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmout";
351b3b81691SJerome Brunet			reg = <0x0 0x500 0x0 0x40>;
352b3b81691SJerome Brunet			sound-name-prefix = "TDMOUT_A";
353b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMOUT_A>;
354b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
355b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
356b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
357b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
358b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
359b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
360b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
361b3b81691SJerome Brunet			status = "disabled";
362b3b81691SJerome Brunet		};
363b3b81691SJerome Brunet
364b3b81691SJerome Brunet		tdmout_b: audio-controller@540 {
365b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmout";
366b3b81691SJerome Brunet			reg = <0x0 0x540 0x0 0x40>;
367b3b81691SJerome Brunet			sound-name-prefix = "TDMOUT_B";
368b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMOUT_B>;
369b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>,
370b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>,
371b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>,
372b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>,
373b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>;
374b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
375b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
376b3b81691SJerome Brunet			status = "disabled";
377b3b81691SJerome Brunet		};
378b3b81691SJerome Brunet
379b3b81691SJerome Brunet		tdmout_c: audio-controller@580 {
380b3b81691SJerome Brunet			compatible = "amlogic,sm1-tdmout";
381b3b81691SJerome Brunet			reg = <0x0 0x580 0x0 0x40>;
382b3b81691SJerome Brunet			sound-name-prefix = "TDMOUT_C";
383b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMOUT_C>;
384b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>,
385b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>,
386b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>,
387b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>,
388b3b81691SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>;
389b3b81691SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
390b3b81691SJerome Brunet				      "lrclk", "lrclk_sel";
391b3b81691SJerome Brunet			status = "disabled";
392b3b81691SJerome Brunet		};
393b3b81691SJerome Brunet
394b3b81691SJerome Brunet		tohdmitx: audio-controller@744 {
395b3b81691SJerome Brunet			compatible = "amlogic,sm1-tohdmitx",
396b3b81691SJerome Brunet				     "amlogic,g12a-tohdmitx";
397b3b81691SJerome Brunet			reg = <0x0 0x744 0x0 0x4>;
398b3b81691SJerome Brunet			#sound-dai-cells = <1>;
399b3b81691SJerome Brunet			sound-name-prefix = "TOHDMITX";
400b3b81691SJerome Brunet			resets = <&clkc_audio AUD_RESET_TOHDMITX>;
401b3b81691SJerome Brunet			status = "disabled";
402b3b81691SJerome Brunet		};
403b3b81691SJerome Brunet
404b3b81691SJerome Brunet		toddr_d: audio-controller@840 {
405b3b81691SJerome Brunet			compatible = "amlogic,sm1-toddr",
406b3b81691SJerome Brunet				     "amlogic,axg-toddr";
407b3b81691SJerome Brunet			reg = <0x0 0x840 0x0 0x2c>;
408b3b81691SJerome Brunet			#sound-dai-cells = <0>;
409b3b81691SJerome Brunet			sound-name-prefix = "TODDR_D";
410b3b81691SJerome Brunet			interrupts = <GIC_SPI 49 IRQ_TYPE_EDGE_RISING>;
411b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_D>;
412b3b81691SJerome Brunet			resets = <&arb AXG_ARB_TODDR_D>,
413b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_D>;
414b3b81691SJerome Brunet			reset-names = "arb", "rst";
415b3b81691SJerome Brunet			status = "disabled";
416b3b81691SJerome Brunet		};
417b3b81691SJerome Brunet
418b3b81691SJerome Brunet		frddr_d: audio-controller@880 {
419b3b81691SJerome Brunet			 compatible = "amlogic,sm1-frddr",
420b3b81691SJerome Brunet				      "amlogic,axg-frddr";
421b3b81691SJerome Brunet			reg = <0x0 0x880 0x0 0x2c>;
422b3b81691SJerome Brunet			#sound-dai-cells = <0>;
423b3b81691SJerome Brunet			sound-name-prefix = "FRDDR_D";
424b3b81691SJerome Brunet			interrupts = <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
425b3b81691SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_D>;
426b3b81691SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_D>,
427b3b81691SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_D>;
428b3b81691SJerome Brunet			reset-names = "arb", "rst";
429b3b81691SJerome Brunet			status = "disabled";
430b3b81691SJerome Brunet		};
431b3b81691SJerome Brunet	};
432b3b81691SJerome Brunet
433b3b81691SJerome Brunet	pdm: audio-controller@61000 {
434b3b81691SJerome Brunet		compatible = "amlogic,sm1-pdm",
435b3b81691SJerome Brunet			     "amlogic,axg-pdm";
436b3b81691SJerome Brunet		reg = <0x0 0x61000 0x0 0x34>;
437b3b81691SJerome Brunet		#sound-dai-cells = <0>;
438b3b81691SJerome Brunet		sound-name-prefix = "PDM";
439b3b81691SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_PDM>,
440b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_PDM_DCLK>,
441b3b81691SJerome Brunet			 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
442b3b81691SJerome Brunet		clock-names = "pclk", "dclk", "sysclk";
443b3b81691SJerome Brunet		status = "disabled";
444b3b81691SJerome Brunet	};
445b3b81691SJerome Brunet};
446b3b81691SJerome Brunet
447e9a12e14SNeil Armstrong&cecb_AO {
448e9a12e14SNeil Armstrong	compatible = "amlogic,meson-sm1-ao-cec";
449e9a12e14SNeil Armstrong};
450e9a12e14SNeil Armstrong
451e9a12e14SNeil Armstrong&clk_msr {
452e9a12e14SNeil Armstrong	compatible = "amlogic,meson-sm1-clk-measure";
453e9a12e14SNeil Armstrong};
454e9a12e14SNeil Armstrong
455f4f1c8d9SNeil Armstrong
4563d9e7648SNeil Armstrong&clkc {
4573d9e7648SNeil Armstrong	compatible = "amlogic,sm1-clkc";
4583d9e7648SNeil Armstrong};
4593d9e7648SNeil Armstrong
460f4f1c8d9SNeil Armstrong&ethmac {
461f4f1c8d9SNeil Armstrong	power-domains = <&pwrc PWRC_SM1_ETH_ID>;
462f4f1c8d9SNeil Armstrong};
463f4f1c8d9SNeil Armstrong
464e6b6d9d3SJerome Brunet&gpio_intc {
465e6b6d9d3SJerome Brunet	compatible = "amlogic,meson-sm1-gpio-intc",
466e6b6d9d3SJerome Brunet		     "amlogic,meson-gpio-intc";
467e6b6d9d3SJerome Brunet};
468e6b6d9d3SJerome Brunet
4691f8607d5SNeil Armstrong&pcie {
4701f8607d5SNeil Armstrong	power-domains = <&pwrc PWRC_SM1_PCIE_ID>;
4711f8607d5SNeil Armstrong};
4721f8607d5SNeil Armstrong
473f4f1c8d9SNeil Armstrong&pwrc {
474f4f1c8d9SNeil Armstrong	compatible = "amlogic,meson-sm1-pwrc";
475e9a12e14SNeil Armstrong};
476e9a12e14SNeil Armstrong
47715767cfdSNeil Armstrong&simplefb_cvbs {
47815767cfdSNeil Armstrong	power-domains = <&pwrc PWRC_SM1_VPU_ID>;
47915767cfdSNeil Armstrong};
48015767cfdSNeil Armstrong
48115767cfdSNeil Armstrong&simplefb_hdmi {
48215767cfdSNeil Armstrong	power-domains = <&pwrc PWRC_SM1_VPU_ID>;
48315767cfdSNeil Armstrong};
48415767cfdSNeil Armstrong
485302d95c6SNeil Armstrong&vdec {
486302d95c6SNeil Armstrong	compatible = "amlogic,sm1-vdec";
487302d95c6SNeil Armstrong};
488302d95c6SNeil Armstrong
489e9a12e14SNeil Armstrong&vpu {
490f4f1c8d9SNeil Armstrong	power-domains = <&pwrc PWRC_SM1_VPU_ID>;
491f4f1c8d9SNeil Armstrong};
492f4f1c8d9SNeil Armstrong
493f4f1c8d9SNeil Armstrong&usb {
494f4f1c8d9SNeil Armstrong	power-domains = <&pwrc PWRC_SM1_USB_ID>;
495e9a12e14SNeil Armstrong};
496