xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/amlogic/meson-axg.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (c) 2017 Amlogic, Inc. All rights reserved.
4*4882a593Smuzhiyun */
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun#include <dt-bindings/clock/axg-aoclkc.h>
7*4882a593Smuzhiyun#include <dt-bindings/clock/axg-audio-clkc.h>
8*4882a593Smuzhiyun#include <dt-bindings/clock/axg-clkc.h>
9*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h>
10*4882a593Smuzhiyun#include <dt-bindings/gpio/meson-axg-gpio.h>
11*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h>
12*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h>
13*4882a593Smuzhiyun#include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
14*4882a593Smuzhiyun#include <dt-bindings/reset/amlogic,meson-axg-reset.h>
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun/ {
17*4882a593Smuzhiyun	compatible = "amlogic,meson-axg";
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun	interrupt-parent = <&gic>;
20*4882a593Smuzhiyun	#address-cells = <2>;
21*4882a593Smuzhiyun	#size-cells = <2>;
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun	tdmif_a: audio-controller-0 {
24*4882a593Smuzhiyun		compatible = "amlogic,axg-tdm-iface";
25*4882a593Smuzhiyun		#sound-dai-cells = <0>;
26*4882a593Smuzhiyun		sound-name-prefix = "TDM_A";
27*4882a593Smuzhiyun		clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>,
28*4882a593Smuzhiyun			 <&clkc_audio AUD_CLKID_MST_A_SCLK>,
29*4882a593Smuzhiyun			 <&clkc_audio AUD_CLKID_MST_A_LRCLK>;
30*4882a593Smuzhiyun		clock-names = "mclk", "sclk", "lrclk";
31*4882a593Smuzhiyun		status = "disabled";
32*4882a593Smuzhiyun	};
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun	tdmif_b: audio-controller-1 {
35*4882a593Smuzhiyun		compatible = "amlogic,axg-tdm-iface";
36*4882a593Smuzhiyun		#sound-dai-cells = <0>;
37*4882a593Smuzhiyun		sound-name-prefix = "TDM_B";
38*4882a593Smuzhiyun		clocks = <&clkc_audio AUD_CLKID_MST_B_MCLK>,
39*4882a593Smuzhiyun			 <&clkc_audio AUD_CLKID_MST_B_SCLK>,
40*4882a593Smuzhiyun			 <&clkc_audio AUD_CLKID_MST_B_LRCLK>;
41*4882a593Smuzhiyun		clock-names = "mclk", "sclk", "lrclk";
42*4882a593Smuzhiyun		status = "disabled";
43*4882a593Smuzhiyun	};
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun	tdmif_c: audio-controller-2 {
46*4882a593Smuzhiyun		compatible = "amlogic,axg-tdm-iface";
47*4882a593Smuzhiyun		#sound-dai-cells = <0>;
48*4882a593Smuzhiyun		sound-name-prefix = "TDM_C";
49*4882a593Smuzhiyun		clocks = <&clkc_audio AUD_CLKID_MST_C_MCLK>,
50*4882a593Smuzhiyun			 <&clkc_audio AUD_CLKID_MST_C_SCLK>,
51*4882a593Smuzhiyun			 <&clkc_audio AUD_CLKID_MST_C_LRCLK>;
52*4882a593Smuzhiyun		clock-names = "mclk", "sclk", "lrclk";
53*4882a593Smuzhiyun		status = "disabled";
54*4882a593Smuzhiyun	};
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun	arm-pmu {
57*4882a593Smuzhiyun		compatible = "arm,cortex-a53-pmu";
58*4882a593Smuzhiyun		interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
59*4882a593Smuzhiyun			     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
60*4882a593Smuzhiyun			     <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
61*4882a593Smuzhiyun			     <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
62*4882a593Smuzhiyun		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
63*4882a593Smuzhiyun	};
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun	cpus {
66*4882a593Smuzhiyun		#address-cells = <0x2>;
67*4882a593Smuzhiyun		#size-cells = <0x0>;
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun		cpu0: cpu@0 {
70*4882a593Smuzhiyun			device_type = "cpu";
71*4882a593Smuzhiyun			compatible = "arm,cortex-a53";
72*4882a593Smuzhiyun			reg = <0x0 0x0>;
73*4882a593Smuzhiyun			enable-method = "psci";
74*4882a593Smuzhiyun			next-level-cache = <&l2>;
75*4882a593Smuzhiyun			clocks = <&scpi_dvfs 0>;
76*4882a593Smuzhiyun		};
77*4882a593Smuzhiyun
78*4882a593Smuzhiyun		cpu1: cpu@1 {
79*4882a593Smuzhiyun			device_type = "cpu";
80*4882a593Smuzhiyun			compatible = "arm,cortex-a53";
81*4882a593Smuzhiyun			reg = <0x0 0x1>;
82*4882a593Smuzhiyun			enable-method = "psci";
83*4882a593Smuzhiyun			next-level-cache = <&l2>;
84*4882a593Smuzhiyun			clocks = <&scpi_dvfs 0>;
85*4882a593Smuzhiyun		};
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun		cpu2: cpu@2 {
88*4882a593Smuzhiyun			device_type = "cpu";
89*4882a593Smuzhiyun			compatible = "arm,cortex-a53";
90*4882a593Smuzhiyun			reg = <0x0 0x2>;
91*4882a593Smuzhiyun			enable-method = "psci";
92*4882a593Smuzhiyun			next-level-cache = <&l2>;
93*4882a593Smuzhiyun			clocks = <&scpi_dvfs 0>;
94*4882a593Smuzhiyun		};
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun		cpu3: cpu@3 {
97*4882a593Smuzhiyun			device_type = "cpu";
98*4882a593Smuzhiyun			compatible = "arm,cortex-a53";
99*4882a593Smuzhiyun			reg = <0x0 0x3>;
100*4882a593Smuzhiyun			enable-method = "psci";
101*4882a593Smuzhiyun			next-level-cache = <&l2>;
102*4882a593Smuzhiyun			clocks = <&scpi_dvfs 0>;
103*4882a593Smuzhiyun		};
104*4882a593Smuzhiyun
105*4882a593Smuzhiyun		l2: l2-cache0 {
106*4882a593Smuzhiyun			compatible = "cache";
107*4882a593Smuzhiyun		};
108*4882a593Smuzhiyun	};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun	sm: secure-monitor {
111*4882a593Smuzhiyun		compatible = "amlogic,meson-gxbb-sm";
112*4882a593Smuzhiyun	};
113*4882a593Smuzhiyun
114*4882a593Smuzhiyun	efuse: efuse {
115*4882a593Smuzhiyun		compatible = "amlogic,meson-gxbb-efuse";
116*4882a593Smuzhiyun		clocks = <&clkc CLKID_EFUSE>;
117*4882a593Smuzhiyun		#address-cells = <1>;
118*4882a593Smuzhiyun		#size-cells = <1>;
119*4882a593Smuzhiyun		read-only;
120*4882a593Smuzhiyun		secure-monitor = <&sm>;
121*4882a593Smuzhiyun	};
122*4882a593Smuzhiyun
123*4882a593Smuzhiyun	psci {
124*4882a593Smuzhiyun		compatible = "arm,psci-1.0";
125*4882a593Smuzhiyun		method = "smc";
126*4882a593Smuzhiyun	};
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun	reserved-memory {
129*4882a593Smuzhiyun		#address-cells = <2>;
130*4882a593Smuzhiyun		#size-cells = <2>;
131*4882a593Smuzhiyun		ranges;
132*4882a593Smuzhiyun
133*4882a593Smuzhiyun		/* 16 MiB reserved for Hardware ROM Firmware */
134*4882a593Smuzhiyun		hwrom_reserved: hwrom@0 {
135*4882a593Smuzhiyun			reg = <0x0 0x0 0x0 0x1000000>;
136*4882a593Smuzhiyun			no-map;
137*4882a593Smuzhiyun		};
138*4882a593Smuzhiyun
139*4882a593Smuzhiyun		/* Alternate 3 MiB reserved for ARM Trusted Firmware (BL31) */
140*4882a593Smuzhiyun		secmon_reserved: secmon@5000000 {
141*4882a593Smuzhiyun			reg = <0x0 0x05000000 0x0 0x300000>;
142*4882a593Smuzhiyun			no-map;
143*4882a593Smuzhiyun		};
144*4882a593Smuzhiyun	};
145*4882a593Smuzhiyun
146*4882a593Smuzhiyun	scpi {
147*4882a593Smuzhiyun		compatible = "arm,scpi-pre-1.0";
148*4882a593Smuzhiyun		mboxes = <&mailbox 1 &mailbox 2>;
149*4882a593Smuzhiyun		shmem = <&cpu_scp_lpri &cpu_scp_hpri>;
150*4882a593Smuzhiyun
151*4882a593Smuzhiyun		scpi_clocks: clocks {
152*4882a593Smuzhiyun			compatible = "arm,scpi-clocks";
153*4882a593Smuzhiyun
154*4882a593Smuzhiyun			scpi_dvfs: clock-controller {
155*4882a593Smuzhiyun				compatible = "arm,scpi-dvfs-clocks";
156*4882a593Smuzhiyun				#clock-cells = <1>;
157*4882a593Smuzhiyun				clock-indices = <0>;
158*4882a593Smuzhiyun				clock-output-names = "vcpu";
159*4882a593Smuzhiyun			};
160*4882a593Smuzhiyun		};
161*4882a593Smuzhiyun
162*4882a593Smuzhiyun		scpi_sensors: sensors {
163*4882a593Smuzhiyun			compatible = "amlogic,meson-gxbb-scpi-sensors";
164*4882a593Smuzhiyun			#thermal-sensor-cells = <1>;
165*4882a593Smuzhiyun		};
166*4882a593Smuzhiyun	};
167*4882a593Smuzhiyun
168*4882a593Smuzhiyun	soc {
169*4882a593Smuzhiyun		compatible = "simple-bus";
170*4882a593Smuzhiyun		#address-cells = <2>;
171*4882a593Smuzhiyun		#size-cells = <2>;
172*4882a593Smuzhiyun		ranges;
173*4882a593Smuzhiyun
174*4882a593Smuzhiyun		usb: usb@ffe09080 {
175*4882a593Smuzhiyun			compatible = "amlogic,meson-axg-usb-ctrl";
176*4882a593Smuzhiyun			reg = <0x0 0xffe09080 0x0 0x20>;
177*4882a593Smuzhiyun			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
178*4882a593Smuzhiyun			#address-cells = <2>;
179*4882a593Smuzhiyun			#size-cells = <2>;
180*4882a593Smuzhiyun			ranges;
181*4882a593Smuzhiyun
182*4882a593Smuzhiyun			clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1_DDR_BRIDGE>;
183*4882a593Smuzhiyun			clock-names = "usb_ctrl", "ddr";
184*4882a593Smuzhiyun			resets = <&reset RESET_USB_OTG>;
185*4882a593Smuzhiyun
186*4882a593Smuzhiyun			dr_mode = "otg";
187*4882a593Smuzhiyun
188*4882a593Smuzhiyun			phys = <&usb2_phy1>;
189*4882a593Smuzhiyun			phy-names = "usb2-phy1";
190*4882a593Smuzhiyun
191*4882a593Smuzhiyun			dwc2: usb@ff400000 {
192*4882a593Smuzhiyun				compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
193*4882a593Smuzhiyun				reg = <0x0 0xff400000 0x0 0x40000>;
194*4882a593Smuzhiyun				interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
195*4882a593Smuzhiyun				clocks = <&clkc CLKID_USB1>;
196*4882a593Smuzhiyun				clock-names = "otg";
197*4882a593Smuzhiyun				phys = <&usb2_phy1>;
198*4882a593Smuzhiyun				dr_mode = "peripheral";
199*4882a593Smuzhiyun				g-rx-fifo-size = <192>;
200*4882a593Smuzhiyun				g-np-tx-fifo-size = <128>;
201*4882a593Smuzhiyun				g-tx-fifo-size = <128 128 16 16 16>;
202*4882a593Smuzhiyun			};
203*4882a593Smuzhiyun
204*4882a593Smuzhiyun			dwc3: usb@ff500000 {
205*4882a593Smuzhiyun				compatible = "snps,dwc3";
206*4882a593Smuzhiyun				reg = <0x0 0xff500000 0x0 0x100000>;
207*4882a593Smuzhiyun				interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
208*4882a593Smuzhiyun				dr_mode = "host";
209*4882a593Smuzhiyun				maximum-speed = "high-speed";
210*4882a593Smuzhiyun				snps,dis_u2_susphy_quirk;
211*4882a593Smuzhiyun			};
212*4882a593Smuzhiyun		};
213*4882a593Smuzhiyun
214*4882a593Smuzhiyun		ethmac: ethernet@ff3f0000 {
215*4882a593Smuzhiyun			compatible = "amlogic,meson-axg-dwmac",
216*4882a593Smuzhiyun				     "snps,dwmac-3.70a",
217*4882a593Smuzhiyun				     "snps,dwmac";
218*4882a593Smuzhiyun			reg = <0x0 0xff3f0000 0x0 0x10000>,
219*4882a593Smuzhiyun			      <0x0 0xff634540 0x0 0x8>;
220*4882a593Smuzhiyun			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
221*4882a593Smuzhiyun			interrupt-names = "macirq";
222*4882a593Smuzhiyun			clocks = <&clkc CLKID_ETH>,
223*4882a593Smuzhiyun				 <&clkc CLKID_FCLK_DIV2>,
224*4882a593Smuzhiyun				 <&clkc CLKID_MPLL2>,
225*4882a593Smuzhiyun				 <&clkc CLKID_FCLK_DIV2>;
226*4882a593Smuzhiyun			clock-names = "stmmaceth", "clkin0", "clkin1",
227*4882a593Smuzhiyun				      "timing-adjustment";
228*4882a593Smuzhiyun			rx-fifo-depth = <4096>;
229*4882a593Smuzhiyun			tx-fifo-depth = <2048>;
230*4882a593Smuzhiyun			status = "disabled";
231*4882a593Smuzhiyun		};
232*4882a593Smuzhiyun
233*4882a593Smuzhiyun		pdm: audio-controller@ff632000 {
234*4882a593Smuzhiyun			compatible = "amlogic,axg-pdm";
235*4882a593Smuzhiyun			reg = <0x0 0xff632000 0x0 0x34>;
236*4882a593Smuzhiyun			#sound-dai-cells = <0>;
237*4882a593Smuzhiyun			sound-name-prefix = "PDM";
238*4882a593Smuzhiyun			clocks = <&clkc_audio AUD_CLKID_PDM>,
239*4882a593Smuzhiyun				 <&clkc_audio AUD_CLKID_PDM_DCLK>,
240*4882a593Smuzhiyun				 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
241*4882a593Smuzhiyun			clock-names = "pclk", "dclk", "sysclk";
242*4882a593Smuzhiyun			status = "disabled";
243*4882a593Smuzhiyun		};
244*4882a593Smuzhiyun
245*4882a593Smuzhiyun		periphs: bus@ff634000 {
246*4882a593Smuzhiyun			compatible = "simple-bus";
247*4882a593Smuzhiyun			reg = <0x0 0xff634000 0x0 0x2000>;
248*4882a593Smuzhiyun			#address-cells = <2>;
249*4882a593Smuzhiyun			#size-cells = <2>;
250*4882a593Smuzhiyun			ranges = <0x0 0x0 0x0 0xff634000 0x0 0x2000>;
251*4882a593Smuzhiyun
252*4882a593Smuzhiyun			hwrng: rng@18 {
253*4882a593Smuzhiyun				compatible = "amlogic,meson-rng";
254*4882a593Smuzhiyun				reg = <0x0 0x18 0x0 0x4>;
255*4882a593Smuzhiyun				clocks = <&clkc CLKID_RNG0>;
256*4882a593Smuzhiyun				clock-names = "core";
257*4882a593Smuzhiyun			};
258*4882a593Smuzhiyun
259*4882a593Smuzhiyun			pinctrl_periphs: pinctrl@480 {
260*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-periphs-pinctrl";
261*4882a593Smuzhiyun				#address-cells = <2>;
262*4882a593Smuzhiyun				#size-cells = <2>;
263*4882a593Smuzhiyun				ranges;
264*4882a593Smuzhiyun
265*4882a593Smuzhiyun				gpio: bank@480 {
266*4882a593Smuzhiyun					reg = <0x0 0x00480 0x0 0x40>,
267*4882a593Smuzhiyun					      <0x0 0x004e8 0x0 0x14>,
268*4882a593Smuzhiyun					      <0x0 0x00520 0x0 0x14>,
269*4882a593Smuzhiyun					      <0x0 0x00430 0x0 0x3c>;
270*4882a593Smuzhiyun					reg-names = "mux", "pull", "pull-enable", "gpio";
271*4882a593Smuzhiyun					gpio-controller;
272*4882a593Smuzhiyun					#gpio-cells = <2>;
273*4882a593Smuzhiyun					gpio-ranges = <&pinctrl_periphs 0 0 86>;
274*4882a593Smuzhiyun				};
275*4882a593Smuzhiyun
276*4882a593Smuzhiyun				i2c0_pins: i2c0 {
277*4882a593Smuzhiyun					mux {
278*4882a593Smuzhiyun						groups = "i2c0_sck",
279*4882a593Smuzhiyun							 "i2c0_sda";
280*4882a593Smuzhiyun						function = "i2c0";
281*4882a593Smuzhiyun						bias-disable;
282*4882a593Smuzhiyun					};
283*4882a593Smuzhiyun				};
284*4882a593Smuzhiyun
285*4882a593Smuzhiyun				i2c1_x_pins: i2c1_x {
286*4882a593Smuzhiyun					mux {
287*4882a593Smuzhiyun						groups = "i2c1_sck_x",
288*4882a593Smuzhiyun							 "i2c1_sda_x";
289*4882a593Smuzhiyun						function = "i2c1";
290*4882a593Smuzhiyun						bias-disable;
291*4882a593Smuzhiyun					};
292*4882a593Smuzhiyun				};
293*4882a593Smuzhiyun
294*4882a593Smuzhiyun				i2c1_z_pins: i2c1_z {
295*4882a593Smuzhiyun					mux {
296*4882a593Smuzhiyun						groups = "i2c1_sck_z",
297*4882a593Smuzhiyun							 "i2c1_sda_z";
298*4882a593Smuzhiyun						function = "i2c1";
299*4882a593Smuzhiyun						bias-disable;
300*4882a593Smuzhiyun					};
301*4882a593Smuzhiyun				};
302*4882a593Smuzhiyun
303*4882a593Smuzhiyun				i2c2_a_pins: i2c2_a {
304*4882a593Smuzhiyun					mux {
305*4882a593Smuzhiyun						groups = "i2c2_sck_a",
306*4882a593Smuzhiyun							 "i2c2_sda_a";
307*4882a593Smuzhiyun						function = "i2c2";
308*4882a593Smuzhiyun						bias-disable;
309*4882a593Smuzhiyun					};
310*4882a593Smuzhiyun				};
311*4882a593Smuzhiyun
312*4882a593Smuzhiyun				i2c2_x_pins: i2c2_x {
313*4882a593Smuzhiyun					mux {
314*4882a593Smuzhiyun						groups = "i2c2_sck_x",
315*4882a593Smuzhiyun							 "i2c2_sda_x";
316*4882a593Smuzhiyun						function = "i2c2";
317*4882a593Smuzhiyun						bias-disable;
318*4882a593Smuzhiyun					};
319*4882a593Smuzhiyun				};
320*4882a593Smuzhiyun
321*4882a593Smuzhiyun				i2c3_a6_pins: i2c3_a6 {
322*4882a593Smuzhiyun					mux {
323*4882a593Smuzhiyun						groups = "i2c3_sda_a6",
324*4882a593Smuzhiyun							 "i2c3_sck_a7";
325*4882a593Smuzhiyun						function = "i2c3";
326*4882a593Smuzhiyun						bias-disable;
327*4882a593Smuzhiyun					};
328*4882a593Smuzhiyun				};
329*4882a593Smuzhiyun
330*4882a593Smuzhiyun				i2c3_a12_pins: i2c3_a12 {
331*4882a593Smuzhiyun					mux {
332*4882a593Smuzhiyun						groups = "i2c3_sda_a12",
333*4882a593Smuzhiyun							 "i2c3_sck_a13";
334*4882a593Smuzhiyun						function = "i2c3";
335*4882a593Smuzhiyun						bias-disable;
336*4882a593Smuzhiyun					};
337*4882a593Smuzhiyun				};
338*4882a593Smuzhiyun
339*4882a593Smuzhiyun				i2c3_a19_pins: i2c3_a19 {
340*4882a593Smuzhiyun					mux {
341*4882a593Smuzhiyun						groups = "i2c3_sda_a19",
342*4882a593Smuzhiyun							 "i2c3_sck_a20";
343*4882a593Smuzhiyun						function = "i2c3";
344*4882a593Smuzhiyun						bias-disable;
345*4882a593Smuzhiyun					};
346*4882a593Smuzhiyun				};
347*4882a593Smuzhiyun
348*4882a593Smuzhiyun				emmc_pins: emmc {
349*4882a593Smuzhiyun					mux-0 {
350*4882a593Smuzhiyun						groups = "emmc_nand_d0",
351*4882a593Smuzhiyun							 "emmc_nand_d1",
352*4882a593Smuzhiyun							 "emmc_nand_d2",
353*4882a593Smuzhiyun							 "emmc_nand_d3",
354*4882a593Smuzhiyun							 "emmc_nand_d4",
355*4882a593Smuzhiyun							 "emmc_nand_d5",
356*4882a593Smuzhiyun							 "emmc_nand_d6",
357*4882a593Smuzhiyun							 "emmc_nand_d7",
358*4882a593Smuzhiyun							 "emmc_cmd";
359*4882a593Smuzhiyun						function = "emmc";
360*4882a593Smuzhiyun						bias-pull-up;
361*4882a593Smuzhiyun					};
362*4882a593Smuzhiyun
363*4882a593Smuzhiyun					mux-1 {
364*4882a593Smuzhiyun						groups = "emmc_clk";
365*4882a593Smuzhiyun						function = "emmc";
366*4882a593Smuzhiyun						bias-disable;
367*4882a593Smuzhiyun					};
368*4882a593Smuzhiyun				};
369*4882a593Smuzhiyun
370*4882a593Smuzhiyun				emmc_ds_pins: emmc_ds {
371*4882a593Smuzhiyun					mux {
372*4882a593Smuzhiyun						groups = "emmc_ds";
373*4882a593Smuzhiyun						function = "emmc";
374*4882a593Smuzhiyun						bias-pull-down;
375*4882a593Smuzhiyun					};
376*4882a593Smuzhiyun				};
377*4882a593Smuzhiyun
378*4882a593Smuzhiyun				emmc_clk_gate_pins: emmc_clk_gate {
379*4882a593Smuzhiyun					mux {
380*4882a593Smuzhiyun						groups = "BOOT_8";
381*4882a593Smuzhiyun						function = "gpio_periphs";
382*4882a593Smuzhiyun						bias-pull-down;
383*4882a593Smuzhiyun					};
384*4882a593Smuzhiyun				};
385*4882a593Smuzhiyun
386*4882a593Smuzhiyun				eth_rgmii_x_pins: eth-x-rgmii {
387*4882a593Smuzhiyun					mux {
388*4882a593Smuzhiyun						groups = "eth_mdio_x",
389*4882a593Smuzhiyun							 "eth_mdc_x",
390*4882a593Smuzhiyun							 "eth_rgmii_rx_clk_x",
391*4882a593Smuzhiyun							 "eth_rx_dv_x",
392*4882a593Smuzhiyun							 "eth_rxd0_x",
393*4882a593Smuzhiyun							 "eth_rxd1_x",
394*4882a593Smuzhiyun							 "eth_rxd2_rgmii",
395*4882a593Smuzhiyun							 "eth_rxd3_rgmii",
396*4882a593Smuzhiyun							 "eth_rgmii_tx_clk",
397*4882a593Smuzhiyun							 "eth_txen_x",
398*4882a593Smuzhiyun							 "eth_txd0_x",
399*4882a593Smuzhiyun							 "eth_txd1_x",
400*4882a593Smuzhiyun							 "eth_txd2_rgmii",
401*4882a593Smuzhiyun							 "eth_txd3_rgmii";
402*4882a593Smuzhiyun						function = "eth";
403*4882a593Smuzhiyun						bias-disable;
404*4882a593Smuzhiyun					};
405*4882a593Smuzhiyun				};
406*4882a593Smuzhiyun
407*4882a593Smuzhiyun				eth_rgmii_y_pins: eth-y-rgmii {
408*4882a593Smuzhiyun					mux {
409*4882a593Smuzhiyun						groups = "eth_mdio_y",
410*4882a593Smuzhiyun							 "eth_mdc_y",
411*4882a593Smuzhiyun							 "eth_rgmii_rx_clk_y",
412*4882a593Smuzhiyun							 "eth_rx_dv_y",
413*4882a593Smuzhiyun							 "eth_rxd0_y",
414*4882a593Smuzhiyun							 "eth_rxd1_y",
415*4882a593Smuzhiyun							 "eth_rxd2_rgmii",
416*4882a593Smuzhiyun							 "eth_rxd3_rgmii",
417*4882a593Smuzhiyun							 "eth_rgmii_tx_clk",
418*4882a593Smuzhiyun							 "eth_txen_y",
419*4882a593Smuzhiyun							 "eth_txd0_y",
420*4882a593Smuzhiyun							 "eth_txd1_y",
421*4882a593Smuzhiyun							 "eth_txd2_rgmii",
422*4882a593Smuzhiyun							 "eth_txd3_rgmii";
423*4882a593Smuzhiyun						function = "eth";
424*4882a593Smuzhiyun						bias-disable;
425*4882a593Smuzhiyun					};
426*4882a593Smuzhiyun				};
427*4882a593Smuzhiyun
428*4882a593Smuzhiyun				eth_rmii_x_pins: eth-x-rmii {
429*4882a593Smuzhiyun					mux {
430*4882a593Smuzhiyun						groups = "eth_mdio_x",
431*4882a593Smuzhiyun							 "eth_mdc_x",
432*4882a593Smuzhiyun							 "eth_rgmii_rx_clk_x",
433*4882a593Smuzhiyun							 "eth_rx_dv_x",
434*4882a593Smuzhiyun							 "eth_rxd0_x",
435*4882a593Smuzhiyun							 "eth_rxd1_x",
436*4882a593Smuzhiyun							 "eth_txen_x",
437*4882a593Smuzhiyun							 "eth_txd0_x",
438*4882a593Smuzhiyun							 "eth_txd1_x";
439*4882a593Smuzhiyun						function = "eth";
440*4882a593Smuzhiyun						bias-disable;
441*4882a593Smuzhiyun					};
442*4882a593Smuzhiyun				};
443*4882a593Smuzhiyun
444*4882a593Smuzhiyun				eth_rmii_y_pins: eth-y-rmii {
445*4882a593Smuzhiyun					mux {
446*4882a593Smuzhiyun						groups = "eth_mdio_y",
447*4882a593Smuzhiyun							 "eth_mdc_y",
448*4882a593Smuzhiyun							 "eth_rgmii_rx_clk_y",
449*4882a593Smuzhiyun							 "eth_rx_dv_y",
450*4882a593Smuzhiyun							 "eth_rxd0_y",
451*4882a593Smuzhiyun							 "eth_rxd1_y",
452*4882a593Smuzhiyun							 "eth_txen_y",
453*4882a593Smuzhiyun							 "eth_txd0_y",
454*4882a593Smuzhiyun							 "eth_txd1_y";
455*4882a593Smuzhiyun						function = "eth";
456*4882a593Smuzhiyun						bias-disable;
457*4882a593Smuzhiyun					};
458*4882a593Smuzhiyun				};
459*4882a593Smuzhiyun
460*4882a593Smuzhiyun				mclk_b_pins: mclk_b {
461*4882a593Smuzhiyun					mux {
462*4882a593Smuzhiyun						groups = "mclk_b";
463*4882a593Smuzhiyun						function = "mclk_b";
464*4882a593Smuzhiyun						bias-disable;
465*4882a593Smuzhiyun					};
466*4882a593Smuzhiyun				};
467*4882a593Smuzhiyun
468*4882a593Smuzhiyun				mclk_c_pins: mclk_c {
469*4882a593Smuzhiyun					mux {
470*4882a593Smuzhiyun						groups = "mclk_c";
471*4882a593Smuzhiyun						function = "mclk_c";
472*4882a593Smuzhiyun						bias-disable;
473*4882a593Smuzhiyun					};
474*4882a593Smuzhiyun				};
475*4882a593Smuzhiyun
476*4882a593Smuzhiyun				pdm_dclk_a14_pins: pdm_dclk_a14 {
477*4882a593Smuzhiyun					mux {
478*4882a593Smuzhiyun						groups = "pdm_dclk_a14";
479*4882a593Smuzhiyun						function = "pdm";
480*4882a593Smuzhiyun						bias-disable;
481*4882a593Smuzhiyun					};
482*4882a593Smuzhiyun				};
483*4882a593Smuzhiyun
484*4882a593Smuzhiyun				pdm_dclk_a19_pins: pdm_dclk_a19 {
485*4882a593Smuzhiyun					mux {
486*4882a593Smuzhiyun						groups = "pdm_dclk_a19";
487*4882a593Smuzhiyun						function = "pdm";
488*4882a593Smuzhiyun						bias-disable;
489*4882a593Smuzhiyun					};
490*4882a593Smuzhiyun				};
491*4882a593Smuzhiyun
492*4882a593Smuzhiyun				pdm_din0_pins: pdm_din0 {
493*4882a593Smuzhiyun					mux {
494*4882a593Smuzhiyun						groups = "pdm_din0";
495*4882a593Smuzhiyun						function = "pdm";
496*4882a593Smuzhiyun						bias-disable;
497*4882a593Smuzhiyun					};
498*4882a593Smuzhiyun				};
499*4882a593Smuzhiyun
500*4882a593Smuzhiyun				pdm_din1_pins: pdm_din1 {
501*4882a593Smuzhiyun					mux {
502*4882a593Smuzhiyun						groups = "pdm_din1";
503*4882a593Smuzhiyun						function = "pdm";
504*4882a593Smuzhiyun						bias-disable;
505*4882a593Smuzhiyun					};
506*4882a593Smuzhiyun				};
507*4882a593Smuzhiyun
508*4882a593Smuzhiyun				pdm_din2_pins: pdm_din2 {
509*4882a593Smuzhiyun					mux {
510*4882a593Smuzhiyun						groups = "pdm_din2";
511*4882a593Smuzhiyun						function = "pdm";
512*4882a593Smuzhiyun						bias-disable;
513*4882a593Smuzhiyun					};
514*4882a593Smuzhiyun				};
515*4882a593Smuzhiyun
516*4882a593Smuzhiyun				pdm_din3_pins: pdm_din3 {
517*4882a593Smuzhiyun					mux {
518*4882a593Smuzhiyun						groups = "pdm_din3";
519*4882a593Smuzhiyun						function = "pdm";
520*4882a593Smuzhiyun						bias-disable;
521*4882a593Smuzhiyun					};
522*4882a593Smuzhiyun				};
523*4882a593Smuzhiyun
524*4882a593Smuzhiyun				pwm_a_a_pins: pwm_a_a {
525*4882a593Smuzhiyun					mux {
526*4882a593Smuzhiyun						groups = "pwm_a_a";
527*4882a593Smuzhiyun						function = "pwm_a";
528*4882a593Smuzhiyun						bias-disable;
529*4882a593Smuzhiyun					};
530*4882a593Smuzhiyun				};
531*4882a593Smuzhiyun
532*4882a593Smuzhiyun				pwm_a_x18_pins: pwm_a_x18 {
533*4882a593Smuzhiyun					mux {
534*4882a593Smuzhiyun						groups = "pwm_a_x18";
535*4882a593Smuzhiyun						function = "pwm_a";
536*4882a593Smuzhiyun						bias-disable;
537*4882a593Smuzhiyun					};
538*4882a593Smuzhiyun				};
539*4882a593Smuzhiyun
540*4882a593Smuzhiyun				pwm_a_x20_pins: pwm_a_x20 {
541*4882a593Smuzhiyun					mux {
542*4882a593Smuzhiyun						groups = "pwm_a_x20";
543*4882a593Smuzhiyun						function = "pwm_a";
544*4882a593Smuzhiyun						bias-disable;
545*4882a593Smuzhiyun					};
546*4882a593Smuzhiyun				};
547*4882a593Smuzhiyun
548*4882a593Smuzhiyun				pwm_a_z_pins: pwm_a_z {
549*4882a593Smuzhiyun					mux {
550*4882a593Smuzhiyun						groups = "pwm_a_z";
551*4882a593Smuzhiyun						function = "pwm_a";
552*4882a593Smuzhiyun						bias-disable;
553*4882a593Smuzhiyun					};
554*4882a593Smuzhiyun				};
555*4882a593Smuzhiyun
556*4882a593Smuzhiyun				pwm_b_a_pins: pwm_b_a {
557*4882a593Smuzhiyun					mux {
558*4882a593Smuzhiyun						groups = "pwm_b_a";
559*4882a593Smuzhiyun						function = "pwm_b";
560*4882a593Smuzhiyun						bias-disable;
561*4882a593Smuzhiyun					};
562*4882a593Smuzhiyun				};
563*4882a593Smuzhiyun
564*4882a593Smuzhiyun				pwm_b_x_pins: pwm_b_x {
565*4882a593Smuzhiyun					mux {
566*4882a593Smuzhiyun						groups = "pwm_b_x";
567*4882a593Smuzhiyun						function = "pwm_b";
568*4882a593Smuzhiyun						bias-disable;
569*4882a593Smuzhiyun					};
570*4882a593Smuzhiyun				};
571*4882a593Smuzhiyun
572*4882a593Smuzhiyun				pwm_b_z_pins: pwm_b_z {
573*4882a593Smuzhiyun					mux {
574*4882a593Smuzhiyun						groups = "pwm_b_z";
575*4882a593Smuzhiyun						function = "pwm_b";
576*4882a593Smuzhiyun						bias-disable;
577*4882a593Smuzhiyun					};
578*4882a593Smuzhiyun				};
579*4882a593Smuzhiyun
580*4882a593Smuzhiyun				pwm_c_a_pins: pwm_c_a {
581*4882a593Smuzhiyun					mux {
582*4882a593Smuzhiyun						groups = "pwm_c_a";
583*4882a593Smuzhiyun						function = "pwm_c";
584*4882a593Smuzhiyun						bias-disable;
585*4882a593Smuzhiyun					};
586*4882a593Smuzhiyun				};
587*4882a593Smuzhiyun
588*4882a593Smuzhiyun				pwm_c_x10_pins: pwm_c_x10 {
589*4882a593Smuzhiyun					mux {
590*4882a593Smuzhiyun						groups = "pwm_c_x10";
591*4882a593Smuzhiyun						function = "pwm_c";
592*4882a593Smuzhiyun						bias-disable;
593*4882a593Smuzhiyun					};
594*4882a593Smuzhiyun				};
595*4882a593Smuzhiyun
596*4882a593Smuzhiyun				pwm_c_x17_pins: pwm_c_x17 {
597*4882a593Smuzhiyun					mux {
598*4882a593Smuzhiyun						groups = "pwm_c_x17";
599*4882a593Smuzhiyun						function = "pwm_c";
600*4882a593Smuzhiyun						bias-disable;
601*4882a593Smuzhiyun					};
602*4882a593Smuzhiyun				};
603*4882a593Smuzhiyun
604*4882a593Smuzhiyun				pwm_d_x11_pins: pwm_d_x11 {
605*4882a593Smuzhiyun					mux {
606*4882a593Smuzhiyun						groups = "pwm_d_x11";
607*4882a593Smuzhiyun						function = "pwm_d";
608*4882a593Smuzhiyun						bias-disable;
609*4882a593Smuzhiyun					};
610*4882a593Smuzhiyun				};
611*4882a593Smuzhiyun
612*4882a593Smuzhiyun				pwm_d_x16_pins: pwm_d_x16 {
613*4882a593Smuzhiyun					mux {
614*4882a593Smuzhiyun						groups = "pwm_d_x16";
615*4882a593Smuzhiyun						function = "pwm_d";
616*4882a593Smuzhiyun						bias-disable;
617*4882a593Smuzhiyun					};
618*4882a593Smuzhiyun				};
619*4882a593Smuzhiyun
620*4882a593Smuzhiyun				sdio_pins: sdio {
621*4882a593Smuzhiyun					mux-0 {
622*4882a593Smuzhiyun						groups = "sdio_d0",
623*4882a593Smuzhiyun							 "sdio_d1",
624*4882a593Smuzhiyun							 "sdio_d2",
625*4882a593Smuzhiyun							 "sdio_d3",
626*4882a593Smuzhiyun							 "sdio_cmd";
627*4882a593Smuzhiyun						function = "sdio";
628*4882a593Smuzhiyun						bias-pull-up;
629*4882a593Smuzhiyun					};
630*4882a593Smuzhiyun
631*4882a593Smuzhiyun					mux-1 {
632*4882a593Smuzhiyun						groups = "sdio_clk";
633*4882a593Smuzhiyun						function = "sdio";
634*4882a593Smuzhiyun						bias-disable;
635*4882a593Smuzhiyun					};
636*4882a593Smuzhiyun				};
637*4882a593Smuzhiyun
638*4882a593Smuzhiyun				sdio_clk_gate_pins: sdio_clk_gate {
639*4882a593Smuzhiyun					mux {
640*4882a593Smuzhiyun						groups = "GPIOX_4";
641*4882a593Smuzhiyun						function = "gpio_periphs";
642*4882a593Smuzhiyun						bias-pull-down;
643*4882a593Smuzhiyun					};
644*4882a593Smuzhiyun				};
645*4882a593Smuzhiyun
646*4882a593Smuzhiyun				spdif_in_z_pins: spdif_in_z {
647*4882a593Smuzhiyun					mux {
648*4882a593Smuzhiyun						groups = "spdif_in_z";
649*4882a593Smuzhiyun						function = "spdif_in";
650*4882a593Smuzhiyun						bias-disable;
651*4882a593Smuzhiyun					};
652*4882a593Smuzhiyun				};
653*4882a593Smuzhiyun
654*4882a593Smuzhiyun				spdif_in_a1_pins: spdif_in_a1 {
655*4882a593Smuzhiyun					mux {
656*4882a593Smuzhiyun						groups = "spdif_in_a1";
657*4882a593Smuzhiyun						function = "spdif_in";
658*4882a593Smuzhiyun						bias-disable;
659*4882a593Smuzhiyun					};
660*4882a593Smuzhiyun				};
661*4882a593Smuzhiyun
662*4882a593Smuzhiyun				spdif_in_a7_pins: spdif_in_a7 {
663*4882a593Smuzhiyun					mux {
664*4882a593Smuzhiyun						groups = "spdif_in_a7";
665*4882a593Smuzhiyun						function = "spdif_in";
666*4882a593Smuzhiyun						bias-disable;
667*4882a593Smuzhiyun					};
668*4882a593Smuzhiyun				};
669*4882a593Smuzhiyun
670*4882a593Smuzhiyun				spdif_in_a19_pins: spdif_in_a19 {
671*4882a593Smuzhiyun					mux {
672*4882a593Smuzhiyun						groups = "spdif_in_a19";
673*4882a593Smuzhiyun						function = "spdif_in";
674*4882a593Smuzhiyun						bias-disable;
675*4882a593Smuzhiyun					};
676*4882a593Smuzhiyun				};
677*4882a593Smuzhiyun
678*4882a593Smuzhiyun				spdif_in_a20_pins: spdif_in_a20 {
679*4882a593Smuzhiyun					mux {
680*4882a593Smuzhiyun						groups = "spdif_in_a20";
681*4882a593Smuzhiyun						function = "spdif_in";
682*4882a593Smuzhiyun						bias-disable;
683*4882a593Smuzhiyun					};
684*4882a593Smuzhiyun				};
685*4882a593Smuzhiyun
686*4882a593Smuzhiyun				spdif_out_a1_pins: spdif_out_a1 {
687*4882a593Smuzhiyun					mux {
688*4882a593Smuzhiyun						groups = "spdif_out_a1";
689*4882a593Smuzhiyun						function = "spdif_out";
690*4882a593Smuzhiyun						bias-disable;
691*4882a593Smuzhiyun					};
692*4882a593Smuzhiyun				};
693*4882a593Smuzhiyun
694*4882a593Smuzhiyun				spdif_out_a11_pins: spdif_out_a11 {
695*4882a593Smuzhiyun					mux {
696*4882a593Smuzhiyun						groups = "spdif_out_a11";
697*4882a593Smuzhiyun						function = "spdif_out";
698*4882a593Smuzhiyun						bias-disable;
699*4882a593Smuzhiyun					};
700*4882a593Smuzhiyun				};
701*4882a593Smuzhiyun
702*4882a593Smuzhiyun				spdif_out_a19_pins: spdif_out_a19 {
703*4882a593Smuzhiyun					mux {
704*4882a593Smuzhiyun						groups = "spdif_out_a19";
705*4882a593Smuzhiyun						function = "spdif_out";
706*4882a593Smuzhiyun						bias-disable;
707*4882a593Smuzhiyun					};
708*4882a593Smuzhiyun				};
709*4882a593Smuzhiyun
710*4882a593Smuzhiyun				spdif_out_a20_pins: spdif_out_a20 {
711*4882a593Smuzhiyun					mux {
712*4882a593Smuzhiyun						groups = "spdif_out_a20";
713*4882a593Smuzhiyun						function = "spdif_out";
714*4882a593Smuzhiyun						bias-disable;
715*4882a593Smuzhiyun					};
716*4882a593Smuzhiyun				};
717*4882a593Smuzhiyun
718*4882a593Smuzhiyun				spdif_out_z_pins: spdif_out_z {
719*4882a593Smuzhiyun					mux {
720*4882a593Smuzhiyun						groups = "spdif_out_z";
721*4882a593Smuzhiyun						function = "spdif_out";
722*4882a593Smuzhiyun						bias-disable;
723*4882a593Smuzhiyun					};
724*4882a593Smuzhiyun				};
725*4882a593Smuzhiyun
726*4882a593Smuzhiyun				spi0_pins: spi0 {
727*4882a593Smuzhiyun					mux {
728*4882a593Smuzhiyun						groups = "spi0_miso",
729*4882a593Smuzhiyun							 "spi0_mosi",
730*4882a593Smuzhiyun							 "spi0_clk";
731*4882a593Smuzhiyun						function = "spi0";
732*4882a593Smuzhiyun						bias-disable;
733*4882a593Smuzhiyun					};
734*4882a593Smuzhiyun				};
735*4882a593Smuzhiyun
736*4882a593Smuzhiyun				spi0_ss0_pins: spi0_ss0 {
737*4882a593Smuzhiyun					mux {
738*4882a593Smuzhiyun						groups = "spi0_ss0";
739*4882a593Smuzhiyun						function = "spi0";
740*4882a593Smuzhiyun						bias-disable;
741*4882a593Smuzhiyun					};
742*4882a593Smuzhiyun				};
743*4882a593Smuzhiyun
744*4882a593Smuzhiyun				spi0_ss1_pins: spi0_ss1 {
745*4882a593Smuzhiyun					mux {
746*4882a593Smuzhiyun						groups = "spi0_ss1";
747*4882a593Smuzhiyun						function = "spi0";
748*4882a593Smuzhiyun						bias-disable;
749*4882a593Smuzhiyun					};
750*4882a593Smuzhiyun				};
751*4882a593Smuzhiyun
752*4882a593Smuzhiyun				spi0_ss2_pins: spi0_ss2 {
753*4882a593Smuzhiyun					mux {
754*4882a593Smuzhiyun						groups = "spi0_ss2";
755*4882a593Smuzhiyun						function = "spi0";
756*4882a593Smuzhiyun						bias-disable;
757*4882a593Smuzhiyun					};
758*4882a593Smuzhiyun				};
759*4882a593Smuzhiyun
760*4882a593Smuzhiyun				spi1_a_pins: spi1_a {
761*4882a593Smuzhiyun					mux {
762*4882a593Smuzhiyun						groups = "spi1_miso_a",
763*4882a593Smuzhiyun							 "spi1_mosi_a",
764*4882a593Smuzhiyun							 "spi1_clk_a";
765*4882a593Smuzhiyun						function = "spi1";
766*4882a593Smuzhiyun						bias-disable;
767*4882a593Smuzhiyun					};
768*4882a593Smuzhiyun				};
769*4882a593Smuzhiyun
770*4882a593Smuzhiyun				spi1_ss0_a_pins: spi1_ss0_a {
771*4882a593Smuzhiyun					mux {
772*4882a593Smuzhiyun						groups = "spi1_ss0_a";
773*4882a593Smuzhiyun						function = "spi1";
774*4882a593Smuzhiyun						bias-disable;
775*4882a593Smuzhiyun					};
776*4882a593Smuzhiyun				};
777*4882a593Smuzhiyun
778*4882a593Smuzhiyun				spi1_ss1_pins: spi1_ss1 {
779*4882a593Smuzhiyun					mux {
780*4882a593Smuzhiyun						groups = "spi1_ss1";
781*4882a593Smuzhiyun						function = "spi1";
782*4882a593Smuzhiyun						bias-disable;
783*4882a593Smuzhiyun					};
784*4882a593Smuzhiyun				};
785*4882a593Smuzhiyun
786*4882a593Smuzhiyun				spi1_x_pins: spi1_x {
787*4882a593Smuzhiyun					mux {
788*4882a593Smuzhiyun						groups = "spi1_miso_x",
789*4882a593Smuzhiyun							 "spi1_mosi_x",
790*4882a593Smuzhiyun							 "spi1_clk_x";
791*4882a593Smuzhiyun						function = "spi1";
792*4882a593Smuzhiyun						bias-disable;
793*4882a593Smuzhiyun					};
794*4882a593Smuzhiyun				};
795*4882a593Smuzhiyun
796*4882a593Smuzhiyun				spi1_ss0_x_pins: spi1_ss0_x {
797*4882a593Smuzhiyun					mux {
798*4882a593Smuzhiyun						groups = "spi1_ss0_x";
799*4882a593Smuzhiyun						function = "spi1";
800*4882a593Smuzhiyun						bias-disable;
801*4882a593Smuzhiyun					};
802*4882a593Smuzhiyun				};
803*4882a593Smuzhiyun
804*4882a593Smuzhiyun				tdma_din0_pins: tdma_din0 {
805*4882a593Smuzhiyun					mux {
806*4882a593Smuzhiyun						groups = "tdma_din0";
807*4882a593Smuzhiyun						function = "tdma";
808*4882a593Smuzhiyun						bias-disable;
809*4882a593Smuzhiyun					};
810*4882a593Smuzhiyun				};
811*4882a593Smuzhiyun
812*4882a593Smuzhiyun				tdma_dout0_x14_pins: tdma_dout0_x14 {
813*4882a593Smuzhiyun					mux {
814*4882a593Smuzhiyun						groups = "tdma_dout0_x14";
815*4882a593Smuzhiyun						function = "tdma";
816*4882a593Smuzhiyun						bias-disable;
817*4882a593Smuzhiyun					};
818*4882a593Smuzhiyun				};
819*4882a593Smuzhiyun
820*4882a593Smuzhiyun				tdma_dout0_x15_pins: tdma_dout0_x15 {
821*4882a593Smuzhiyun					mux {
822*4882a593Smuzhiyun						groups = "tdma_dout0_x15";
823*4882a593Smuzhiyun						function = "tdma";
824*4882a593Smuzhiyun						bias-disable;
825*4882a593Smuzhiyun					};
826*4882a593Smuzhiyun				};
827*4882a593Smuzhiyun
828*4882a593Smuzhiyun				tdma_dout1_pins: tdma_dout1 {
829*4882a593Smuzhiyun					mux {
830*4882a593Smuzhiyun						groups = "tdma_dout1";
831*4882a593Smuzhiyun						function = "tdma";
832*4882a593Smuzhiyun						bias-disable;
833*4882a593Smuzhiyun					};
834*4882a593Smuzhiyun				};
835*4882a593Smuzhiyun
836*4882a593Smuzhiyun				tdma_din1_pins: tdma_din1 {
837*4882a593Smuzhiyun					mux {
838*4882a593Smuzhiyun						groups = "tdma_din1";
839*4882a593Smuzhiyun						function = "tdma";
840*4882a593Smuzhiyun						bias-disable;
841*4882a593Smuzhiyun					};
842*4882a593Smuzhiyun				};
843*4882a593Smuzhiyun
844*4882a593Smuzhiyun				tdma_fs_pins: tdma_fs {
845*4882a593Smuzhiyun					mux {
846*4882a593Smuzhiyun						groups = "tdma_fs";
847*4882a593Smuzhiyun						function = "tdma";
848*4882a593Smuzhiyun						bias-disable;
849*4882a593Smuzhiyun					};
850*4882a593Smuzhiyun				};
851*4882a593Smuzhiyun
852*4882a593Smuzhiyun				tdma_fs_slv_pins: tdma_fs_slv {
853*4882a593Smuzhiyun					mux {
854*4882a593Smuzhiyun						groups = "tdma_fs_slv";
855*4882a593Smuzhiyun						function = "tdma";
856*4882a593Smuzhiyun						bias-disable;
857*4882a593Smuzhiyun					};
858*4882a593Smuzhiyun				};
859*4882a593Smuzhiyun
860*4882a593Smuzhiyun				tdma_sclk_pins: tdma_sclk {
861*4882a593Smuzhiyun					mux {
862*4882a593Smuzhiyun						groups = "tdma_sclk";
863*4882a593Smuzhiyun						function = "tdma";
864*4882a593Smuzhiyun						bias-disable;
865*4882a593Smuzhiyun					};
866*4882a593Smuzhiyun				};
867*4882a593Smuzhiyun
868*4882a593Smuzhiyun				tdma_sclk_slv_pins: tdma_sclk_slv {
869*4882a593Smuzhiyun					mux {
870*4882a593Smuzhiyun						groups = "tdma_sclk_slv";
871*4882a593Smuzhiyun						function = "tdma";
872*4882a593Smuzhiyun						bias-disable;
873*4882a593Smuzhiyun					};
874*4882a593Smuzhiyun				};
875*4882a593Smuzhiyun
876*4882a593Smuzhiyun				tdmb_din0_pins: tdmb_din0 {
877*4882a593Smuzhiyun					mux {
878*4882a593Smuzhiyun						groups = "tdmb_din0";
879*4882a593Smuzhiyun						function = "tdmb";
880*4882a593Smuzhiyun						bias-disable;
881*4882a593Smuzhiyun					};
882*4882a593Smuzhiyun				};
883*4882a593Smuzhiyun
884*4882a593Smuzhiyun				tdmb_din1_pins: tdmb_din1 {
885*4882a593Smuzhiyun					mux {
886*4882a593Smuzhiyun						groups = "tdmb_din1";
887*4882a593Smuzhiyun						function = "tdmb";
888*4882a593Smuzhiyun						bias-disable;
889*4882a593Smuzhiyun					};
890*4882a593Smuzhiyun				};
891*4882a593Smuzhiyun
892*4882a593Smuzhiyun				tdmb_din2_pins: tdmb_din2 {
893*4882a593Smuzhiyun					mux {
894*4882a593Smuzhiyun						groups = "tdmb_din2";
895*4882a593Smuzhiyun						function = "tdmb";
896*4882a593Smuzhiyun						bias-disable;
897*4882a593Smuzhiyun					};
898*4882a593Smuzhiyun				};
899*4882a593Smuzhiyun
900*4882a593Smuzhiyun				tdmb_din3_pins: tdmb_din3 {
901*4882a593Smuzhiyun					mux {
902*4882a593Smuzhiyun						groups = "tdmb_din3";
903*4882a593Smuzhiyun						function = "tdmb";
904*4882a593Smuzhiyun						bias-disable;
905*4882a593Smuzhiyun					};
906*4882a593Smuzhiyun				};
907*4882a593Smuzhiyun
908*4882a593Smuzhiyun				tdmb_dout0_pins: tdmb_dout0 {
909*4882a593Smuzhiyun					mux {
910*4882a593Smuzhiyun						groups = "tdmb_dout0";
911*4882a593Smuzhiyun						function = "tdmb";
912*4882a593Smuzhiyun						bias-disable;
913*4882a593Smuzhiyun					};
914*4882a593Smuzhiyun				};
915*4882a593Smuzhiyun
916*4882a593Smuzhiyun				tdmb_dout1_pins: tdmb_dout1 {
917*4882a593Smuzhiyun					mux {
918*4882a593Smuzhiyun						groups = "tdmb_dout1";
919*4882a593Smuzhiyun						function = "tdmb";
920*4882a593Smuzhiyun						bias-disable;
921*4882a593Smuzhiyun					};
922*4882a593Smuzhiyun				};
923*4882a593Smuzhiyun
924*4882a593Smuzhiyun				tdmb_dout2_pins: tdmb_dout2 {
925*4882a593Smuzhiyun					mux {
926*4882a593Smuzhiyun						groups = "tdmb_dout2";
927*4882a593Smuzhiyun						function = "tdmb";
928*4882a593Smuzhiyun						bias-disable;
929*4882a593Smuzhiyun					};
930*4882a593Smuzhiyun				};
931*4882a593Smuzhiyun
932*4882a593Smuzhiyun				tdmb_dout3_pins: tdmb_dout3 {
933*4882a593Smuzhiyun					mux {
934*4882a593Smuzhiyun						groups = "tdmb_dout3";
935*4882a593Smuzhiyun						function = "tdmb";
936*4882a593Smuzhiyun						bias-disable;
937*4882a593Smuzhiyun					};
938*4882a593Smuzhiyun				};
939*4882a593Smuzhiyun
940*4882a593Smuzhiyun				tdmb_fs_pins: tdmb_fs {
941*4882a593Smuzhiyun					mux {
942*4882a593Smuzhiyun						groups = "tdmb_fs";
943*4882a593Smuzhiyun						function = "tdmb";
944*4882a593Smuzhiyun						bias-disable;
945*4882a593Smuzhiyun					};
946*4882a593Smuzhiyun				};
947*4882a593Smuzhiyun
948*4882a593Smuzhiyun				tdmb_fs_slv_pins: tdmb_fs_slv {
949*4882a593Smuzhiyun					mux {
950*4882a593Smuzhiyun						groups = "tdmb_fs_slv";
951*4882a593Smuzhiyun						function = "tdmb";
952*4882a593Smuzhiyun						bias-disable;
953*4882a593Smuzhiyun					};
954*4882a593Smuzhiyun				};
955*4882a593Smuzhiyun
956*4882a593Smuzhiyun				tdmb_sclk_pins: tdmb_sclk {
957*4882a593Smuzhiyun					mux {
958*4882a593Smuzhiyun						groups = "tdmb_sclk";
959*4882a593Smuzhiyun						function = "tdmb";
960*4882a593Smuzhiyun						bias-disable;
961*4882a593Smuzhiyun					};
962*4882a593Smuzhiyun				};
963*4882a593Smuzhiyun
964*4882a593Smuzhiyun				tdmb_sclk_slv_pins: tdmb_sclk_slv {
965*4882a593Smuzhiyun					mux {
966*4882a593Smuzhiyun						groups = "tdmb_sclk_slv";
967*4882a593Smuzhiyun						function = "tdmb";
968*4882a593Smuzhiyun						bias-disable;
969*4882a593Smuzhiyun					};
970*4882a593Smuzhiyun				};
971*4882a593Smuzhiyun
972*4882a593Smuzhiyun				tdmc_fs_pins: tdmc_fs {
973*4882a593Smuzhiyun					mux {
974*4882a593Smuzhiyun						groups = "tdmc_fs";
975*4882a593Smuzhiyun						function = "tdmc";
976*4882a593Smuzhiyun						bias-disable;
977*4882a593Smuzhiyun					};
978*4882a593Smuzhiyun				};
979*4882a593Smuzhiyun
980*4882a593Smuzhiyun				tdmc_fs_slv_pins: tdmc_fs_slv {
981*4882a593Smuzhiyun					mux {
982*4882a593Smuzhiyun						groups = "tdmc_fs_slv";
983*4882a593Smuzhiyun						function = "tdmc";
984*4882a593Smuzhiyun						bias-disable;
985*4882a593Smuzhiyun					};
986*4882a593Smuzhiyun				};
987*4882a593Smuzhiyun
988*4882a593Smuzhiyun				tdmc_sclk_pins: tdmc_sclk {
989*4882a593Smuzhiyun					mux {
990*4882a593Smuzhiyun						groups = "tdmc_sclk";
991*4882a593Smuzhiyun						function = "tdmc";
992*4882a593Smuzhiyun						bias-disable;
993*4882a593Smuzhiyun					};
994*4882a593Smuzhiyun				};
995*4882a593Smuzhiyun
996*4882a593Smuzhiyun				tdmc_sclk_slv_pins: tdmc_sclk_slv {
997*4882a593Smuzhiyun					mux {
998*4882a593Smuzhiyun						groups = "tdmc_sclk_slv";
999*4882a593Smuzhiyun						function = "tdmc";
1000*4882a593Smuzhiyun						bias-disable;
1001*4882a593Smuzhiyun					};
1002*4882a593Smuzhiyun				};
1003*4882a593Smuzhiyun
1004*4882a593Smuzhiyun				tdmc_din0_pins: tdmc_din0 {
1005*4882a593Smuzhiyun					mux {
1006*4882a593Smuzhiyun						groups = "tdmc_din0";
1007*4882a593Smuzhiyun						function = "tdmc";
1008*4882a593Smuzhiyun						bias-disable;
1009*4882a593Smuzhiyun					};
1010*4882a593Smuzhiyun				};
1011*4882a593Smuzhiyun
1012*4882a593Smuzhiyun				tdmc_din1_pins: tdmc_din1 {
1013*4882a593Smuzhiyun					mux {
1014*4882a593Smuzhiyun						groups = "tdmc_din1";
1015*4882a593Smuzhiyun						function = "tdmc";
1016*4882a593Smuzhiyun						bias-disable;
1017*4882a593Smuzhiyun					};
1018*4882a593Smuzhiyun				};
1019*4882a593Smuzhiyun
1020*4882a593Smuzhiyun				tdmc_din2_pins: tdmc_din2 {
1021*4882a593Smuzhiyun					mux {
1022*4882a593Smuzhiyun						groups = "tdmc_din2";
1023*4882a593Smuzhiyun						function = "tdmc";
1024*4882a593Smuzhiyun						bias-disable;
1025*4882a593Smuzhiyun					};
1026*4882a593Smuzhiyun				};
1027*4882a593Smuzhiyun
1028*4882a593Smuzhiyun				tdmc_din3_pins: tdmc_din3 {
1029*4882a593Smuzhiyun					mux {
1030*4882a593Smuzhiyun						groups = "tdmc_din3";
1031*4882a593Smuzhiyun						function = "tdmc";
1032*4882a593Smuzhiyun						bias-disable;
1033*4882a593Smuzhiyun					};
1034*4882a593Smuzhiyun				};
1035*4882a593Smuzhiyun
1036*4882a593Smuzhiyun				tdmc_dout0_pins: tdmc_dout0 {
1037*4882a593Smuzhiyun					mux {
1038*4882a593Smuzhiyun						groups = "tdmc_dout0";
1039*4882a593Smuzhiyun						function = "tdmc";
1040*4882a593Smuzhiyun						bias-disable;
1041*4882a593Smuzhiyun					};
1042*4882a593Smuzhiyun				};
1043*4882a593Smuzhiyun
1044*4882a593Smuzhiyun				tdmc_dout1_pins: tdmc_dout1 {
1045*4882a593Smuzhiyun					mux {
1046*4882a593Smuzhiyun						groups = "tdmc_dout1";
1047*4882a593Smuzhiyun						function = "tdmc";
1048*4882a593Smuzhiyun						bias-disable;
1049*4882a593Smuzhiyun					};
1050*4882a593Smuzhiyun				};
1051*4882a593Smuzhiyun
1052*4882a593Smuzhiyun				tdmc_dout2_pins: tdmc_dout2 {
1053*4882a593Smuzhiyun					mux {
1054*4882a593Smuzhiyun						groups = "tdmc_dout2";
1055*4882a593Smuzhiyun						function = "tdmc";
1056*4882a593Smuzhiyun						bias-disable;
1057*4882a593Smuzhiyun					};
1058*4882a593Smuzhiyun				};
1059*4882a593Smuzhiyun
1060*4882a593Smuzhiyun				tdmc_dout3_pins: tdmc_dout3 {
1061*4882a593Smuzhiyun					mux {
1062*4882a593Smuzhiyun						groups = "tdmc_dout3";
1063*4882a593Smuzhiyun						function = "tdmc";
1064*4882a593Smuzhiyun						bias-disable;
1065*4882a593Smuzhiyun					};
1066*4882a593Smuzhiyun				};
1067*4882a593Smuzhiyun
1068*4882a593Smuzhiyun				uart_a_pins: uart_a {
1069*4882a593Smuzhiyun					mux {
1070*4882a593Smuzhiyun						groups = "uart_tx_a",
1071*4882a593Smuzhiyun							 "uart_rx_a";
1072*4882a593Smuzhiyun						function = "uart_a";
1073*4882a593Smuzhiyun						bias-disable;
1074*4882a593Smuzhiyun					};
1075*4882a593Smuzhiyun				};
1076*4882a593Smuzhiyun
1077*4882a593Smuzhiyun				uart_a_cts_rts_pins: uart_a_cts_rts {
1078*4882a593Smuzhiyun					mux {
1079*4882a593Smuzhiyun						groups = "uart_cts_a",
1080*4882a593Smuzhiyun							 "uart_rts_a";
1081*4882a593Smuzhiyun						function = "uart_a";
1082*4882a593Smuzhiyun						bias-disable;
1083*4882a593Smuzhiyun					};
1084*4882a593Smuzhiyun				};
1085*4882a593Smuzhiyun
1086*4882a593Smuzhiyun				uart_b_x_pins: uart_b_x {
1087*4882a593Smuzhiyun					mux {
1088*4882a593Smuzhiyun						groups = "uart_tx_b_x",
1089*4882a593Smuzhiyun							 "uart_rx_b_x";
1090*4882a593Smuzhiyun						function = "uart_b";
1091*4882a593Smuzhiyun						bias-disable;
1092*4882a593Smuzhiyun					};
1093*4882a593Smuzhiyun				};
1094*4882a593Smuzhiyun
1095*4882a593Smuzhiyun				uart_b_x_cts_rts_pins: uart_b_x_cts_rts {
1096*4882a593Smuzhiyun					mux {
1097*4882a593Smuzhiyun						groups = "uart_cts_b_x",
1098*4882a593Smuzhiyun							 "uart_rts_b_x";
1099*4882a593Smuzhiyun						function = "uart_b";
1100*4882a593Smuzhiyun						bias-disable;
1101*4882a593Smuzhiyun					};
1102*4882a593Smuzhiyun				};
1103*4882a593Smuzhiyun
1104*4882a593Smuzhiyun				uart_b_z_pins: uart_b_z {
1105*4882a593Smuzhiyun					mux {
1106*4882a593Smuzhiyun						groups = "uart_tx_b_z",
1107*4882a593Smuzhiyun							 "uart_rx_b_z";
1108*4882a593Smuzhiyun						function = "uart_b";
1109*4882a593Smuzhiyun						bias-disable;
1110*4882a593Smuzhiyun					};
1111*4882a593Smuzhiyun				};
1112*4882a593Smuzhiyun
1113*4882a593Smuzhiyun				uart_b_z_cts_rts_pins: uart_b_z_cts_rts {
1114*4882a593Smuzhiyun					mux {
1115*4882a593Smuzhiyun						groups = "uart_cts_b_z",
1116*4882a593Smuzhiyun							 "uart_rts_b_z";
1117*4882a593Smuzhiyun						function = "uart_b";
1118*4882a593Smuzhiyun						bias-disable;
1119*4882a593Smuzhiyun					};
1120*4882a593Smuzhiyun				};
1121*4882a593Smuzhiyun
1122*4882a593Smuzhiyun				uart_ao_b_z_pins: uart_ao_b_z {
1123*4882a593Smuzhiyun					mux {
1124*4882a593Smuzhiyun						groups = "uart_ao_tx_b_z",
1125*4882a593Smuzhiyun							 "uart_ao_rx_b_z";
1126*4882a593Smuzhiyun						function = "uart_ao_b_z";
1127*4882a593Smuzhiyun						bias-disable;
1128*4882a593Smuzhiyun					};
1129*4882a593Smuzhiyun				};
1130*4882a593Smuzhiyun
1131*4882a593Smuzhiyun				uart_ao_b_z_cts_rts_pins: uart_ao_b_z_cts_rts {
1132*4882a593Smuzhiyun					mux {
1133*4882a593Smuzhiyun						groups = "uart_ao_cts_b_z",
1134*4882a593Smuzhiyun							 "uart_ao_rts_b_z";
1135*4882a593Smuzhiyun						function = "uart_ao_b_z";
1136*4882a593Smuzhiyun						bias-disable;
1137*4882a593Smuzhiyun					};
1138*4882a593Smuzhiyun				};
1139*4882a593Smuzhiyun			};
1140*4882a593Smuzhiyun		};
1141*4882a593Smuzhiyun
1142*4882a593Smuzhiyun		hiubus: bus@ff63c000 {
1143*4882a593Smuzhiyun			compatible = "simple-bus";
1144*4882a593Smuzhiyun			reg = <0x0 0xff63c000 0x0 0x1c00>;
1145*4882a593Smuzhiyun			#address-cells = <2>;
1146*4882a593Smuzhiyun			#size-cells = <2>;
1147*4882a593Smuzhiyun			ranges = <0x0 0x0 0x0 0xff63c000 0x0 0x1c00>;
1148*4882a593Smuzhiyun
1149*4882a593Smuzhiyun			sysctrl: system-controller@0 {
1150*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-hhi-sysctrl",
1151*4882a593Smuzhiyun					     "simple-mfd", "syscon";
1152*4882a593Smuzhiyun				reg = <0 0 0 0x400>;
1153*4882a593Smuzhiyun
1154*4882a593Smuzhiyun				clkc: clock-controller {
1155*4882a593Smuzhiyun					compatible = "amlogic,axg-clkc";
1156*4882a593Smuzhiyun					#clock-cells = <1>;
1157*4882a593Smuzhiyun					clocks = <&xtal>;
1158*4882a593Smuzhiyun					clock-names = "xtal";
1159*4882a593Smuzhiyun				};
1160*4882a593Smuzhiyun			};
1161*4882a593Smuzhiyun		};
1162*4882a593Smuzhiyun
1163*4882a593Smuzhiyun		mailbox: mailbox@ff63c404 {
1164*4882a593Smuzhiyun			compatible = "amlogic,meson-gxbb-mhu";
1165*4882a593Smuzhiyun			reg = <0 0xff63c404 0 0x4c>;
1166*4882a593Smuzhiyun			interrupts = <GIC_SPI 208 IRQ_TYPE_EDGE_RISING>,
1167*4882a593Smuzhiyun				     <GIC_SPI 209 IRQ_TYPE_EDGE_RISING>,
1168*4882a593Smuzhiyun				     <GIC_SPI 210 IRQ_TYPE_EDGE_RISING>;
1169*4882a593Smuzhiyun			#mbox-cells = <1>;
1170*4882a593Smuzhiyun		};
1171*4882a593Smuzhiyun
1172*4882a593Smuzhiyun		audio: bus@ff642000 {
1173*4882a593Smuzhiyun			compatible = "simple-bus";
1174*4882a593Smuzhiyun			reg = <0x0 0xff642000 0x0 0x2000>;
1175*4882a593Smuzhiyun			#address-cells = <2>;
1176*4882a593Smuzhiyun			#size-cells = <2>;
1177*4882a593Smuzhiyun			ranges = <0x0 0x0 0x0 0xff642000 0x0 0x2000>;
1178*4882a593Smuzhiyun
1179*4882a593Smuzhiyun			clkc_audio: clock-controller@0 {
1180*4882a593Smuzhiyun				compatible = "amlogic,axg-audio-clkc";
1181*4882a593Smuzhiyun				reg = <0x0 0x0 0x0 0xb4>;
1182*4882a593Smuzhiyun				#clock-cells = <1>;
1183*4882a593Smuzhiyun
1184*4882a593Smuzhiyun				clocks = <&clkc CLKID_AUDIO>,
1185*4882a593Smuzhiyun					 <&clkc CLKID_MPLL0>,
1186*4882a593Smuzhiyun					 <&clkc CLKID_MPLL1>,
1187*4882a593Smuzhiyun					 <&clkc CLKID_MPLL2>,
1188*4882a593Smuzhiyun					 <&clkc CLKID_MPLL3>,
1189*4882a593Smuzhiyun					 <&clkc CLKID_HIFI_PLL>,
1190*4882a593Smuzhiyun					 <&clkc CLKID_FCLK_DIV3>,
1191*4882a593Smuzhiyun					 <&clkc CLKID_FCLK_DIV4>,
1192*4882a593Smuzhiyun					 <&clkc CLKID_GP0_PLL>;
1193*4882a593Smuzhiyun				clock-names = "pclk",
1194*4882a593Smuzhiyun					      "mst_in0",
1195*4882a593Smuzhiyun					      "mst_in1",
1196*4882a593Smuzhiyun					      "mst_in2",
1197*4882a593Smuzhiyun					      "mst_in3",
1198*4882a593Smuzhiyun					      "mst_in4",
1199*4882a593Smuzhiyun					      "mst_in5",
1200*4882a593Smuzhiyun					      "mst_in6",
1201*4882a593Smuzhiyun					      "mst_in7";
1202*4882a593Smuzhiyun
1203*4882a593Smuzhiyun				resets = <&reset RESET_AUDIO>;
1204*4882a593Smuzhiyun			};
1205*4882a593Smuzhiyun
1206*4882a593Smuzhiyun			toddr_a: audio-controller@100 {
1207*4882a593Smuzhiyun				compatible = "amlogic,axg-toddr";
1208*4882a593Smuzhiyun				reg = <0x0 0x100 0x0 0x2c>;
1209*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1210*4882a593Smuzhiyun				sound-name-prefix = "TODDR_A";
1211*4882a593Smuzhiyun				interrupts = <GIC_SPI 84 IRQ_TYPE_EDGE_RISING>;
1212*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
1213*4882a593Smuzhiyun				resets = <&arb AXG_ARB_TODDR_A>;
1214*4882a593Smuzhiyun				amlogic,fifo-depth = <512>;
1215*4882a593Smuzhiyun				status = "disabled";
1216*4882a593Smuzhiyun			};
1217*4882a593Smuzhiyun
1218*4882a593Smuzhiyun			toddr_b: audio-controller@140 {
1219*4882a593Smuzhiyun				compatible = "amlogic,axg-toddr";
1220*4882a593Smuzhiyun				reg = <0x0 0x140 0x0 0x2c>;
1221*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1222*4882a593Smuzhiyun				sound-name-prefix = "TODDR_B";
1223*4882a593Smuzhiyun				interrupts = <GIC_SPI 85 IRQ_TYPE_EDGE_RISING>;
1224*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
1225*4882a593Smuzhiyun				resets = <&arb AXG_ARB_TODDR_B>;
1226*4882a593Smuzhiyun				amlogic,fifo-depth = <256>;
1227*4882a593Smuzhiyun				status = "disabled";
1228*4882a593Smuzhiyun			};
1229*4882a593Smuzhiyun
1230*4882a593Smuzhiyun			toddr_c: audio-controller@180 {
1231*4882a593Smuzhiyun				compatible = "amlogic,axg-toddr";
1232*4882a593Smuzhiyun				reg = <0x0 0x180 0x0 0x2c>;
1233*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1234*4882a593Smuzhiyun				sound-name-prefix = "TODDR_C";
1235*4882a593Smuzhiyun				interrupts = <GIC_SPI 86 IRQ_TYPE_EDGE_RISING>;
1236*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
1237*4882a593Smuzhiyun				resets = <&arb AXG_ARB_TODDR_C>;
1238*4882a593Smuzhiyun				amlogic,fifo-depth = <256>;
1239*4882a593Smuzhiyun				status = "disabled";
1240*4882a593Smuzhiyun			};
1241*4882a593Smuzhiyun
1242*4882a593Smuzhiyun			frddr_a: audio-controller@1c0 {
1243*4882a593Smuzhiyun				compatible = "amlogic,axg-frddr";
1244*4882a593Smuzhiyun				reg = <0x0 0x1c0 0x0 0x2c>;
1245*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1246*4882a593Smuzhiyun				sound-name-prefix = "FRDDR_A";
1247*4882a593Smuzhiyun				interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
1248*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
1249*4882a593Smuzhiyun				resets = <&arb AXG_ARB_FRDDR_A>;
1250*4882a593Smuzhiyun				amlogic,fifo-depth = <512>;
1251*4882a593Smuzhiyun				status = "disabled";
1252*4882a593Smuzhiyun			};
1253*4882a593Smuzhiyun
1254*4882a593Smuzhiyun			frddr_b: audio-controller@200 {
1255*4882a593Smuzhiyun				compatible = "amlogic,axg-frddr";
1256*4882a593Smuzhiyun				reg = <0x0 0x200 0x0 0x2c>;
1257*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1258*4882a593Smuzhiyun				sound-name-prefix = "FRDDR_B";
1259*4882a593Smuzhiyun				interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>;
1260*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
1261*4882a593Smuzhiyun				resets = <&arb AXG_ARB_FRDDR_B>;
1262*4882a593Smuzhiyun				amlogic,fifo-depth = <256>;
1263*4882a593Smuzhiyun				status = "disabled";
1264*4882a593Smuzhiyun			};
1265*4882a593Smuzhiyun
1266*4882a593Smuzhiyun			frddr_c: audio-controller@240 {
1267*4882a593Smuzhiyun				compatible = "amlogic,axg-frddr";
1268*4882a593Smuzhiyun				reg = <0x0 0x240 0x0 0x2c>;
1269*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1270*4882a593Smuzhiyun				sound-name-prefix = "FRDDR_C";
1271*4882a593Smuzhiyun				interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
1272*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
1273*4882a593Smuzhiyun				resets = <&arb AXG_ARB_FRDDR_C>;
1274*4882a593Smuzhiyun				amlogic,fifo-depth = <256>;
1275*4882a593Smuzhiyun				status = "disabled";
1276*4882a593Smuzhiyun			};
1277*4882a593Smuzhiyun
1278*4882a593Smuzhiyun			arb: reset-controller@280 {
1279*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-audio-arb";
1280*4882a593Smuzhiyun				reg = <0x0 0x280 0x0 0x4>;
1281*4882a593Smuzhiyun				#reset-cells = <1>;
1282*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
1283*4882a593Smuzhiyun			};
1284*4882a593Smuzhiyun
1285*4882a593Smuzhiyun			tdmin_a: audio-controller@300 {
1286*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmin";
1287*4882a593Smuzhiyun				reg = <0x0 0x300 0x0 0x40>;
1288*4882a593Smuzhiyun				sound-name-prefix = "TDMIN_A";
1289*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMIN_A>,
1290*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>,
1291*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>,
1292*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>,
1293*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>;
1294*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1295*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1296*4882a593Smuzhiyun				status = "disabled";
1297*4882a593Smuzhiyun			};
1298*4882a593Smuzhiyun
1299*4882a593Smuzhiyun			tdmin_b: audio-controller@340 {
1300*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmin";
1301*4882a593Smuzhiyun				reg = <0x0 0x340 0x0 0x40>;
1302*4882a593Smuzhiyun				sound-name-prefix = "TDMIN_B";
1303*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMIN_B>,
1304*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>,
1305*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>,
1306*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>,
1307*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>;
1308*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1309*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1310*4882a593Smuzhiyun				status = "disabled";
1311*4882a593Smuzhiyun			};
1312*4882a593Smuzhiyun
1313*4882a593Smuzhiyun			tdmin_c: audio-controller@380 {
1314*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmin";
1315*4882a593Smuzhiyun				reg = <0x0 0x380 0x0 0x40>;
1316*4882a593Smuzhiyun				sound-name-prefix = "TDMIN_C";
1317*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMIN_C>,
1318*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>,
1319*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>,
1320*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>,
1321*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>;
1322*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1323*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1324*4882a593Smuzhiyun				status = "disabled";
1325*4882a593Smuzhiyun			};
1326*4882a593Smuzhiyun
1327*4882a593Smuzhiyun			tdmin_lb: audio-controller@3c0 {
1328*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmin";
1329*4882a593Smuzhiyun				reg = <0x0 0x3c0 0x0 0x40>;
1330*4882a593Smuzhiyun				sound-name-prefix = "TDMIN_LB";
1331*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>,
1332*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>,
1333*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>,
1334*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>,
1335*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>;
1336*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1337*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1338*4882a593Smuzhiyun				status = "disabled";
1339*4882a593Smuzhiyun			};
1340*4882a593Smuzhiyun
1341*4882a593Smuzhiyun			spdifin: audio-controller@400 {
1342*4882a593Smuzhiyun				compatible = "amlogic,axg-spdifin";
1343*4882a593Smuzhiyun				reg = <0x0 0x400 0x0 0x30>;
1344*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1345*4882a593Smuzhiyun				sound-name-prefix = "SPDIFIN";
1346*4882a593Smuzhiyun				interrupts = <GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
1347*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_SPDIFIN>,
1348*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_SPDIFIN_CLK>;
1349*4882a593Smuzhiyun				clock-names = "pclk", "refclk";
1350*4882a593Smuzhiyun				status = "disabled";
1351*4882a593Smuzhiyun			};
1352*4882a593Smuzhiyun
1353*4882a593Smuzhiyun			spdifout: audio-controller@480 {
1354*4882a593Smuzhiyun				compatible = "amlogic,axg-spdifout";
1355*4882a593Smuzhiyun				reg = <0x0 0x480 0x0 0x50>;
1356*4882a593Smuzhiyun				#sound-dai-cells = <0>;
1357*4882a593Smuzhiyun				sound-name-prefix = "SPDIFOUT";
1358*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
1359*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
1360*4882a593Smuzhiyun				clock-names = "pclk", "mclk";
1361*4882a593Smuzhiyun				status = "disabled";
1362*4882a593Smuzhiyun			};
1363*4882a593Smuzhiyun
1364*4882a593Smuzhiyun			tdmout_a: audio-controller@500 {
1365*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmout";
1366*4882a593Smuzhiyun				reg = <0x0 0x500 0x0 0x40>;
1367*4882a593Smuzhiyun				sound-name-prefix = "TDMOUT_A";
1368*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
1369*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
1370*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
1371*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
1372*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
1373*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1374*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1375*4882a593Smuzhiyun				status = "disabled";
1376*4882a593Smuzhiyun			};
1377*4882a593Smuzhiyun
1378*4882a593Smuzhiyun			tdmout_b: audio-controller@540 {
1379*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmout";
1380*4882a593Smuzhiyun				reg = <0x0 0x540 0x0 0x40>;
1381*4882a593Smuzhiyun				sound-name-prefix = "TDMOUT_B";
1382*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>,
1383*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>,
1384*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>,
1385*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>,
1386*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>;
1387*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1388*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1389*4882a593Smuzhiyun				status = "disabled";
1390*4882a593Smuzhiyun			};
1391*4882a593Smuzhiyun
1392*4882a593Smuzhiyun			tdmout_c: audio-controller@580 {
1393*4882a593Smuzhiyun				compatible = "amlogic,axg-tdmout";
1394*4882a593Smuzhiyun				reg = <0x0 0x580 0x0 0x40>;
1395*4882a593Smuzhiyun				sound-name-prefix = "TDMOUT_C";
1396*4882a593Smuzhiyun				clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>,
1397*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>,
1398*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>,
1399*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>,
1400*4882a593Smuzhiyun					 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>;
1401*4882a593Smuzhiyun				clock-names = "pclk", "sclk", "sclk_sel",
1402*4882a593Smuzhiyun					      "lrclk", "lrclk_sel";
1403*4882a593Smuzhiyun				status = "disabled";
1404*4882a593Smuzhiyun			};
1405*4882a593Smuzhiyun		};
1406*4882a593Smuzhiyun
1407*4882a593Smuzhiyun		aobus: bus@ff800000 {
1408*4882a593Smuzhiyun			compatible = "simple-bus";
1409*4882a593Smuzhiyun			reg = <0x0 0xff800000 0x0 0x100000>;
1410*4882a593Smuzhiyun			#address-cells = <2>;
1411*4882a593Smuzhiyun			#size-cells = <2>;
1412*4882a593Smuzhiyun			ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
1413*4882a593Smuzhiyun
1414*4882a593Smuzhiyun			sysctrl_AO: sys-ctrl@0 {
1415*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-ao-sysctrl", "simple-mfd", "syscon";
1416*4882a593Smuzhiyun				reg =  <0x0 0x0 0x0 0x100>;
1417*4882a593Smuzhiyun
1418*4882a593Smuzhiyun				clkc_AO: clock-controller {
1419*4882a593Smuzhiyun					compatible = "amlogic,meson-axg-aoclkc";
1420*4882a593Smuzhiyun					#clock-cells = <1>;
1421*4882a593Smuzhiyun					#reset-cells = <1>;
1422*4882a593Smuzhiyun					clocks = <&xtal>, <&clkc CLKID_CLK81>;
1423*4882a593Smuzhiyun					clock-names = "xtal", "mpeg-clk";
1424*4882a593Smuzhiyun				};
1425*4882a593Smuzhiyun			};
1426*4882a593Smuzhiyun
1427*4882a593Smuzhiyun			pinctrl_aobus: pinctrl@14 {
1428*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-aobus-pinctrl";
1429*4882a593Smuzhiyun				#address-cells = <2>;
1430*4882a593Smuzhiyun				#size-cells = <2>;
1431*4882a593Smuzhiyun				ranges;
1432*4882a593Smuzhiyun
1433*4882a593Smuzhiyun				gpio_ao: bank@14 {
1434*4882a593Smuzhiyun					reg = <0x0 0x00014 0x0 0x8>,
1435*4882a593Smuzhiyun					      <0x0 0x0002c 0x0 0x4>,
1436*4882a593Smuzhiyun					      <0x0 0x00024 0x0 0x8>;
1437*4882a593Smuzhiyun					reg-names = "mux", "pull", "gpio";
1438*4882a593Smuzhiyun					gpio-controller;
1439*4882a593Smuzhiyun					#gpio-cells = <2>;
1440*4882a593Smuzhiyun					gpio-ranges = <&pinctrl_aobus 0 0 15>;
1441*4882a593Smuzhiyun				};
1442*4882a593Smuzhiyun
1443*4882a593Smuzhiyun				i2c_ao_sck_4_pins: i2c_ao_sck_4 {
1444*4882a593Smuzhiyun					mux {
1445*4882a593Smuzhiyun						groups = "i2c_ao_sck_4";
1446*4882a593Smuzhiyun						function = "i2c_ao";
1447*4882a593Smuzhiyun						bias-disable;
1448*4882a593Smuzhiyun					};
1449*4882a593Smuzhiyun				};
1450*4882a593Smuzhiyun
1451*4882a593Smuzhiyun				i2c_ao_sck_8_pins: i2c_ao_sck_8 {
1452*4882a593Smuzhiyun					mux {
1453*4882a593Smuzhiyun						groups = "i2c_ao_sck_8";
1454*4882a593Smuzhiyun						function = "i2c_ao";
1455*4882a593Smuzhiyun						bias-disable;
1456*4882a593Smuzhiyun					};
1457*4882a593Smuzhiyun				};
1458*4882a593Smuzhiyun
1459*4882a593Smuzhiyun				i2c_ao_sck_10_pins: i2c_ao_sck_10 {
1460*4882a593Smuzhiyun					mux {
1461*4882a593Smuzhiyun						groups = "i2c_ao_sck_10";
1462*4882a593Smuzhiyun						function = "i2c_ao";
1463*4882a593Smuzhiyun						bias-disable;
1464*4882a593Smuzhiyun					};
1465*4882a593Smuzhiyun				};
1466*4882a593Smuzhiyun
1467*4882a593Smuzhiyun				i2c_ao_sda_5_pins: i2c_ao_sda_5 {
1468*4882a593Smuzhiyun					mux {
1469*4882a593Smuzhiyun						groups = "i2c_ao_sda_5";
1470*4882a593Smuzhiyun						function = "i2c_ao";
1471*4882a593Smuzhiyun						bias-disable;
1472*4882a593Smuzhiyun					};
1473*4882a593Smuzhiyun				};
1474*4882a593Smuzhiyun
1475*4882a593Smuzhiyun				i2c_ao_sda_9_pins: i2c_ao_sda_9 {
1476*4882a593Smuzhiyun					mux {
1477*4882a593Smuzhiyun						groups = "i2c_ao_sda_9";
1478*4882a593Smuzhiyun						function = "i2c_ao";
1479*4882a593Smuzhiyun						bias-disable;
1480*4882a593Smuzhiyun					};
1481*4882a593Smuzhiyun				};
1482*4882a593Smuzhiyun
1483*4882a593Smuzhiyun				i2c_ao_sda_11_pins: i2c_ao_sda_11 {
1484*4882a593Smuzhiyun					mux {
1485*4882a593Smuzhiyun						groups = "i2c_ao_sda_11";
1486*4882a593Smuzhiyun						function = "i2c_ao";
1487*4882a593Smuzhiyun						bias-disable;
1488*4882a593Smuzhiyun					};
1489*4882a593Smuzhiyun				};
1490*4882a593Smuzhiyun
1491*4882a593Smuzhiyun				remote_input_ao_pins: remote_input_ao {
1492*4882a593Smuzhiyun					mux {
1493*4882a593Smuzhiyun						groups = "remote_input_ao";
1494*4882a593Smuzhiyun						function = "remote_input_ao";
1495*4882a593Smuzhiyun						bias-disable;
1496*4882a593Smuzhiyun					};
1497*4882a593Smuzhiyun				};
1498*4882a593Smuzhiyun
1499*4882a593Smuzhiyun				uart_ao_a_pins: uart_ao_a {
1500*4882a593Smuzhiyun					mux {
1501*4882a593Smuzhiyun						groups = "uart_ao_tx_a",
1502*4882a593Smuzhiyun							 "uart_ao_rx_a";
1503*4882a593Smuzhiyun						function = "uart_ao_a";
1504*4882a593Smuzhiyun						bias-disable;
1505*4882a593Smuzhiyun					};
1506*4882a593Smuzhiyun				};
1507*4882a593Smuzhiyun
1508*4882a593Smuzhiyun				uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts {
1509*4882a593Smuzhiyun					mux {
1510*4882a593Smuzhiyun						groups = "uart_ao_cts_a",
1511*4882a593Smuzhiyun							 "uart_ao_rts_a";
1512*4882a593Smuzhiyun						function = "uart_ao_a";
1513*4882a593Smuzhiyun						bias-disable;
1514*4882a593Smuzhiyun					};
1515*4882a593Smuzhiyun				};
1516*4882a593Smuzhiyun
1517*4882a593Smuzhiyun				uart_ao_b_pins: uart_ao_b {
1518*4882a593Smuzhiyun					mux {
1519*4882a593Smuzhiyun						groups = "uart_ao_tx_b",
1520*4882a593Smuzhiyun							 "uart_ao_rx_b";
1521*4882a593Smuzhiyun						function = "uart_ao_b";
1522*4882a593Smuzhiyun						bias-disable;
1523*4882a593Smuzhiyun					};
1524*4882a593Smuzhiyun				};
1525*4882a593Smuzhiyun
1526*4882a593Smuzhiyun				uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts {
1527*4882a593Smuzhiyun					mux {
1528*4882a593Smuzhiyun						groups = "uart_ao_cts_b",
1529*4882a593Smuzhiyun							 "uart_ao_rts_b";
1530*4882a593Smuzhiyun						function = "uart_ao_b";
1531*4882a593Smuzhiyun						bias-disable;
1532*4882a593Smuzhiyun					};
1533*4882a593Smuzhiyun				};
1534*4882a593Smuzhiyun			};
1535*4882a593Smuzhiyun
1536*4882a593Smuzhiyun			sec_AO: ao-secure@140 {
1537*4882a593Smuzhiyun				compatible = "amlogic,meson-gx-ao-secure", "syscon";
1538*4882a593Smuzhiyun				reg = <0x0 0x140 0x0 0x140>;
1539*4882a593Smuzhiyun				amlogic,has-chip-id;
1540*4882a593Smuzhiyun			};
1541*4882a593Smuzhiyun
1542*4882a593Smuzhiyun			pwm_AO_cd: pwm@2000 {
1543*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-ao-pwm";
1544*4882a593Smuzhiyun				reg = <0x0 0x02000  0x0 0x20>;
1545*4882a593Smuzhiyun				#pwm-cells = <3>;
1546*4882a593Smuzhiyun				status = "disabled";
1547*4882a593Smuzhiyun			};
1548*4882a593Smuzhiyun
1549*4882a593Smuzhiyun			uart_AO: serial@3000 {
1550*4882a593Smuzhiyun				compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart";
1551*4882a593Smuzhiyun				reg = <0x0 0x3000 0x0 0x18>;
1552*4882a593Smuzhiyun				interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
1553*4882a593Smuzhiyun				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART1>, <&xtal>;
1554*4882a593Smuzhiyun				clock-names = "xtal", "pclk", "baud";
1555*4882a593Smuzhiyun				status = "disabled";
1556*4882a593Smuzhiyun			};
1557*4882a593Smuzhiyun
1558*4882a593Smuzhiyun			uart_AO_B: serial@4000 {
1559*4882a593Smuzhiyun				compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart";
1560*4882a593Smuzhiyun				reg = <0x0 0x4000 0x0 0x18>;
1561*4882a593Smuzhiyun				interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
1562*4882a593Smuzhiyun				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
1563*4882a593Smuzhiyun				clock-names = "xtal", "pclk", "baud";
1564*4882a593Smuzhiyun				status = "disabled";
1565*4882a593Smuzhiyun			};
1566*4882a593Smuzhiyun
1567*4882a593Smuzhiyun			i2c_AO: i2c@5000 {
1568*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-i2c";
1569*4882a593Smuzhiyun				reg = <0x0 0x05000 0x0 0x20>;
1570*4882a593Smuzhiyun				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
1571*4882a593Smuzhiyun				clocks = <&clkc CLKID_AO_I2C>;
1572*4882a593Smuzhiyun				#address-cells = <1>;
1573*4882a593Smuzhiyun				#size-cells = <0>;
1574*4882a593Smuzhiyun				status = "disabled";
1575*4882a593Smuzhiyun			};
1576*4882a593Smuzhiyun
1577*4882a593Smuzhiyun			pwm_AO_ab: pwm@7000 {
1578*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-ao-pwm";
1579*4882a593Smuzhiyun				reg = <0x0 0x07000 0x0 0x20>;
1580*4882a593Smuzhiyun				#pwm-cells = <3>;
1581*4882a593Smuzhiyun				status = "disabled";
1582*4882a593Smuzhiyun			};
1583*4882a593Smuzhiyun
1584*4882a593Smuzhiyun			ir: ir@8000 {
1585*4882a593Smuzhiyun				compatible = "amlogic,meson-gxbb-ir";
1586*4882a593Smuzhiyun				reg = <0x0 0x8000 0x0 0x20>;
1587*4882a593Smuzhiyun				interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
1588*4882a593Smuzhiyun				status = "disabled";
1589*4882a593Smuzhiyun			};
1590*4882a593Smuzhiyun
1591*4882a593Smuzhiyun			saradc: adc@9000 {
1592*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-saradc",
1593*4882a593Smuzhiyun					"amlogic,meson-saradc";
1594*4882a593Smuzhiyun				reg = <0x0 0x9000 0x0 0x38>;
1595*4882a593Smuzhiyun				#io-channel-cells = <1>;
1596*4882a593Smuzhiyun				interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>;
1597*4882a593Smuzhiyun				clocks = <&xtal>,
1598*4882a593Smuzhiyun					 <&clkc_AO CLKID_AO_SAR_ADC>,
1599*4882a593Smuzhiyun					 <&clkc_AO CLKID_AO_SAR_ADC_CLK>,
1600*4882a593Smuzhiyun					 <&clkc_AO CLKID_AO_SAR_ADC_SEL>;
1601*4882a593Smuzhiyun				clock-names = "clkin", "core", "adc_clk", "adc_sel";
1602*4882a593Smuzhiyun				status = "disabled";
1603*4882a593Smuzhiyun			};
1604*4882a593Smuzhiyun		};
1605*4882a593Smuzhiyun
1606*4882a593Smuzhiyun		gic: interrupt-controller@ffc01000 {
1607*4882a593Smuzhiyun			compatible = "arm,gic-400";
1608*4882a593Smuzhiyun			reg = <0x0 0xffc01000 0 0x1000>,
1609*4882a593Smuzhiyun			      <0x0 0xffc02000 0 0x2000>,
1610*4882a593Smuzhiyun			      <0x0 0xffc04000 0 0x2000>,
1611*4882a593Smuzhiyun			      <0x0 0xffc06000 0 0x2000>;
1612*4882a593Smuzhiyun			interrupt-controller;
1613*4882a593Smuzhiyun			interrupts = <GIC_PPI 9
1614*4882a593Smuzhiyun				(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
1615*4882a593Smuzhiyun			#interrupt-cells = <3>;
1616*4882a593Smuzhiyun			#address-cells = <0>;
1617*4882a593Smuzhiyun		};
1618*4882a593Smuzhiyun
1619*4882a593Smuzhiyun		cbus: bus@ffd00000 {
1620*4882a593Smuzhiyun			compatible = "simple-bus";
1621*4882a593Smuzhiyun			reg = <0x0 0xffd00000 0x0 0x25000>;
1622*4882a593Smuzhiyun			#address-cells = <2>;
1623*4882a593Smuzhiyun			#size-cells = <2>;
1624*4882a593Smuzhiyun			ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x25000>;
1625*4882a593Smuzhiyun
1626*4882a593Smuzhiyun			reset: reset-controller@1004 {
1627*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-reset";
1628*4882a593Smuzhiyun				reg = <0x0 0x01004 0x0 0x9c>;
1629*4882a593Smuzhiyun				#reset-cells = <1>;
1630*4882a593Smuzhiyun			};
1631*4882a593Smuzhiyun
1632*4882a593Smuzhiyun			gpio_intc: interrupt-controller@f080 {
1633*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-gpio-intc",
1634*4882a593Smuzhiyun					     "amlogic,meson-gpio-intc";
1635*4882a593Smuzhiyun				reg = <0x0 0xf080 0x0 0x10>;
1636*4882a593Smuzhiyun				interrupt-controller;
1637*4882a593Smuzhiyun				#interrupt-cells = <2>;
1638*4882a593Smuzhiyun				amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
1639*4882a593Smuzhiyun			};
1640*4882a593Smuzhiyun
1641*4882a593Smuzhiyun			watchdog@f0d0 {
1642*4882a593Smuzhiyun				compatible = "amlogic,meson-gxbb-wdt";
1643*4882a593Smuzhiyun				reg = <0x0 0xf0d0 0x0 0x10>;
1644*4882a593Smuzhiyun				clocks = <&xtal>;
1645*4882a593Smuzhiyun			};
1646*4882a593Smuzhiyun
1647*4882a593Smuzhiyun			pwm_ab: pwm@1b000 {
1648*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-ee-pwm";
1649*4882a593Smuzhiyun				reg = <0x0 0x1b000 0x0 0x20>;
1650*4882a593Smuzhiyun				#pwm-cells = <3>;
1651*4882a593Smuzhiyun				status = "disabled";
1652*4882a593Smuzhiyun			};
1653*4882a593Smuzhiyun
1654*4882a593Smuzhiyun			pwm_cd: pwm@1a000 {
1655*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-ee-pwm";
1656*4882a593Smuzhiyun				reg = <0x0 0x1a000 0x0 0x20>;
1657*4882a593Smuzhiyun				#pwm-cells = <3>;
1658*4882a593Smuzhiyun				status = "disabled";
1659*4882a593Smuzhiyun			};
1660*4882a593Smuzhiyun
1661*4882a593Smuzhiyun			spicc0: spi@13000 {
1662*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-spicc";
1663*4882a593Smuzhiyun				reg = <0x0 0x13000 0x0 0x3c>;
1664*4882a593Smuzhiyun				interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
1665*4882a593Smuzhiyun				clocks = <&clkc CLKID_SPICC0>;
1666*4882a593Smuzhiyun				clock-names = "core";
1667*4882a593Smuzhiyun				#address-cells = <1>;
1668*4882a593Smuzhiyun				#size-cells = <0>;
1669*4882a593Smuzhiyun				status = "disabled";
1670*4882a593Smuzhiyun			};
1671*4882a593Smuzhiyun
1672*4882a593Smuzhiyun			spicc1: spi@15000 {
1673*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-spicc";
1674*4882a593Smuzhiyun				reg = <0x0 0x15000 0x0 0x3c>;
1675*4882a593Smuzhiyun				interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
1676*4882a593Smuzhiyun				clocks = <&clkc CLKID_SPICC1>;
1677*4882a593Smuzhiyun				clock-names = "core";
1678*4882a593Smuzhiyun				#address-cells = <1>;
1679*4882a593Smuzhiyun				#size-cells = <0>;
1680*4882a593Smuzhiyun				status = "disabled";
1681*4882a593Smuzhiyun			};
1682*4882a593Smuzhiyun
1683*4882a593Smuzhiyun			clk_msr: clock-measure@18000 {
1684*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-clk-measure";
1685*4882a593Smuzhiyun				reg = <0x0 0x18000 0x0 0x10>;
1686*4882a593Smuzhiyun			};
1687*4882a593Smuzhiyun
1688*4882a593Smuzhiyun			i2c3: i2c@1c000 {
1689*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-i2c";
1690*4882a593Smuzhiyun				reg = <0x0 0x1c000 0x0 0x20>;
1691*4882a593Smuzhiyun				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
1692*4882a593Smuzhiyun				clocks = <&clkc CLKID_I2C>;
1693*4882a593Smuzhiyun				#address-cells = <1>;
1694*4882a593Smuzhiyun				#size-cells = <0>;
1695*4882a593Smuzhiyun				status = "disabled";
1696*4882a593Smuzhiyun			};
1697*4882a593Smuzhiyun
1698*4882a593Smuzhiyun			i2c2: i2c@1d000 {
1699*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-i2c";
1700*4882a593Smuzhiyun				reg = <0x0 0x1d000 0x0 0x20>;
1701*4882a593Smuzhiyun				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
1702*4882a593Smuzhiyun				clocks = <&clkc CLKID_I2C>;
1703*4882a593Smuzhiyun				#address-cells = <1>;
1704*4882a593Smuzhiyun				#size-cells = <0>;
1705*4882a593Smuzhiyun				status = "disabled";
1706*4882a593Smuzhiyun			};
1707*4882a593Smuzhiyun
1708*4882a593Smuzhiyun			i2c1: i2c@1e000 {
1709*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-i2c";
1710*4882a593Smuzhiyun				reg = <0x0 0x1e000 0x0 0x20>;
1711*4882a593Smuzhiyun				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
1712*4882a593Smuzhiyun				clocks = <&clkc CLKID_I2C>;
1713*4882a593Smuzhiyun				#address-cells = <1>;
1714*4882a593Smuzhiyun				#size-cells = <0>;
1715*4882a593Smuzhiyun				status = "disabled";
1716*4882a593Smuzhiyun			};
1717*4882a593Smuzhiyun
1718*4882a593Smuzhiyun			i2c0: i2c@1f000 {
1719*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-i2c";
1720*4882a593Smuzhiyun				reg = <0x0 0x1f000 0x0 0x20>;
1721*4882a593Smuzhiyun				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
1722*4882a593Smuzhiyun				clocks = <&clkc CLKID_I2C>;
1723*4882a593Smuzhiyun				#address-cells = <1>;
1724*4882a593Smuzhiyun				#size-cells = <0>;
1725*4882a593Smuzhiyun				status = "disabled";
1726*4882a593Smuzhiyun			};
1727*4882a593Smuzhiyun
1728*4882a593Smuzhiyun			uart_B: serial@23000 {
1729*4882a593Smuzhiyun				compatible = "amlogic,meson-gx-uart";
1730*4882a593Smuzhiyun				reg = <0x0 0x23000 0x0 0x18>;
1731*4882a593Smuzhiyun				interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
1732*4882a593Smuzhiyun				status = "disabled";
1733*4882a593Smuzhiyun				clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
1734*4882a593Smuzhiyun				clock-names = "xtal", "pclk", "baud";
1735*4882a593Smuzhiyun			};
1736*4882a593Smuzhiyun
1737*4882a593Smuzhiyun			uart_A: serial@24000 {
1738*4882a593Smuzhiyun				compatible = "amlogic,meson-gx-uart";
1739*4882a593Smuzhiyun				reg = <0x0 0x24000 0x0 0x18>;
1740*4882a593Smuzhiyun				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
1741*4882a593Smuzhiyun				status = "disabled";
1742*4882a593Smuzhiyun				clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
1743*4882a593Smuzhiyun				clock-names = "xtal", "pclk", "baud";
1744*4882a593Smuzhiyun			};
1745*4882a593Smuzhiyun		};
1746*4882a593Smuzhiyun
1747*4882a593Smuzhiyun		apb: bus@ffe00000 {
1748*4882a593Smuzhiyun			compatible = "simple-bus";
1749*4882a593Smuzhiyun			reg = <0x0 0xffe00000 0x0 0x200000>;
1750*4882a593Smuzhiyun			#address-cells = <2>;
1751*4882a593Smuzhiyun			#size-cells = <2>;
1752*4882a593Smuzhiyun			ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x200000>;
1753*4882a593Smuzhiyun
1754*4882a593Smuzhiyun			sd_emmc_b: sd@5000 {
1755*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-mmc";
1756*4882a593Smuzhiyun				reg = <0x0 0x5000 0x0 0x800>;
1757*4882a593Smuzhiyun				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
1758*4882a593Smuzhiyun				status = "disabled";
1759*4882a593Smuzhiyun				clocks = <&clkc CLKID_SD_EMMC_B>,
1760*4882a593Smuzhiyun					<&clkc CLKID_SD_EMMC_B_CLK0>,
1761*4882a593Smuzhiyun					<&clkc CLKID_FCLK_DIV2>;
1762*4882a593Smuzhiyun				clock-names = "core", "clkin0", "clkin1";
1763*4882a593Smuzhiyun				resets = <&reset RESET_SD_EMMC_B>;
1764*4882a593Smuzhiyun			};
1765*4882a593Smuzhiyun
1766*4882a593Smuzhiyun			sd_emmc_c: mmc@7000 {
1767*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-mmc";
1768*4882a593Smuzhiyun				reg = <0x0 0x7000 0x0 0x800>;
1769*4882a593Smuzhiyun				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
1770*4882a593Smuzhiyun				status = "disabled";
1771*4882a593Smuzhiyun				clocks = <&clkc CLKID_SD_EMMC_C>,
1772*4882a593Smuzhiyun					<&clkc CLKID_SD_EMMC_C_CLK0>,
1773*4882a593Smuzhiyun					<&clkc CLKID_FCLK_DIV2>;
1774*4882a593Smuzhiyun				clock-names = "core", "clkin0", "clkin1";
1775*4882a593Smuzhiyun				resets = <&reset RESET_SD_EMMC_C>;
1776*4882a593Smuzhiyun			};
1777*4882a593Smuzhiyun
1778*4882a593Smuzhiyun			usb2_phy1: phy@9020 {
1779*4882a593Smuzhiyun				compatible = "amlogic,meson-gxl-usb2-phy";
1780*4882a593Smuzhiyun				#phy-cells = <0>;
1781*4882a593Smuzhiyun				reg = <0x0 0x9020 0x0 0x20>;
1782*4882a593Smuzhiyun				clocks = <&clkc CLKID_USB>;
1783*4882a593Smuzhiyun				clock-names = "phy";
1784*4882a593Smuzhiyun				resets = <&reset RESET_USB_OTG>;
1785*4882a593Smuzhiyun				reset-names = "phy";
1786*4882a593Smuzhiyun			};
1787*4882a593Smuzhiyun		};
1788*4882a593Smuzhiyun
1789*4882a593Smuzhiyun		sram: sram@fffc0000 {
1790*4882a593Smuzhiyun			compatible = "mmio-sram";
1791*4882a593Smuzhiyun			reg = <0x0 0xfffc0000 0x0 0x20000>;
1792*4882a593Smuzhiyun			#address-cells = <1>;
1793*4882a593Smuzhiyun			#size-cells = <1>;
1794*4882a593Smuzhiyun			ranges = <0 0x0 0xfffc0000 0x20000>;
1795*4882a593Smuzhiyun
1796*4882a593Smuzhiyun			cpu_scp_lpri: scp-sram@13000 {
1797*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-scp-shmem";
1798*4882a593Smuzhiyun				reg = <0x13000 0x400>;
1799*4882a593Smuzhiyun			};
1800*4882a593Smuzhiyun
1801*4882a593Smuzhiyun			cpu_scp_hpri: scp-sram@13400 {
1802*4882a593Smuzhiyun				compatible = "amlogic,meson-axg-scp-shmem";
1803*4882a593Smuzhiyun				reg = <0x13400 0x400>;
1804*4882a593Smuzhiyun			};
1805*4882a593Smuzhiyun		};
1806*4882a593Smuzhiyun	};
1807*4882a593Smuzhiyun
1808*4882a593Smuzhiyun	timer {
1809*4882a593Smuzhiyun		compatible = "arm,armv8-timer";
1810*4882a593Smuzhiyun		interrupts = <GIC_PPI 13
1811*4882a593Smuzhiyun			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1812*4882a593Smuzhiyun			     <GIC_PPI 14
1813*4882a593Smuzhiyun			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1814*4882a593Smuzhiyun			     <GIC_PPI 11
1815*4882a593Smuzhiyun			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1816*4882a593Smuzhiyun			     <GIC_PPI 10
1817*4882a593Smuzhiyun			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>;
1818*4882a593Smuzhiyun	};
1819*4882a593Smuzhiyun
1820*4882a593Smuzhiyun	xtal: xtal-clk {
1821*4882a593Smuzhiyun		compatible = "fixed-clock";
1822*4882a593Smuzhiyun		clock-frequency = <24000000>;
1823*4882a593Smuzhiyun		clock-output-names = "xtal";
1824*4882a593Smuzhiyun		#clock-cells = <0>;
1825*4882a593Smuzhiyun	};
1826*4882a593Smuzhiyun};
1827