1114abfe1SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
29d59b708SYixun Lan/*
39d59b708SYixun Lan * Copyright (c) 2017 Amlogic, Inc. All rights reserved.
49d59b708SYixun Lan */
59d59b708SYixun Lan
69d59b708SYixun Lan#include <dt-bindings/gpio/gpio.h>
79d59b708SYixun Lan#include <dt-bindings/interrupt-controller/irq.h>
89d59b708SYixun Lan#include <dt-bindings/interrupt-controller/arm-gic.h>
98909e722SJerome Brunet#include <dt-bindings/clock/axg-audio-clkc.h>
1006b7a631SYixun Lan#include <dt-bindings/clock/axg-clkc.h>
11e03421ecSQiufang Dai#include <dt-bindings/clock/axg-aoclkc.h>
12221cf34bSNan Li#include <dt-bindings/gpio/meson-axg-gpio.h>
13098e5303SJerome Brunet#include <dt-bindings/reset/amlogic,meson-axg-reset.h>
149d59b708SYixun Lan
159d59b708SYixun Lan/ {
169d59b708SYixun Lan	compatible = "amlogic,meson-axg";
179d59b708SYixun Lan
189d59b708SYixun Lan	interrupt-parent = <&gic>;
199d59b708SYixun Lan	#address-cells = <2>;
209d59b708SYixun Lan	#size-cells = <2>;
219d59b708SYixun Lan
229d59b708SYixun Lan	reserved-memory {
239d59b708SYixun Lan		#address-cells = <2>;
249d59b708SYixun Lan		#size-cells = <2>;
259d59b708SYixun Lan		ranges;
269d59b708SYixun Lan
279d59b708SYixun Lan		/* 16 MiB reserved for Hardware ROM Firmware */
289d59b708SYixun Lan		hwrom_reserved: hwrom@0 {
299d59b708SYixun Lan			reg = <0x0 0x0 0x0 0x1000000>;
309d59b708SYixun Lan			no-map;
319d59b708SYixun Lan		};
329d59b708SYixun Lan
339d59b708SYixun Lan		/* Alternate 3 MiB reserved for ARM Trusted Firmware (BL31) */
34a5494aedSArnd Bergmann		secmon_reserved: secmon@5000000 {
359d59b708SYixun Lan			reg = <0x0 0x05000000 0x0 0x300000>;
369d59b708SYixun Lan			no-map;
379d59b708SYixun Lan		};
389d59b708SYixun Lan	};
399d59b708SYixun Lan
409d59b708SYixun Lan	cpus {
419d59b708SYixun Lan		#address-cells = <0x2>;
429d59b708SYixun Lan		#size-cells = <0x0>;
439d59b708SYixun Lan
449d59b708SYixun Lan		cpu0: cpu@0 {
459d59b708SYixun Lan			device_type = "cpu";
469d59b708SYixun Lan			compatible = "arm,cortex-a53", "arm,armv8";
479d59b708SYixun Lan			reg = <0x0 0x0>;
489d59b708SYixun Lan			enable-method = "psci";
499d59b708SYixun Lan			next-level-cache = <&l2>;
509d59b708SYixun Lan		};
519d59b708SYixun Lan
529d59b708SYixun Lan		cpu1: cpu@1 {
539d59b708SYixun Lan			device_type = "cpu";
549d59b708SYixun Lan			compatible = "arm,cortex-a53", "arm,armv8";
559d59b708SYixun Lan			reg = <0x0 0x1>;
569d59b708SYixun Lan			enable-method = "psci";
579d59b708SYixun Lan			next-level-cache = <&l2>;
589d59b708SYixun Lan		};
599d59b708SYixun Lan
609d59b708SYixun Lan		cpu2: cpu@2 {
619d59b708SYixun Lan			device_type = "cpu";
629d59b708SYixun Lan			compatible = "arm,cortex-a53", "arm,armv8";
639d59b708SYixun Lan			reg = <0x0 0x2>;
649d59b708SYixun Lan			enable-method = "psci";
659d59b708SYixun Lan			next-level-cache = <&l2>;
669d59b708SYixun Lan		};
679d59b708SYixun Lan
689d59b708SYixun Lan		cpu3: cpu@3 {
699d59b708SYixun Lan			device_type = "cpu";
709d59b708SYixun Lan			compatible = "arm,cortex-a53", "arm,armv8";
719d59b708SYixun Lan			reg = <0x0 0x3>;
729d59b708SYixun Lan			enable-method = "psci";
739d59b708SYixun Lan			next-level-cache = <&l2>;
749d59b708SYixun Lan		};
759d59b708SYixun Lan
769d59b708SYixun Lan		l2: l2-cache0 {
779d59b708SYixun Lan			compatible = "cache";
789d59b708SYixun Lan		};
799d59b708SYixun Lan	};
809d59b708SYixun Lan
819d59b708SYixun Lan	arm-pmu {
829d59b708SYixun Lan		compatible = "arm,cortex-a53-pmu";
839d59b708SYixun Lan		interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
849d59b708SYixun Lan			     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
859d59b708SYixun Lan			     <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
869d59b708SYixun Lan			     <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
879d59b708SYixun Lan		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
889d59b708SYixun Lan	};
899d59b708SYixun Lan
909d59b708SYixun Lan	psci {
919d59b708SYixun Lan		compatible = "arm,psci-1.0";
929d59b708SYixun Lan		method = "smc";
939d59b708SYixun Lan	};
949d59b708SYixun Lan
959d59b708SYixun Lan	timer {
969d59b708SYixun Lan		compatible = "arm,armv8-timer";
979d59b708SYixun Lan		interrupts = <GIC_PPI 13
989d59b708SYixun Lan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
999d59b708SYixun Lan			     <GIC_PPI 14
1009d59b708SYixun Lan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1019d59b708SYixun Lan			     <GIC_PPI 11
1029d59b708SYixun Lan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1039d59b708SYixun Lan			     <GIC_PPI 10
1049d59b708SYixun Lan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>;
1059d59b708SYixun Lan	};
1069d59b708SYixun Lan
1079d59b708SYixun Lan	xtal: xtal-clk {
1089d59b708SYixun Lan		compatible = "fixed-clock";
1099d59b708SYixun Lan		clock-frequency = <24000000>;
1109d59b708SYixun Lan		clock-output-names = "xtal";
1119d59b708SYixun Lan		#clock-cells = <0>;
1129d59b708SYixun Lan	};
1139d59b708SYixun Lan
1145e395e14SYixun Lan	ao_alt_xtal: ao_alt_xtal-clk {
1155e395e14SYixun Lan		compatible = "fixed-clock";
1165e395e14SYixun Lan		clock-frequency = <32000000>;
1175e395e14SYixun Lan		clock-output-names = "ao_alt_xtal";
1185e395e14SYixun Lan		#clock-cells = <0>;
1195e395e14SYixun Lan	};
1205e395e14SYixun Lan
1219d59b708SYixun Lan	soc {
1229d59b708SYixun Lan		compatible = "simple-bus";
1239d59b708SYixun Lan		#address-cells = <2>;
1249d59b708SYixun Lan		#size-cells = <2>;
1259d59b708SYixun Lan		ranges;
1269d59b708SYixun Lan
127221cf34bSNan Li		apb: apb@ffe00000 {
128221cf34bSNan Li			compatible = "simple-bus";
129221cf34bSNan Li			reg = <0x0 0xffe00000 0x0 0x200000>;
130221cf34bSNan Li			#address-cells = <2>;
131221cf34bSNan Li			#size-cells = <2>;
132221cf34bSNan Li			ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x200000>;
133221cf34bSNan Li
134221cf34bSNan Li			sd_emmc_b: sd@5000 {
135221cf34bSNan Li				compatible = "amlogic,meson-axg-mmc";
136221cf34bSNan Li				reg = <0x0 0x5000 0x0 0x2000>;
137221cf34bSNan Li				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
138221cf34bSNan Li				status = "disabled";
139221cf34bSNan Li				clocks = <&clkc CLKID_SD_EMMC_B>,
140221cf34bSNan Li					<&clkc CLKID_SD_EMMC_B_CLK0>,
141221cf34bSNan Li					<&clkc CLKID_FCLK_DIV2>;
142221cf34bSNan Li				clock-names = "core", "clkin0", "clkin1";
143098e5303SJerome Brunet				resets = <&reset RESET_SD_EMMC_B>;
144221cf34bSNan Li			};
145221cf34bSNan Li
146221cf34bSNan Li			sd_emmc_c: mmc@7000 {
147221cf34bSNan Li				compatible = "amlogic,meson-axg-mmc";
148221cf34bSNan Li				reg = <0x0 0x7000 0x0 0x2000>;
149221cf34bSNan Li				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
150221cf34bSNan Li				status = "disabled";
151221cf34bSNan Li				clocks = <&clkc CLKID_SD_EMMC_C>,
152221cf34bSNan Li					<&clkc CLKID_SD_EMMC_C_CLK0>,
153221cf34bSNan Li					<&clkc CLKID_FCLK_DIV2>;
154221cf34bSNan Li				clock-names = "core", "clkin0", "clkin1";
155098e5303SJerome Brunet				resets = <&reset RESET_SD_EMMC_C>;
156221cf34bSNan Li			};
157221cf34bSNan Li		};
158221cf34bSNan Li
1598909e722SJerome Brunet		audio: bus@ff642000 {
1608909e722SJerome Brunet			compatible = "simple-bus";
1618909e722SJerome Brunet			reg = <0x0 0xff642000 0x0 0x2000>;
1628909e722SJerome Brunet			#address-cells = <2>;
1638909e722SJerome Brunet			#size-cells = <2>;
1648909e722SJerome Brunet			ranges = <0x0 0x0 0x0 0xff642000 0x0 0x2000>;
1658909e722SJerome Brunet
1668909e722SJerome Brunet			clkc_audio: clock-controller@0 {
1678909e722SJerome Brunet				compatible = "amlogic,axg-audio-clkc";
1688909e722SJerome Brunet				reg = <0x0 0x0 0x0 0xb4>;
1698909e722SJerome Brunet				#clock-cells = <1>;
1708909e722SJerome Brunet
1718909e722SJerome Brunet				clocks = <&clkc CLKID_AUDIO>,
1728909e722SJerome Brunet					 <&clkc CLKID_MPLL0>,
1738909e722SJerome Brunet					 <&clkc CLKID_MPLL1>,
1748909e722SJerome Brunet					 <&clkc CLKID_MPLL2>,
1758909e722SJerome Brunet					 <&clkc CLKID_MPLL3>,
1768909e722SJerome Brunet					 <&clkc CLKID_HIFI_PLL>,
1778909e722SJerome Brunet					 <&clkc CLKID_FCLK_DIV3>,
1788909e722SJerome Brunet					 <&clkc CLKID_FCLK_DIV4>,
1798909e722SJerome Brunet					 <&clkc CLKID_GP0_PLL>;
1808909e722SJerome Brunet				clock-names = "pclk",
1818909e722SJerome Brunet					      "mst_in0",
1828909e722SJerome Brunet					      "mst_in1",
1838909e722SJerome Brunet					      "mst_in2",
1848909e722SJerome Brunet					      "mst_in3",
1858909e722SJerome Brunet					      "mst_in4",
1868909e722SJerome Brunet					      "mst_in5",
1878909e722SJerome Brunet					      "mst_in6",
1888909e722SJerome Brunet					      "mst_in7";
1898909e722SJerome Brunet
1908909e722SJerome Brunet				resets = <&reset RESET_AUDIO>;
1918909e722SJerome Brunet			};
19266d58a8fSJerome Brunet
19366d58a8fSJerome Brunet			arb: reset-controller@280 {
19466d58a8fSJerome Brunet				compatible = "amlogic,meson-axg-audio-arb";
19566d58a8fSJerome Brunet				reg = <0x0 0x280 0x0 0x4>;
19666d58a8fSJerome Brunet				#reset-cells = <1>;
19766d58a8fSJerome Brunet				clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
19866d58a8fSJerome Brunet			};
199f08c52deSJerome Brunet
200f08c52deSJerome Brunet			spdifout: audio-controller@480 {
201f08c52deSJerome Brunet				compatible = "amlogic,axg-spdifout";
202f08c52deSJerome Brunet				reg = <0x0 0x480 0x0 0x50>;
203f08c52deSJerome Brunet				#sound-dai-cells = <0>;
204f08c52deSJerome Brunet				sound-name-prefix = "SPDIFOUT";
205f08c52deSJerome Brunet				clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
206f08c52deSJerome Brunet					 <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
207f08c52deSJerome Brunet				clock-names = "pclk", "mclk";
208f08c52deSJerome Brunet				status = "disabled";
209f08c52deSJerome Brunet			};
2108909e722SJerome Brunet		};
2118909e722SJerome Brunet
2120cb6c604SKevin Hilman		cbus: bus@ffd00000 {
2139d59b708SYixun Lan			compatible = "simple-bus";
2149d59b708SYixun Lan			reg = <0x0 0xffd00000 0x0 0x25000>;
2159d59b708SYixun Lan			#address-cells = <2>;
2169d59b708SYixun Lan			#size-cells = <2>;
2179d59b708SYixun Lan			ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x25000>;
2189d59b708SYixun Lan
219b0e59f94SYixun Lan			gpio_intc: interrupt-controller@f080 {
220b0e59f94SYixun Lan				compatible = "amlogic,meson-gpio-intc";
221b0e59f94SYixun Lan				reg = <0x0 0xf080 0x0 0x10>;
222b0e59f94SYixun Lan				interrupt-controller;
223b0e59f94SYixun Lan				#interrupt-cells = <2>;
224b0e59f94SYixun Lan				amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
225b0e59f94SYixun Lan				status = "disabled";
226b0e59f94SYixun Lan			};
227b0e59f94SYixun Lan
2284a81e5ddSJian Hu			pwm_ab: pwm@1b000 {
2294a81e5ddSJian Hu				compatible = "amlogic,meson-axg-ee-pwm";
2304a81e5ddSJian Hu				reg = <0x0 0x1b000 0x0 0x20>;
2314a81e5ddSJian Hu				#pwm-cells = <3>;
2324a81e5ddSJian Hu				status = "disabled";
2334a81e5ddSJian Hu			};
2344a81e5ddSJian Hu
2354a81e5ddSJian Hu			pwm_cd: pwm@1a000 {
2364a81e5ddSJian Hu				compatible = "amlogic,meson-axg-ee-pwm";
2374a81e5ddSJian Hu				reg = <0x0 0x1a000 0x0 0x20>;
2384a81e5ddSJian Hu				#pwm-cells = <3>;
2394a81e5ddSJian Hu				status = "disabled";
2404a81e5ddSJian Hu			};
2414a81e5ddSJian Hu
24243b9f617SYixun Lan			reset: reset-controller@1004 {
24343b9f617SYixun Lan				compatible = "amlogic,meson-axg-reset";
24443b9f617SYixun Lan				reg = <0x0 0x01004 0x0 0x9c>;
24543b9f617SYixun Lan				#reset-cells = <1>;
24643b9f617SYixun Lan			};
24743b9f617SYixun Lan
2488ae4284eSSunny Luo			spicc0: spi@13000 {
2498ae4284eSSunny Luo				compatible = "amlogic,meson-axg-spicc";
2508ae4284eSSunny Luo				reg = <0x0 0x13000 0x0 0x3c>;
2518ae4284eSSunny Luo				interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
2528ae4284eSSunny Luo				clocks = <&clkc CLKID_SPICC0>;
2538ae4284eSSunny Luo				clock-names = "core";
2548ae4284eSSunny Luo				#address-cells = <1>;
2558ae4284eSSunny Luo				#size-cells = <0>;
2568ae4284eSSunny Luo				status = "disabled";
2578ae4284eSSunny Luo			};
2588ae4284eSSunny Luo
2598ae4284eSSunny Luo			spicc1: spi@15000 {
2608ae4284eSSunny Luo				compatible = "amlogic,meson-axg-spicc";
2618ae4284eSSunny Luo				reg = <0x0 0x15000 0x0 0x3c>;
2628ae4284eSSunny Luo				interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
2638ae4284eSSunny Luo				clocks = <&clkc CLKID_SPICC1>;
2648ae4284eSSunny Luo				clock-names = "core";
2658ae4284eSSunny Luo				#address-cells = <1>;
2668ae4284eSSunny Luo				#size-cells = <0>;
2678ae4284eSSunny Luo				status = "disabled";
2688ae4284eSSunny Luo			};
2698ae4284eSSunny Luo
270dc6f858eSJian Hu			i2c0: i2c@1f000 {
271dc6f858eSJian Hu				compatible = "amlogic,meson-axg-i2c";
272dc6f858eSJian Hu				reg = <0x0 0x1f000 0x0 0x20>;
2732b6ff972SJerome Brunet				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
2742b6ff972SJerome Brunet				clocks = <&clkc CLKID_I2C>;
275dc6f858eSJian Hu				#address-cells = <1>;
276dc6f858eSJian Hu				#size-cells = <0>;
2772b6ff972SJerome Brunet				status = "disabled";
278dc6f858eSJian Hu			};
279dc6f858eSJian Hu
280dc6f858eSJian Hu			i2c1: i2c@1e000 {
281dc6f858eSJian Hu				compatible = "amlogic,meson-axg-i2c";
2822b6ff972SJerome Brunet				reg = <0x0 0x1e000 0x0 0x20>;
2832b6ff972SJerome Brunet				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
2842b6ff972SJerome Brunet				clocks = <&clkc CLKID_I2C>;
285dc6f858eSJian Hu				#address-cells = <1>;
286dc6f858eSJian Hu				#size-cells = <0>;
287dc6f858eSJian Hu				status = "disabled";
288dc6f858eSJian Hu			};
289dc6f858eSJian Hu
290dc6f858eSJian Hu			i2c2: i2c@1d000 {
291dc6f858eSJian Hu				compatible = "amlogic,meson-axg-i2c";
292dc6f858eSJian Hu				reg = <0x0 0x1d000 0x0 0x20>;
2932b6ff972SJerome Brunet				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
2942b6ff972SJerome Brunet				clocks = <&clkc CLKID_I2C>;
295dc6f858eSJian Hu				#address-cells = <1>;
296dc6f858eSJian Hu				#size-cells = <0>;
2972b6ff972SJerome Brunet				status = "disabled";
298dc6f858eSJian Hu			};
299dc6f858eSJian Hu
300dc6f858eSJian Hu			i2c3: i2c@1c000 {
301dc6f858eSJian Hu				compatible = "amlogic,meson-axg-i2c";
302dc6f858eSJian Hu				reg = <0x0 0x1c000 0x0 0x20>;
3032b6ff972SJerome Brunet				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
3042b6ff972SJerome Brunet				clocks = <&clkc CLKID_I2C>;
305dc6f858eSJian Hu				#address-cells = <1>;
306dc6f858eSJian Hu				#size-cells = <0>;
3072b6ff972SJerome Brunet				status = "disabled";
308dc6f858eSJian Hu			};
309dc6f858eSJian Hu
3109d59b708SYixun Lan			uart_A: serial@24000 {
31158662130SYixun Lan				compatible = "amlogic,meson-gx-uart";
31277f5cdbdSYixun Lan				reg = <0x0 0x24000 0x0 0x18>;
3139d59b708SYixun Lan				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
3149d59b708SYixun Lan				status = "disabled";
31558662130SYixun Lan				clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
31658662130SYixun Lan				clock-names = "xtal", "pclk", "baud";
3179d59b708SYixun Lan			};
3189d59b708SYixun Lan
3199d59b708SYixun Lan			uart_B: serial@23000 {
32058662130SYixun Lan				compatible = "amlogic,meson-gx-uart";
32177f5cdbdSYixun Lan				reg = <0x0 0x23000 0x0 0x18>;
3229d59b708SYixun Lan				interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
3239d59b708SYixun Lan				status = "disabled";
32458662130SYixun Lan				clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
32558662130SYixun Lan				clock-names = "xtal", "pclk", "baud";
3269d59b708SYixun Lan			};
3279d59b708SYixun Lan		};
3289d59b708SYixun Lan
32929390d27SYixun Lan		ethmac: ethernet@ff3f0000 {
33029390d27SYixun Lan			compatible = "amlogic,meson-gxbb-dwmac", "snps,dwmac";
33129390d27SYixun Lan			reg = <0x0 0xff3f0000 0x0 0x10000
33229390d27SYixun Lan				0x0 0xff634540 0x0 0x8>;
33329390d27SYixun Lan			interrupts = <GIC_SPI 8 IRQ_TYPE_EDGE_RISING>;
33429390d27SYixun Lan			interrupt-names = "macirq";
33529390d27SYixun Lan			clocks = <&clkc CLKID_ETH>,
33629390d27SYixun Lan				 <&clkc CLKID_FCLK_DIV2>,
33729390d27SYixun Lan				 <&clkc CLKID_MPLL2>;
33829390d27SYixun Lan			clock-names = "stmmaceth", "clkin0", "clkin1";
33929390d27SYixun Lan			status = "disabled";
34029390d27SYixun Lan		};
34129390d27SYixun Lan
3429d59b708SYixun Lan		gic: interrupt-controller@ffc01000 {
3439d59b708SYixun Lan			compatible = "arm,gic-400";
3449d59b708SYixun Lan			reg = <0x0 0xffc01000 0 0x1000>,
3459d59b708SYixun Lan			      <0x0 0xffc02000 0 0x2000>,
3469d59b708SYixun Lan			      <0x0 0xffc04000 0 0x2000>,
3479d59b708SYixun Lan			      <0x0 0xffc06000 0 0x2000>;
3489d59b708SYixun Lan			interrupt-controller;
3499d59b708SYixun Lan			interrupts = <GIC_PPI 9
3509d59b708SYixun Lan				(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
3519d59b708SYixun Lan			#interrupt-cells = <3>;
3529d59b708SYixun Lan			#address-cells = <0>;
3539d59b708SYixun Lan		};
3549d59b708SYixun Lan
355abfc18f9SQiufang Dai		hiubus: bus@ff63c000 {
356abfc18f9SQiufang Dai			compatible = "simple-bus";
357abfc18f9SQiufang Dai			reg = <0x0 0xff63c000 0x0 0x1c00>;
358abfc18f9SQiufang Dai			#address-cells = <2>;
359abfc18f9SQiufang Dai			#size-cells = <2>;
360abfc18f9SQiufang Dai			ranges = <0x0 0x0 0x0 0xff63c000 0x0 0x1c00>;
361abfc18f9SQiufang Dai
362cc4d6641SJerome Brunet			sysctrl: system-controller@0 {
363cc4d6641SJerome Brunet				compatible = "amlogic,meson-axg-hhi-sysctrl", "syscon", "simple-mfd";
364cc4d6641SJerome Brunet				reg = <0 0 0 0x400>;
365cc4d6641SJerome Brunet
366cc4d6641SJerome Brunet				clkc: clock-controller {
367abfc18f9SQiufang Dai					compatible = "amlogic,axg-clkc";
368abfc18f9SQiufang Dai					#clock-cells = <1>;
369cc4d6641SJerome Brunet				};
370abfc18f9SQiufang Dai			};
371abfc18f9SQiufang Dai		};
372abfc18f9SQiufang Dai
3739d59b708SYixun Lan		mailbox: mailbox@ff63dc00 {
3749d59b708SYixun Lan			compatible = "amlogic,meson-gx-mhu", "amlogic,meson-gxbb-mhu";
3759d59b708SYixun Lan			reg = <0 0xff63dc00 0 0x400>;
3769d59b708SYixun Lan			interrupts = <GIC_SPI 208 IRQ_TYPE_EDGE_RISING>,
3779d59b708SYixun Lan				     <GIC_SPI 209 IRQ_TYPE_EDGE_RISING>,
3789d59b708SYixun Lan				     <GIC_SPI 210 IRQ_TYPE_EDGE_RISING>;
3799d59b708SYixun Lan			#mbox-cells = <1>;
3809d59b708SYixun Lan		};
3819d59b708SYixun Lan
382de05ded6SXingyu Chen		periphs: periphs@ff634000 {
383de05ded6SXingyu Chen			compatible = "simple-bus";
384de05ded6SXingyu Chen			reg = <0x0 0xff634000 0x0 0x2000>;
385de05ded6SXingyu Chen			#address-cells = <2>;
386de05ded6SXingyu Chen			#size-cells = <2>;
387de05ded6SXingyu Chen			ranges = <0x0 0x0 0x0 0xff634000 0x0 0x2000>;
388de05ded6SXingyu Chen
389eafd53d3SJerome Brunet			hwrng: rng {
390eafd53d3SJerome Brunet				compatible = "amlogic,meson-rng";
391eafd53d3SJerome Brunet				reg = <0x0 0x18 0x0 0x4>;
392eafd53d3SJerome Brunet				clocks = <&clkc CLKID_RNG0>;
393eafd53d3SJerome Brunet				clock-names = "core";
394eafd53d3SJerome Brunet			};
395eafd53d3SJerome Brunet
396de05ded6SXingyu Chen			pinctrl_periphs: pinctrl@480 {
397de05ded6SXingyu Chen				compatible = "amlogic,meson-axg-periphs-pinctrl";
398de05ded6SXingyu Chen				#address-cells = <2>;
399de05ded6SXingyu Chen				#size-cells = <2>;
400de05ded6SXingyu Chen				ranges;
401de05ded6SXingyu Chen
402de05ded6SXingyu Chen				gpio: bank@480 {
403de05ded6SXingyu Chen					reg = <0x0 0x00480 0x0 0x40>,
404de05ded6SXingyu Chen						<0x0 0x004e8 0x0 0x14>,
405de05ded6SXingyu Chen						<0x0 0x00520 0x0 0x14>,
406de05ded6SXingyu Chen						<0x0 0x00430 0x0 0x3c>;
407de05ded6SXingyu Chen					reg-names = "mux", "pull", "pull-enable", "gpio";
408de05ded6SXingyu Chen					gpio-controller;
409de05ded6SXingyu Chen					#gpio-cells = <2>;
410de05ded6SXingyu Chen					gpio-ranges = <&pinctrl_periphs 0 0 86>;
411de05ded6SXingyu Chen				};
4124a81e5ddSJian Hu
413221cf34bSNan Li				emmc_pins: emmc {
414221cf34bSNan Li					mux {
415221cf34bSNan Li						groups = "emmc_nand_d0",
416221cf34bSNan Li							"emmc_nand_d1",
417221cf34bSNan Li							"emmc_nand_d2",
418221cf34bSNan Li							"emmc_nand_d3",
419221cf34bSNan Li							"emmc_nand_d4",
420221cf34bSNan Li							"emmc_nand_d5",
421221cf34bSNan Li							"emmc_nand_d6",
422221cf34bSNan Li							"emmc_nand_d7",
423221cf34bSNan Li							"emmc_clk",
424221cf34bSNan Li							"emmc_cmd",
425221cf34bSNan Li							"emmc_ds";
426221cf34bSNan Li						function = "emmc";
427221cf34bSNan Li					};
428221cf34bSNan Li				};
429221cf34bSNan Li
430221cf34bSNan Li				emmc_clk_gate_pins: emmc_clk_gate {
431221cf34bSNan Li					mux {
432221cf34bSNan Li						groups = "BOOT_8";
433221cf34bSNan Li						function = "gpio_periphs";
434221cf34bSNan Li					};
435221cf34bSNan Li					cfg-pull-down {
436221cf34bSNan Li						pins = "BOOT_8";
437221cf34bSNan Li						bias-pull-down;
438221cf34bSNan Li					};
439221cf34bSNan Li				};
440221cf34bSNan Li
441221cf34bSNan Li				sdio_pins: sdio {
442221cf34bSNan Li					mux {
443221cf34bSNan Li						groups = "sdio_d0",
444221cf34bSNan Li							"sdio_d1",
445221cf34bSNan Li							"sdio_d2",
446221cf34bSNan Li							"sdio_d3",
447221cf34bSNan Li							"sdio_cmd",
448221cf34bSNan Li							"sdio_clk";
449221cf34bSNan Li						function = "sdio";
450221cf34bSNan Li					};
451221cf34bSNan Li				};
452221cf34bSNan Li
453221cf34bSNan Li				sdio_clk_gate_pins: sdio_clk_gate {
454221cf34bSNan Li					mux {
455221cf34bSNan Li						groups = "GPIOX_4";
456221cf34bSNan Li						function = "gpio_periphs";
457221cf34bSNan Li					};
458221cf34bSNan Li					cfg-pull-down {
459221cf34bSNan Li						pins = "GPIOX_4";
460221cf34bSNan Li						bias-pull-down;
461221cf34bSNan Li					};
462221cf34bSNan Li				};
463221cf34bSNan Li
464777fa58dSYixun Lan				eth_rmii_x_pins: eth-x-rmii {
465777fa58dSYixun Lan					mux {
466777fa58dSYixun Lan						groups = "eth_mdio_x",
467777fa58dSYixun Lan						       "eth_mdc_x",
468777fa58dSYixun Lan						       "eth_rgmii_rx_clk_x",
469777fa58dSYixun Lan						       "eth_rx_dv_x",
470777fa58dSYixun Lan						       "eth_rxd0_x",
471777fa58dSYixun Lan						       "eth_rxd1_x",
472777fa58dSYixun Lan						       "eth_txen_x",
473777fa58dSYixun Lan						       "eth_txd0_x",
474777fa58dSYixun Lan						       "eth_txd1_x";
475777fa58dSYixun Lan						function = "eth";
476777fa58dSYixun Lan					};
477777fa58dSYixun Lan				};
478777fa58dSYixun Lan
479777fa58dSYixun Lan				eth_rmii_y_pins: eth-y-rmii {
480777fa58dSYixun Lan					mux {
481777fa58dSYixun Lan						groups = "eth_mdio_y",
482777fa58dSYixun Lan						       "eth_mdc_y",
483777fa58dSYixun Lan						       "eth_rgmii_rx_clk_y",
484777fa58dSYixun Lan						       "eth_rx_dv_y",
485777fa58dSYixun Lan						       "eth_rxd0_y",
486777fa58dSYixun Lan						       "eth_rxd1_y",
487777fa58dSYixun Lan						       "eth_txen_y",
488777fa58dSYixun Lan						       "eth_txd0_y",
489777fa58dSYixun Lan						       "eth_txd1_y";
490777fa58dSYixun Lan						function = "eth";
491777fa58dSYixun Lan					};
492777fa58dSYixun Lan				};
493777fa58dSYixun Lan
49429390d27SYixun Lan				eth_rgmii_x_pins: eth-x-rgmii {
49529390d27SYixun Lan					mux {
49629390d27SYixun Lan						groups = "eth_mdio_x",
49729390d27SYixun Lan						       "eth_mdc_x",
49829390d27SYixun Lan						       "eth_rgmii_rx_clk_x",
49929390d27SYixun Lan						       "eth_rx_dv_x",
50029390d27SYixun Lan						       "eth_rxd0_x",
50129390d27SYixun Lan						       "eth_rxd1_x",
50229390d27SYixun Lan						       "eth_rxd2_rgmii",
50329390d27SYixun Lan						       "eth_rxd3_rgmii",
50429390d27SYixun Lan						       "eth_rgmii_tx_clk",
50529390d27SYixun Lan						       "eth_txen_x",
50629390d27SYixun Lan						       "eth_txd0_x",
50729390d27SYixun Lan						       "eth_txd1_x",
50829390d27SYixun Lan						       "eth_txd2_rgmii",
50929390d27SYixun Lan						       "eth_txd3_rgmii";
51029390d27SYixun Lan						function = "eth";
51129390d27SYixun Lan					};
51229390d27SYixun Lan				};
51329390d27SYixun Lan
51429390d27SYixun Lan				eth_rgmii_y_pins: eth-y-rgmii {
51529390d27SYixun Lan					mux {
51629390d27SYixun Lan						groups = "eth_mdio_y",
51729390d27SYixun Lan						       "eth_mdc_y",
51829390d27SYixun Lan						       "eth_rgmii_rx_clk_y",
51929390d27SYixun Lan						       "eth_rx_dv_y",
52029390d27SYixun Lan						       "eth_rxd0_y",
52129390d27SYixun Lan						       "eth_rxd1_y",
52229390d27SYixun Lan						       "eth_rxd2_rgmii",
52329390d27SYixun Lan						       "eth_rxd3_rgmii",
52429390d27SYixun Lan						       "eth_rgmii_tx_clk",
52529390d27SYixun Lan						       "eth_txen_y",
52629390d27SYixun Lan						       "eth_txd0_y",
52729390d27SYixun Lan						       "eth_txd1_y",
52829390d27SYixun Lan						       "eth_txd2_rgmii",
52929390d27SYixun Lan						       "eth_txd3_rgmii";
53029390d27SYixun Lan						function = "eth";
53129390d27SYixun Lan					};
53229390d27SYixun Lan				};
53329390d27SYixun Lan
53489803e8bSJerome Brunet				pdm_dclk_a14_pins: pdm_dclk_a14 {
53589803e8bSJerome Brunet					mux {
53689803e8bSJerome Brunet						groups = "pdm_dclk_a14";
53789803e8bSJerome Brunet						function = "pdm";
53889803e8bSJerome Brunet					};
53989803e8bSJerome Brunet				};
54089803e8bSJerome Brunet
54189803e8bSJerome Brunet				pdm_dclk_a19_pins: pdm_dclk_a19 {
54289803e8bSJerome Brunet					mux {
54389803e8bSJerome Brunet						groups = "pdm_dclk_a19";
54489803e8bSJerome Brunet						function = "pdm";
54589803e8bSJerome Brunet					};
54689803e8bSJerome Brunet				};
54789803e8bSJerome Brunet
54889803e8bSJerome Brunet				pdm_din0_pins: pdm_din0 {
54989803e8bSJerome Brunet					mux {
55089803e8bSJerome Brunet						groups = "pdm_din0";
55189803e8bSJerome Brunet						function = "pdm";
55289803e8bSJerome Brunet					};
55389803e8bSJerome Brunet				};
55489803e8bSJerome Brunet
55589803e8bSJerome Brunet				pdm_din1_pins: pdm_din1 {
55689803e8bSJerome Brunet					mux {
55789803e8bSJerome Brunet						groups = "pdm_din1";
55889803e8bSJerome Brunet						function = "pdm";
55989803e8bSJerome Brunet					};
56089803e8bSJerome Brunet				};
56189803e8bSJerome Brunet
56289803e8bSJerome Brunet				pdm_din2_pins: pdm_din2 {
56389803e8bSJerome Brunet					mux {
56489803e8bSJerome Brunet						groups = "pdm_din2";
56589803e8bSJerome Brunet						function = "pdm";
56689803e8bSJerome Brunet					};
56789803e8bSJerome Brunet				};
56889803e8bSJerome Brunet
56989803e8bSJerome Brunet				pdm_din3_pins: pdm_din3 {
57089803e8bSJerome Brunet					mux {
57189803e8bSJerome Brunet						groups = "pdm_din3";
57289803e8bSJerome Brunet						function = "pdm";
57389803e8bSJerome Brunet					};
57489803e8bSJerome Brunet				};
57589803e8bSJerome Brunet
5764a81e5ddSJian Hu				pwm_a_a_pins: pwm_a_a {
5774a81e5ddSJian Hu					mux {
5784a81e5ddSJian Hu						groups = "pwm_a_a";
5794a81e5ddSJian Hu						function = "pwm_a";
5804a81e5ddSJian Hu					};
5814a81e5ddSJian Hu				};
5824a81e5ddSJian Hu
5834a81e5ddSJian Hu				pwm_a_x18_pins: pwm_a_x18 {
5844a81e5ddSJian Hu					mux {
5854a81e5ddSJian Hu						groups = "pwm_a_x18";
5864a81e5ddSJian Hu						function = "pwm_a";
5874a81e5ddSJian Hu					};
5884a81e5ddSJian Hu				};
5894a81e5ddSJian Hu
5904a81e5ddSJian Hu				pwm_a_x20_pins: pwm_a_x20 {
5914a81e5ddSJian Hu					mux {
5924a81e5ddSJian Hu						groups = "pwm_a_x20";
5934a81e5ddSJian Hu						function = "pwm_a";
5944a81e5ddSJian Hu					};
5954a81e5ddSJian Hu				};
5964a81e5ddSJian Hu
5974a81e5ddSJian Hu				pwm_a_z_pins: pwm_a_z {
5984a81e5ddSJian Hu					mux {
5994a81e5ddSJian Hu						groups = "pwm_a_z";
6004a81e5ddSJian Hu						function = "pwm_a";
6014a81e5ddSJian Hu					};
6024a81e5ddSJian Hu				};
6034a81e5ddSJian Hu
6044a81e5ddSJian Hu				pwm_b_a_pins: pwm_b_a {
6054a81e5ddSJian Hu					mux {
6064a81e5ddSJian Hu						groups = "pwm_b_a";
6074a81e5ddSJian Hu						function = "pwm_b";
6084a81e5ddSJian Hu					};
6094a81e5ddSJian Hu				};
6104a81e5ddSJian Hu
6114a81e5ddSJian Hu				pwm_b_x_pins: pwm_b_x {
6124a81e5ddSJian Hu					mux {
6134a81e5ddSJian Hu						groups = "pwm_b_x";
6144a81e5ddSJian Hu						function = "pwm_b";
6154a81e5ddSJian Hu					};
6164a81e5ddSJian Hu				};
6174a81e5ddSJian Hu
6184a81e5ddSJian Hu				pwm_b_z_pins: pwm_b_z {
6194a81e5ddSJian Hu					mux {
6204a81e5ddSJian Hu						groups = "pwm_b_z";
6214a81e5ddSJian Hu						function = "pwm_b";
6224a81e5ddSJian Hu					};
6234a81e5ddSJian Hu				};
6244a81e5ddSJian Hu
6254a81e5ddSJian Hu				pwm_c_a_pins: pwm_c_a {
6264a81e5ddSJian Hu					mux {
6274a81e5ddSJian Hu						groups = "pwm_c_a";
6284a81e5ddSJian Hu						function = "pwm_c";
6294a81e5ddSJian Hu					};
6304a81e5ddSJian Hu				};
6314a81e5ddSJian Hu
6324a81e5ddSJian Hu				pwm_c_x10_pins: pwm_c_x10 {
6334a81e5ddSJian Hu					mux {
6344a81e5ddSJian Hu						groups = "pwm_c_x10";
6354a81e5ddSJian Hu						function = "pwm_c";
6364a81e5ddSJian Hu					};
6374a81e5ddSJian Hu				};
6384a81e5ddSJian Hu
6394a81e5ddSJian Hu				pwm_c_x17_pins: pwm_c_x17 {
6404a81e5ddSJian Hu					mux {
6414a81e5ddSJian Hu						groups = "pwm_c_x17";
6424a81e5ddSJian Hu						function = "pwm_c";
6434a81e5ddSJian Hu					};
6444a81e5ddSJian Hu				};
6454a81e5ddSJian Hu
6464a81e5ddSJian Hu				pwm_d_x11_pins: pwm_d_x11 {
6474a81e5ddSJian Hu					mux {
6484a81e5ddSJian Hu						groups = "pwm_d_x11";
6494a81e5ddSJian Hu						function = "pwm_d";
6504a81e5ddSJian Hu					};
6514a81e5ddSJian Hu				};
6524a81e5ddSJian Hu
6534a81e5ddSJian Hu				pwm_d_x16_pins: pwm_d_x16 {
6544a81e5ddSJian Hu					mux {
6554a81e5ddSJian Hu						groups = "pwm_d_x16";
6564a81e5ddSJian Hu						function = "pwm_d";
6574a81e5ddSJian Hu					};
6584a81e5ddSJian Hu				};
6598ae4284eSSunny Luo
660c67ee0a8SJerome Brunet				spdif_in_z_pins: spdif_in_z {
661c67ee0a8SJerome Brunet					mux {
662c67ee0a8SJerome Brunet						groups = "spdif_in_z";
663c67ee0a8SJerome Brunet						function = "spdif_in";
664c67ee0a8SJerome Brunet					};
665c67ee0a8SJerome Brunet				};
666c67ee0a8SJerome Brunet
667c67ee0a8SJerome Brunet				spdif_in_a1_pins: spdif_in_a1 {
668c67ee0a8SJerome Brunet					mux {
669c67ee0a8SJerome Brunet						groups = "spdif_in_a1";
670c67ee0a8SJerome Brunet						function = "spdif_in";
671c67ee0a8SJerome Brunet					};
672c67ee0a8SJerome Brunet				};
673c67ee0a8SJerome Brunet
674c67ee0a8SJerome Brunet				spdif_in_a7_pins: spdif_in_a7 {
675c67ee0a8SJerome Brunet					mux {
676c67ee0a8SJerome Brunet						groups = "spdif_in_a7";
677c67ee0a8SJerome Brunet						function = "spdif_in";
678c67ee0a8SJerome Brunet					};
679c67ee0a8SJerome Brunet				};
680c67ee0a8SJerome Brunet
681c67ee0a8SJerome Brunet				spdif_in_a19_pins: spdif_in_a19 {
682c67ee0a8SJerome Brunet					mux {
683c67ee0a8SJerome Brunet						groups = "spdif_in_a19";
684c67ee0a8SJerome Brunet						function = "spdif_in";
685c67ee0a8SJerome Brunet					};
686c67ee0a8SJerome Brunet				};
687c67ee0a8SJerome Brunet
688c67ee0a8SJerome Brunet				spdif_in_a20_pins: spdif_in_a20 {
689c67ee0a8SJerome Brunet					mux {
690c67ee0a8SJerome Brunet						groups = "spdif_in_a20";
691c67ee0a8SJerome Brunet						function = "spdif_in";
692c67ee0a8SJerome Brunet					};
693c67ee0a8SJerome Brunet				};
694c67ee0a8SJerome Brunet
69570d4b64fSJerome Brunet				spdif_out_z_pins: spdif_out_z {
69670d4b64fSJerome Brunet					mux {
69770d4b64fSJerome Brunet						groups = "spdif_out_z";
69870d4b64fSJerome Brunet						function = "spdif_out";
69970d4b64fSJerome Brunet					};
70070d4b64fSJerome Brunet				};
70170d4b64fSJerome Brunet
70270d4b64fSJerome Brunet				spdif_out_a1_pins: spdif_out_a1 {
70370d4b64fSJerome Brunet					mux {
70470d4b64fSJerome Brunet						groups = "spdif_out_a1";
70570d4b64fSJerome Brunet						function = "spdif_out";
70670d4b64fSJerome Brunet					};
70770d4b64fSJerome Brunet				};
70870d4b64fSJerome Brunet
70970d4b64fSJerome Brunet				spdif_out_a11_pins: spdif_out_a11 {
71070d4b64fSJerome Brunet					mux {
71170d4b64fSJerome Brunet						groups = "spdif_out_a11";
71270d4b64fSJerome Brunet						function = "spdif_out";
71370d4b64fSJerome Brunet					};
71470d4b64fSJerome Brunet				};
71570d4b64fSJerome Brunet
71670d4b64fSJerome Brunet				spdif_out_a19_pins: spdif_out_a19 {
71770d4b64fSJerome Brunet					mux {
71870d4b64fSJerome Brunet						groups = "spdif_out_a19";
71970d4b64fSJerome Brunet						function = "spdif_out";
72070d4b64fSJerome Brunet					};
72170d4b64fSJerome Brunet				};
72270d4b64fSJerome Brunet
72370d4b64fSJerome Brunet				spdif_out_a20_pins: spdif_out_a20 {
72470d4b64fSJerome Brunet					mux {
72570d4b64fSJerome Brunet						groups = "spdif_out_a20";
72670d4b64fSJerome Brunet						function = "spdif_out";
72770d4b64fSJerome Brunet					};
72870d4b64fSJerome Brunet				};
72970d4b64fSJerome Brunet
7308ae4284eSSunny Luo				spi0_pins: spi0 {
7318ae4284eSSunny Luo					mux {
7328ae4284eSSunny Luo						groups = "spi0_miso",
7338ae4284eSSunny Luo							"spi0_mosi",
7348ae4284eSSunny Luo							"spi0_clk";
7358ae4284eSSunny Luo						function = "spi0";
7368ae4284eSSunny Luo					};
7378ae4284eSSunny Luo				};
7388ae4284eSSunny Luo
7398ae4284eSSunny Luo				spi0_ss0_pins: spi0_ss0 {
7408ae4284eSSunny Luo					mux {
7418ae4284eSSunny Luo						groups = "spi0_ss0";
7428ae4284eSSunny Luo						function = "spi0";
7438ae4284eSSunny Luo					};
7448ae4284eSSunny Luo				};
7458ae4284eSSunny Luo
7468ae4284eSSunny Luo				spi0_ss1_pins: spi0_ss1 {
7478ae4284eSSunny Luo					mux {
7488ae4284eSSunny Luo						groups = "spi0_ss1";
7498ae4284eSSunny Luo						function = "spi0";
7508ae4284eSSunny Luo					};
7518ae4284eSSunny Luo				};
7528ae4284eSSunny Luo
7538ae4284eSSunny Luo				spi0_ss2_pins: spi0_ss2 {
7548ae4284eSSunny Luo					mux {
7558ae4284eSSunny Luo						groups = "spi0_ss2";
7568ae4284eSSunny Luo						function = "spi0";
7578ae4284eSSunny Luo					};
7588ae4284eSSunny Luo				};
7598ae4284eSSunny Luo
7608ae4284eSSunny Luo
7618ae4284eSSunny Luo				spi1_a_pins: spi1_a {
7628ae4284eSSunny Luo					mux {
7638ae4284eSSunny Luo						groups = "spi1_miso_a",
7648ae4284eSSunny Luo							"spi1_mosi_a",
7658ae4284eSSunny Luo							"spi1_clk_a";
7668ae4284eSSunny Luo						function = "spi1";
7678ae4284eSSunny Luo					};
7688ae4284eSSunny Luo				};
7698ae4284eSSunny Luo
7708ae4284eSSunny Luo				spi1_ss0_a_pins: spi1_ss0_a {
7718ae4284eSSunny Luo					mux {
7728ae4284eSSunny Luo						groups = "spi1_ss0_a";
7738ae4284eSSunny Luo						function = "spi1";
7748ae4284eSSunny Luo					};
7758ae4284eSSunny Luo				};
7768ae4284eSSunny Luo
7778ae4284eSSunny Luo				spi1_ss1_pins: spi1_ss1 {
7788ae4284eSSunny Luo					mux {
7798ae4284eSSunny Luo						groups = "spi1_ss1";
7808ae4284eSSunny Luo						function = "spi1";
7818ae4284eSSunny Luo					};
7828ae4284eSSunny Luo				};
7838ae4284eSSunny Luo
7848ae4284eSSunny Luo				spi1_x_pins: spi1_x {
7858ae4284eSSunny Luo					mux {
7868ae4284eSSunny Luo						groups = "spi1_miso_x",
7878ae4284eSSunny Luo							"spi1_mosi_x",
7888ae4284eSSunny Luo							"spi1_clk_x";
7898ae4284eSSunny Luo						function = "spi1";
7908ae4284eSSunny Luo					};
7918ae4284eSSunny Luo				};
7928ae4284eSSunny Luo
7938ae4284eSSunny Luo				spi1_ss0_x_pins: spi1_ss0_x {
7948ae4284eSSunny Luo					mux {
7958ae4284eSSunny Luo						groups = "spi1_ss0_x";
7968ae4284eSSunny Luo						function = "spi1";
7978ae4284eSSunny Luo					};
7988ae4284eSSunny Luo				};
7998a7669a5SJian Hu
8008a7669a5SJian Hu				i2c0_pins: i2c0 {
8018a7669a5SJian Hu					mux {
8028a7669a5SJian Hu						groups = "i2c0_sck",
8038a7669a5SJian Hu							"i2c0_sda";
8048a7669a5SJian Hu						function = "i2c0";
8058a7669a5SJian Hu					};
8068a7669a5SJian Hu				};
8078a7669a5SJian Hu
8088a7669a5SJian Hu				i2c1_z_pins: i2c1_z {
8098a7669a5SJian Hu					mux {
8108a7669a5SJian Hu						groups = "i2c1_sck_z",
8118a7669a5SJian Hu							"i2c1_sda_z";
8128a7669a5SJian Hu						function = "i2c1";
8138a7669a5SJian Hu					};
8148a7669a5SJian Hu				};
8158a7669a5SJian Hu
8168a7669a5SJian Hu				i2c1_x_pins: i2c1_x {
8178a7669a5SJian Hu					mux {
8188a7669a5SJian Hu						groups = "i2c1_sck_x",
8198a7669a5SJian Hu							"i2c1_sda_x";
8208a7669a5SJian Hu						function = "i2c1";
8218a7669a5SJian Hu					};
8228a7669a5SJian Hu				};
8238a7669a5SJian Hu
8248a7669a5SJian Hu				i2c2_x_pins: i2c2_x {
8258a7669a5SJian Hu					mux {
8268a7669a5SJian Hu						groups = "i2c2_sck_x",
8278a7669a5SJian Hu							"i2c2_sda_x";
8288a7669a5SJian Hu						function = "i2c2";
8298a7669a5SJian Hu					};
8308a7669a5SJian Hu				};
8318a7669a5SJian Hu
8328a7669a5SJian Hu				i2c2_a_pins: i2c2_a {
8338a7669a5SJian Hu					mux {
8348a7669a5SJian Hu						groups = "i2c2_sck_a",
8358a7669a5SJian Hu							"i2c2_sda_a";
8368a7669a5SJian Hu						function = "i2c2";
8378a7669a5SJian Hu					};
8388a7669a5SJian Hu				};
8398a7669a5SJian Hu
8408a7669a5SJian Hu				i2c3_a6_pins: i2c3_a6 {
8418a7669a5SJian Hu					mux {
8428a7669a5SJian Hu						groups = "i2c3_sda_a6",
8438a7669a5SJian Hu							"i2c3_sck_a7";
8448a7669a5SJian Hu						function = "i2c3";
8458a7669a5SJian Hu					};
8468a7669a5SJian Hu				};
8478a7669a5SJian Hu
8488a7669a5SJian Hu				i2c3_a12_pins: i2c3_a12 {
8498a7669a5SJian Hu					mux {
8508a7669a5SJian Hu						groups = "i2c3_sda_a12",
8518a7669a5SJian Hu							"i2c3_sck_a13";
8528a7669a5SJian Hu						function = "i2c3";
8538a7669a5SJian Hu					};
8548a7669a5SJian Hu				};
8558a7669a5SJian Hu
8568a7669a5SJian Hu				i2c3_a19_pins: i2c3_a19 {
8578a7669a5SJian Hu					mux {
8588a7669a5SJian Hu						groups = "i2c3_sda_a19",
8598a7669a5SJian Hu							"i2c3_sck_a20";
8608a7669a5SJian Hu						function = "i2c3";
8618a7669a5SJian Hu					};
8628a7669a5SJian Hu				};
8634eae66a6SYixun Lan
8644eae66a6SYixun Lan				uart_a_pins: uart_a {
8654eae66a6SYixun Lan					mux {
8664eae66a6SYixun Lan						groups = "uart_tx_a",
8674eae66a6SYixun Lan							"uart_rx_a";
8684eae66a6SYixun Lan						function = "uart_a";
8694eae66a6SYixun Lan					};
8704eae66a6SYixun Lan				};
8714eae66a6SYixun Lan
8724eae66a6SYixun Lan				uart_a_cts_rts_pins: uart_a_cts_rts {
8734eae66a6SYixun Lan					mux {
8744eae66a6SYixun Lan						groups = "uart_cts_a",
8754eae66a6SYixun Lan							"uart_rts_a";
8764eae66a6SYixun Lan						function = "uart_a";
8774eae66a6SYixun Lan					};
8784eae66a6SYixun Lan				};
8794eae66a6SYixun Lan
8804eae66a6SYixun Lan				uart_b_x_pins: uart_b_x {
8814eae66a6SYixun Lan					mux {
8824eae66a6SYixun Lan						groups = "uart_tx_b_x",
8834eae66a6SYixun Lan							"uart_rx_b_x";
8844eae66a6SYixun Lan						function = "uart_b";
8854eae66a6SYixun Lan					};
8864eae66a6SYixun Lan				};
8874eae66a6SYixun Lan
8884eae66a6SYixun Lan				uart_b_x_cts_rts_pins: uart_b_x_cts_rts {
8894eae66a6SYixun Lan					mux {
8904eae66a6SYixun Lan						groups = "uart_cts_b_x",
8914eae66a6SYixun Lan							"uart_rts_b_x";
8924eae66a6SYixun Lan						function = "uart_b";
8934eae66a6SYixun Lan					};
8944eae66a6SYixun Lan				};
8954eae66a6SYixun Lan
8964eae66a6SYixun Lan				uart_b_z_pins: uart_b_z {
8974eae66a6SYixun Lan					mux {
8984eae66a6SYixun Lan						groups = "uart_tx_b_z",
8994eae66a6SYixun Lan							"uart_rx_b_z";
9004eae66a6SYixun Lan						function = "uart_b";
9014eae66a6SYixun Lan					};
9024eae66a6SYixun Lan				};
9034eae66a6SYixun Lan
9044eae66a6SYixun Lan				uart_b_z_cts_rts_pins: uart_b_z_cts_rts {
9054eae66a6SYixun Lan					mux {
9064eae66a6SYixun Lan						groups = "uart_cts_b_z",
9074eae66a6SYixun Lan							"uart_rts_b_z";
9084eae66a6SYixun Lan						function = "uart_b";
9094eae66a6SYixun Lan					};
9104eae66a6SYixun Lan				};
9114eae66a6SYixun Lan
9124eae66a6SYixun Lan				uart_ao_b_z_pins: uart_ao_b_z {
9134eae66a6SYixun Lan					mux {
9144eae66a6SYixun Lan						groups = "uart_ao_tx_b_z",
9154eae66a6SYixun Lan							"uart_ao_rx_b_z";
9164eae66a6SYixun Lan						function = "uart_ao_b_z";
9174eae66a6SYixun Lan					};
9184eae66a6SYixun Lan				};
9194eae66a6SYixun Lan
9204eae66a6SYixun Lan				uart_ao_b_z_cts_rts_pins: uart_ao_b_z_cts_rts {
9214eae66a6SYixun Lan					mux {
9224eae66a6SYixun Lan						groups = "uart_ao_cts_b_z",
9234eae66a6SYixun Lan							"uart_ao_rts_b_z";
9244eae66a6SYixun Lan						function = "uart_ao_b_z";
9254eae66a6SYixun Lan					};
9264eae66a6SYixun Lan				};
9270df8fbb9SJerome Brunet
9280df8fbb9SJerome Brunet				mclk_b_pins: mclk_b {
9290df8fbb9SJerome Brunet					mux {
9300df8fbb9SJerome Brunet						groups = "mclk_b";
9310df8fbb9SJerome Brunet						function = "mclk_b";
9320df8fbb9SJerome Brunet					};
9330df8fbb9SJerome Brunet				};
9340df8fbb9SJerome Brunet
9350df8fbb9SJerome Brunet				mclk_c_pins: mclk_c {
9360df8fbb9SJerome Brunet					mux {
9370df8fbb9SJerome Brunet						groups = "mclk_c";
9380df8fbb9SJerome Brunet						function = "mclk_c";
9390df8fbb9SJerome Brunet					};
9400df8fbb9SJerome Brunet				};
9410df8fbb9SJerome Brunet
9420df8fbb9SJerome Brunet				tdma_sclk_pins: tdma_sclk {
9430df8fbb9SJerome Brunet					mux {
9440df8fbb9SJerome Brunet						groups = "tdma_sclk";
9450df8fbb9SJerome Brunet						function = "tdma";
9460df8fbb9SJerome Brunet					};
9470df8fbb9SJerome Brunet				};
9480df8fbb9SJerome Brunet
9490df8fbb9SJerome Brunet				tdma_sclk_slv_pins: tdma_sclk_slv {
9500df8fbb9SJerome Brunet					mux {
9510df8fbb9SJerome Brunet						groups = "tdma_sclk_slv";
9520df8fbb9SJerome Brunet						function = "tdma";
9530df8fbb9SJerome Brunet					};
9540df8fbb9SJerome Brunet				};
9550df8fbb9SJerome Brunet
9560df8fbb9SJerome Brunet				tdma_fs_pins: tdma_fs {
9570df8fbb9SJerome Brunet					mux {
9580df8fbb9SJerome Brunet						groups = "tdma_fs";
9590df8fbb9SJerome Brunet						function = "tdma";
9600df8fbb9SJerome Brunet					};
9610df8fbb9SJerome Brunet				};
9620df8fbb9SJerome Brunet
9630df8fbb9SJerome Brunet				tdma_fs_slv_pins: tdma_fs_slv {
9640df8fbb9SJerome Brunet					mux {
9650df8fbb9SJerome Brunet						groups = "tdma_fs_slv";
9660df8fbb9SJerome Brunet						function = "tdma";
9670df8fbb9SJerome Brunet					};
9680df8fbb9SJerome Brunet				};
9690df8fbb9SJerome Brunet
9700df8fbb9SJerome Brunet				tdma_din0_pins: tdma_din0 {
9710df8fbb9SJerome Brunet					mux {
9720df8fbb9SJerome Brunet						groups = "tdma_din0";
9730df8fbb9SJerome Brunet						function = "tdma";
9740df8fbb9SJerome Brunet					};
9750df8fbb9SJerome Brunet				};
9760df8fbb9SJerome Brunet
9770df8fbb9SJerome Brunet				tdma_dout0_x14_pins: tdma_dout0_x14 {
9780df8fbb9SJerome Brunet					mux {
9790df8fbb9SJerome Brunet						groups = "tdma_dout0_x14";
9800df8fbb9SJerome Brunet						function = "tdma";
9810df8fbb9SJerome Brunet					};
9820df8fbb9SJerome Brunet				};
9830df8fbb9SJerome Brunet
9840df8fbb9SJerome Brunet				tdma_dout0_x15_pins: tdma_dout0_x15 {
9850df8fbb9SJerome Brunet					mux {
9860df8fbb9SJerome Brunet						groups = "tdma_dout0_x15";
9870df8fbb9SJerome Brunet						function = "tdma";
9880df8fbb9SJerome Brunet					};
9890df8fbb9SJerome Brunet				};
9900df8fbb9SJerome Brunet
9910df8fbb9SJerome Brunet				tdma_dout1_pins: tdma_dout1 {
9920df8fbb9SJerome Brunet					mux {
9930df8fbb9SJerome Brunet						groups = "tdma_dout1";
9940df8fbb9SJerome Brunet						function = "tdma";
9950df8fbb9SJerome Brunet					};
9960df8fbb9SJerome Brunet				};
9970df8fbb9SJerome Brunet
9980df8fbb9SJerome Brunet				tdma_din1_pins: tdma_din1 {
9990df8fbb9SJerome Brunet					mux {
10000df8fbb9SJerome Brunet						groups = "tdma_din1";
10010df8fbb9SJerome Brunet						function = "tdma";
10020df8fbb9SJerome Brunet					};
10030df8fbb9SJerome Brunet				};
10040df8fbb9SJerome Brunet
10050df8fbb9SJerome Brunet				tdmb_sclk_pins: tdmb_sclk {
10060df8fbb9SJerome Brunet					mux {
10070df8fbb9SJerome Brunet						groups = "tdmb_sclk";
10080df8fbb9SJerome Brunet						function = "tdmb";
10090df8fbb9SJerome Brunet					};
10100df8fbb9SJerome Brunet				};
10110df8fbb9SJerome Brunet
10120df8fbb9SJerome Brunet				tdmb_sclk_slv_pins: tdmb_sclk_slv {
10130df8fbb9SJerome Brunet					mux {
10140df8fbb9SJerome Brunet						groups = "tdmb_sclk_slv";
10150df8fbb9SJerome Brunet						function = "tdmb";
10160df8fbb9SJerome Brunet					};
10170df8fbb9SJerome Brunet				};
10180df8fbb9SJerome Brunet
10190df8fbb9SJerome Brunet				tdmb_fs_pins: tdmb_fs {
10200df8fbb9SJerome Brunet					mux {
10210df8fbb9SJerome Brunet						groups = "tdmb_fs";
10220df8fbb9SJerome Brunet						function = "tdmb";
10230df8fbb9SJerome Brunet					};
10240df8fbb9SJerome Brunet				};
10250df8fbb9SJerome Brunet
10260df8fbb9SJerome Brunet				tdmb_fs_slv_pins: tdmb_fs_slv {
10270df8fbb9SJerome Brunet					mux {
10280df8fbb9SJerome Brunet						groups = "tdmb_fs_slv";
10290df8fbb9SJerome Brunet						function = "tdmb";
10300df8fbb9SJerome Brunet					};
10310df8fbb9SJerome Brunet				};
10320df8fbb9SJerome Brunet
10330df8fbb9SJerome Brunet				tdmb_din0_pins: tdmb_din0 {
10340df8fbb9SJerome Brunet					mux {
10350df8fbb9SJerome Brunet						groups = "tdmb_din0";
10360df8fbb9SJerome Brunet						function = "tdmb";
10370df8fbb9SJerome Brunet					};
10380df8fbb9SJerome Brunet				};
10390df8fbb9SJerome Brunet
10400df8fbb9SJerome Brunet				tdmb_dout0_pins: tdmb_dout0 {
10410df8fbb9SJerome Brunet					mux {
10420df8fbb9SJerome Brunet						groups = "tdmb_dout0";
10430df8fbb9SJerome Brunet						function = "tdmb";
10440df8fbb9SJerome Brunet					};
10450df8fbb9SJerome Brunet				};
10460df8fbb9SJerome Brunet
10470df8fbb9SJerome Brunet				tdmb_din1_pins: tdmb_din1 {
10480df8fbb9SJerome Brunet					mux {
10490df8fbb9SJerome Brunet						groups = "tdmb_din1";
10500df8fbb9SJerome Brunet						function = "tdmb";
10510df8fbb9SJerome Brunet					};
10520df8fbb9SJerome Brunet				};
10530df8fbb9SJerome Brunet
10540df8fbb9SJerome Brunet				tdmb_dout1_pins: tdmb_dout1 {
10550df8fbb9SJerome Brunet					mux {
10560df8fbb9SJerome Brunet						groups = "tdmb_dout1";
10570df8fbb9SJerome Brunet						function = "tdmb";
10580df8fbb9SJerome Brunet					};
10590df8fbb9SJerome Brunet				};
10600df8fbb9SJerome Brunet
10610df8fbb9SJerome Brunet				tdmb_din2_pins: tdmb_din2 {
10620df8fbb9SJerome Brunet					mux {
10630df8fbb9SJerome Brunet						groups = "tdmb_din2";
10640df8fbb9SJerome Brunet						function = "tdmb";
10650df8fbb9SJerome Brunet					};
10660df8fbb9SJerome Brunet				};
10670df8fbb9SJerome Brunet
10680df8fbb9SJerome Brunet				tdmb_dout2_pins: tdmb_dout2 {
10690df8fbb9SJerome Brunet					mux {
10700df8fbb9SJerome Brunet						groups = "tdmb_dout2";
10710df8fbb9SJerome Brunet						function = "tdmb";
10720df8fbb9SJerome Brunet					};
10730df8fbb9SJerome Brunet				};
10740df8fbb9SJerome Brunet
10750df8fbb9SJerome Brunet				tdmb_din3_pins: tdmb_din3 {
10760df8fbb9SJerome Brunet					mux {
10770df8fbb9SJerome Brunet						groups = "tdmb_din3";
10780df8fbb9SJerome Brunet						function = "tdmb";
10790df8fbb9SJerome Brunet					};
10800df8fbb9SJerome Brunet				};
10810df8fbb9SJerome Brunet
10820df8fbb9SJerome Brunet				tdmb_dout3_pins: tdmb_dout3 {
10830df8fbb9SJerome Brunet					mux {
10840df8fbb9SJerome Brunet						groups = "tdmb_dout3";
10850df8fbb9SJerome Brunet						function = "tdmb";
10860df8fbb9SJerome Brunet					};
10870df8fbb9SJerome Brunet				};
10880df8fbb9SJerome Brunet
10890df8fbb9SJerome Brunet				tdmc_sclk_pins: tdmc_sclk {
10900df8fbb9SJerome Brunet					mux {
10910df8fbb9SJerome Brunet						groups = "tdmc_sclk";
10920df8fbb9SJerome Brunet						function = "tdmc";
10930df8fbb9SJerome Brunet					};
10940df8fbb9SJerome Brunet				};
10950df8fbb9SJerome Brunet
10960df8fbb9SJerome Brunet				tdmc_sclk_slv_pins: tdmc_sclk_slv {
10970df8fbb9SJerome Brunet					mux {
10980df8fbb9SJerome Brunet						groups = "tdmc_sclk_slv";
10990df8fbb9SJerome Brunet						function = "tdmc";
11000df8fbb9SJerome Brunet					};
11010df8fbb9SJerome Brunet				};
11020df8fbb9SJerome Brunet
11030df8fbb9SJerome Brunet				tdmc_fs_pins: tdmc_fs {
11040df8fbb9SJerome Brunet					mux {
11050df8fbb9SJerome Brunet						groups = "tdmc_fs";
11060df8fbb9SJerome Brunet						function = "tdmc";
11070df8fbb9SJerome Brunet					};
11080df8fbb9SJerome Brunet				};
11090df8fbb9SJerome Brunet
11100df8fbb9SJerome Brunet				tdmc_fs_slv_pins: tdmc_fs_slv {
11110df8fbb9SJerome Brunet					mux {
11120df8fbb9SJerome Brunet						groups = "tdmc_fs_slv";
11130df8fbb9SJerome Brunet						function = "tdmc";
11140df8fbb9SJerome Brunet					};
11150df8fbb9SJerome Brunet				};
11160df8fbb9SJerome Brunet
11170df8fbb9SJerome Brunet				tdmc_din0_pins: tdmc_din0 {
11180df8fbb9SJerome Brunet					mux {
11190df8fbb9SJerome Brunet						groups = "tdmc_din0";
11200df8fbb9SJerome Brunet						function = "tdmc";
11210df8fbb9SJerome Brunet					};
11220df8fbb9SJerome Brunet				};
11230df8fbb9SJerome Brunet
11240df8fbb9SJerome Brunet				tdmc_dout0_pins: tdmc_dout0 {
11250df8fbb9SJerome Brunet					mux {
11260df8fbb9SJerome Brunet						groups = "tdmc_dout0";
11270df8fbb9SJerome Brunet						function = "tdmc";
11280df8fbb9SJerome Brunet					};
11290df8fbb9SJerome Brunet				};
11300df8fbb9SJerome Brunet
11310df8fbb9SJerome Brunet				tdmc_din1_pins: tdmc_din1 {
11320df8fbb9SJerome Brunet					mux {
11330df8fbb9SJerome Brunet						groups = "tdmc_din1";
11340df8fbb9SJerome Brunet						function = "tdmc";
11350df8fbb9SJerome Brunet					};
11360df8fbb9SJerome Brunet				};
11370df8fbb9SJerome Brunet
11380df8fbb9SJerome Brunet				tdmc_dout1_pins: tdmc_dout1 {
11390df8fbb9SJerome Brunet					mux {
11400df8fbb9SJerome Brunet						groups = "tdmc_dout1";
11410df8fbb9SJerome Brunet						function = "tdmc";
11420df8fbb9SJerome Brunet					};
11430df8fbb9SJerome Brunet				};
11440df8fbb9SJerome Brunet
11450df8fbb9SJerome Brunet				tdmc_din2_pins: tdmc_din2 {
11460df8fbb9SJerome Brunet					mux {
11470df8fbb9SJerome Brunet						groups = "tdmc_din2";
11480df8fbb9SJerome Brunet						function = "tdmc";
11490df8fbb9SJerome Brunet					};
11500df8fbb9SJerome Brunet				};
11510df8fbb9SJerome Brunet
11520df8fbb9SJerome Brunet				tdmc_dout2_pins: tdmc_dout2 {
11530df8fbb9SJerome Brunet					mux {
11540df8fbb9SJerome Brunet						groups = "tdmc_dout2";
11550df8fbb9SJerome Brunet						function = "tdmc";
11560df8fbb9SJerome Brunet					};
11570df8fbb9SJerome Brunet				};
11580df8fbb9SJerome Brunet
11590df8fbb9SJerome Brunet				tdmc_din3_pins: tdmc_din3 {
11600df8fbb9SJerome Brunet					mux {
11610df8fbb9SJerome Brunet						groups = "tdmc_din3";
11620df8fbb9SJerome Brunet						function = "tdmc";
11630df8fbb9SJerome Brunet					};
11640df8fbb9SJerome Brunet				};
11650df8fbb9SJerome Brunet
11660df8fbb9SJerome Brunet				tdmc_dout3_pins: tdmc_dout3 {
11670df8fbb9SJerome Brunet					mux {
11680df8fbb9SJerome Brunet						groups = "tdmc_dout3";
11690df8fbb9SJerome Brunet						function = "tdmc";
11700df8fbb9SJerome Brunet					};
11710df8fbb9SJerome Brunet				};
1172de05ded6SXingyu Chen			};
1173de05ded6SXingyu Chen		};
1174de05ded6SXingyu Chen
11759d59b708SYixun Lan		sram: sram@fffc0000 {
11769d59b708SYixun Lan			compatible = "amlogic,meson-axg-sram", "mmio-sram";
11779d59b708SYixun Lan			reg = <0x0 0xfffc0000 0x0 0x20000>;
11789d59b708SYixun Lan			#address-cells = <1>;
11799d59b708SYixun Lan			#size-cells = <1>;
11809d59b708SYixun Lan			ranges = <0 0x0 0xfffc0000 0x20000>;
11819d59b708SYixun Lan
11829d59b708SYixun Lan			cpu_scp_lpri: scp-shmem@0 {
11839d59b708SYixun Lan				compatible = "amlogic,meson-axg-scp-shmem";
11849d59b708SYixun Lan				reg = <0x13000 0x400>;
11859d59b708SYixun Lan			};
11869d59b708SYixun Lan
11879d59b708SYixun Lan			cpu_scp_hpri: scp-shmem@200 {
11889d59b708SYixun Lan				compatible = "amlogic,meson-axg-scp-shmem";
11899d59b708SYixun Lan				reg = <0x13400 0x400>;
11909d59b708SYixun Lan			};
11919d59b708SYixun Lan		};
11929d59b708SYixun Lan
11930cb6c604SKevin Hilman		aobus: bus@ff800000 {
11949d59b708SYixun Lan			compatible = "simple-bus";
11959d59b708SYixun Lan			reg = <0x0 0xff800000 0x0 0x100000>;
11969d59b708SYixun Lan			#address-cells = <2>;
11979d59b708SYixun Lan			#size-cells = <2>;
11989d59b708SYixun Lan			ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
11999d59b708SYixun Lan
1200e03421ecSQiufang Dai			sysctrl_AO: sys-ctrl@0 {
1201e03421ecSQiufang Dai				compatible = "amlogic,meson-axg-ao-sysctrl", "syscon", "simple-mfd";
1202e03421ecSQiufang Dai				reg =  <0x0 0x0 0x0 0x100>;
1203e03421ecSQiufang Dai
1204e03421ecSQiufang Dai				clkc_AO: clock-controller {
1205e03421ecSQiufang Dai					compatible = "amlogic,meson-axg-aoclkc";
1206e03421ecSQiufang Dai					#clock-cells = <1>;
1207e03421ecSQiufang Dai					#reset-cells = <1>;
1208e03421ecSQiufang Dai				};
1209e03421ecSQiufang Dai			};
1210e03421ecSQiufang Dai
1211de05ded6SXingyu Chen			pinctrl_aobus: pinctrl@14 {
1212de05ded6SXingyu Chen				compatible = "amlogic,meson-axg-aobus-pinctrl";
1213de05ded6SXingyu Chen				#address-cells = <2>;
1214de05ded6SXingyu Chen				#size-cells = <2>;
1215de05ded6SXingyu Chen				ranges;
1216de05ded6SXingyu Chen
1217de05ded6SXingyu Chen				gpio_ao: bank@14 {
1218de05ded6SXingyu Chen					reg = <0x0 0x00014 0x0 0x8>,
1219de05ded6SXingyu Chen						<0x0 0x0002c 0x0 0x4>,
1220de05ded6SXingyu Chen						<0x0 0x00024 0x0 0x8>;
1221de05ded6SXingyu Chen					reg-names = "mux", "pull", "gpio";
1222de05ded6SXingyu Chen					gpio-controller;
1223de05ded6SXingyu Chen					#gpio-cells = <2>;
1224de05ded6SXingyu Chen					gpio-ranges = <&pinctrl_aobus 0 0 15>;
1225de05ded6SXingyu Chen				};
12267bd46a79SYixun Lan
1227c054b6c2SJerome Brunet				i2c_ao_sck_4_pins: i2c_ao_sck_4 {
1228c054b6c2SJerome Brunet					mux {
1229c054b6c2SJerome Brunet						groups = "i2c_ao_sck_4";
1230c054b6c2SJerome Brunet						function = "i2c_ao";
1231c054b6c2SJerome Brunet					};
1232c054b6c2SJerome Brunet				};
1233c054b6c2SJerome Brunet
1234c054b6c2SJerome Brunet				i2c_ao_sck_8_pins: i2c_ao_sck_8 {
1235c054b6c2SJerome Brunet					mux {
1236c054b6c2SJerome Brunet						groups = "i2c_ao_sck_8";
1237c054b6c2SJerome Brunet						function = "i2c_ao";
1238c054b6c2SJerome Brunet					};
1239c054b6c2SJerome Brunet				};
1240c054b6c2SJerome Brunet
1241c054b6c2SJerome Brunet				i2c_ao_sck_10_pins: i2c_ao_sck_10 {
1242c054b6c2SJerome Brunet					mux {
1243c054b6c2SJerome Brunet						groups = "i2c_ao_sck_10";
1244c054b6c2SJerome Brunet						function = "i2c_ao";
1245c054b6c2SJerome Brunet					};
1246c054b6c2SJerome Brunet				};
1247c054b6c2SJerome Brunet
1248c054b6c2SJerome Brunet				i2c_ao_sda_5_pins: i2c_ao_sda_5 {
1249c054b6c2SJerome Brunet					mux {
1250c054b6c2SJerome Brunet						groups = "i2c_ao_sda_5";
1251c054b6c2SJerome Brunet						function = "i2c_ao";
1252c054b6c2SJerome Brunet					};
1253c054b6c2SJerome Brunet				};
1254c054b6c2SJerome Brunet
1255c054b6c2SJerome Brunet				i2c_ao_sda_9_pins: i2c_ao_sda_9 {
1256c054b6c2SJerome Brunet					mux {
1257c054b6c2SJerome Brunet						groups = "i2c_ao_sda_9";
1258c054b6c2SJerome Brunet						function = "i2c_ao";
1259c054b6c2SJerome Brunet					};
1260c054b6c2SJerome Brunet				};
1261c054b6c2SJerome Brunet
1262c054b6c2SJerome Brunet				i2c_ao_sda_11_pins: i2c_ao_sda_11 {
1263c054b6c2SJerome Brunet					mux {
1264c054b6c2SJerome Brunet						groups = "i2c_ao_sda_11";
1265c054b6c2SJerome Brunet						function = "i2c_ao";
1266c054b6c2SJerome Brunet					};
1267c054b6c2SJerome Brunet				};
1268c054b6c2SJerome Brunet
12697bd46a79SYixun Lan				remote_input_ao_pins: remote_input_ao {
12707bd46a79SYixun Lan					mux {
12717bd46a79SYixun Lan						groups = "remote_input_ao";
12727bd46a79SYixun Lan						function = "remote_input_ao";
12737bd46a79SYixun Lan					};
12747bd46a79SYixun Lan				};
12754eae66a6SYixun Lan
12764eae66a6SYixun Lan				uart_ao_a_pins: uart_ao_a {
12774eae66a6SYixun Lan					mux {
12784eae66a6SYixun Lan						groups = "uart_ao_tx_a",
12794eae66a6SYixun Lan							"uart_ao_rx_a";
12804eae66a6SYixun Lan						function = "uart_ao_a";
12814eae66a6SYixun Lan					};
12824eae66a6SYixun Lan				};
12834eae66a6SYixun Lan
12844eae66a6SYixun Lan				uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts {
12854eae66a6SYixun Lan					mux {
12864eae66a6SYixun Lan						groups = "uart_ao_cts_a",
12874eae66a6SYixun Lan							"uart_ao_rts_a";
12884eae66a6SYixun Lan						function = "uart_ao_a";
12894eae66a6SYixun Lan					};
12904eae66a6SYixun Lan				};
12914eae66a6SYixun Lan
12924eae66a6SYixun Lan				uart_ao_b_pins: uart_ao_b {
12934eae66a6SYixun Lan					mux {
12944eae66a6SYixun Lan						groups = "uart_ao_tx_b",
12954eae66a6SYixun Lan							"uart_ao_rx_b";
12964eae66a6SYixun Lan						function = "uart_ao_b";
12974eae66a6SYixun Lan					};
12984eae66a6SYixun Lan				};
12994eae66a6SYixun Lan
13004eae66a6SYixun Lan				uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts {
13014eae66a6SYixun Lan					mux {
13024eae66a6SYixun Lan						groups = "uart_ao_cts_b",
13034eae66a6SYixun Lan							"uart_ao_rts_b";
13044eae66a6SYixun Lan						function = "uart_ao_b";
13054eae66a6SYixun Lan					};
13064eae66a6SYixun Lan				};
1307de05ded6SXingyu Chen			};
1308de05ded6SXingyu Chen
1309a04c18cbSJerome Brunet			sec_AO: ao-secure@140 {
1310a04c18cbSJerome Brunet				compatible = "amlogic,meson-gx-ao-secure", "syscon";
1311a04c18cbSJerome Brunet				reg = <0x0 0x140 0x0 0x140>;
1312a04c18cbSJerome Brunet				amlogic,has-chip-id;
1313a04c18cbSJerome Brunet			};
1314a04c18cbSJerome Brunet
13154a81e5ddSJian Hu			pwm_AO_ab: pwm@7000 {
13164a81e5ddSJian Hu				compatible = "amlogic,meson-axg-ao-pwm";
13174a81e5ddSJian Hu				reg = <0x0 0x07000 0x0 0x20>;
13184a81e5ddSJian Hu				#pwm-cells = <3>;
13194a81e5ddSJian Hu				status = "disabled";
13204a81e5ddSJian Hu			};
13214a81e5ddSJian Hu
13224a81e5ddSJian Hu			pwm_AO_cd: pwm@2000 {
1323b4ff05caSJerome Brunet				compatible = "amlogic,meson-axg-ao-pwm";
13244a81e5ddSJian Hu				reg = <0x0 0x02000  0x0 0x20>;
13254a81e5ddSJian Hu				#pwm-cells = <3>;
13264a81e5ddSJian Hu				status = "disabled";
13274a81e5ddSJian Hu			};
13284a81e5ddSJian Hu
1329dc6f858eSJian Hu			i2c_AO: i2c@5000 {
1330dc6f858eSJian Hu				compatible = "amlogic,meson-axg-i2c";
1331dc6f858eSJian Hu				reg = <0x0 0x05000 0x0 0x20>;
1332dc6f858eSJian Hu				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
133309eeaf44SJerome Brunet				clocks = <&clkc CLKID_AO_I2C>;
1334dc6f858eSJian Hu				#address-cells = <1>;
1335dc6f858eSJian Hu				#size-cells = <0>;
13362b6ff972SJerome Brunet				status = "disabled";
1337dc6f858eSJian Hu			};
1338dc6f858eSJian Hu
13399d59b708SYixun Lan			uart_AO: serial@3000 {
13409d59b708SYixun Lan				compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart";
13419d59b708SYixun Lan				reg = <0x0 0x3000 0x0 0x18>;
13429d59b708SYixun Lan				interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
13439adda353SYixun Lan				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART1>, <&xtal>;
13449d59b708SYixun Lan				clock-names = "xtal", "pclk", "baud";
13459d59b708SYixun Lan				status = "disabled";
13469d59b708SYixun Lan			};
13479d59b708SYixun Lan
13489d59b708SYixun Lan			uart_AO_B: serial@4000 {
13499d59b708SYixun Lan				compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart";
13509d59b708SYixun Lan				reg = <0x0 0x4000 0x0 0x18>;
13519d59b708SYixun Lan				interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
13529adda353SYixun Lan				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
13539d59b708SYixun Lan				clock-names = "xtal", "pclk", "baud";
13549d59b708SYixun Lan				status = "disabled";
13559d59b708SYixun Lan			};
13567bd46a79SYixun Lan
13577bd46a79SYixun Lan			ir: ir@8000 {
13587bd46a79SYixun Lan				compatible = "amlogic,meson-gxbb-ir";
13597bd46a79SYixun Lan				reg = <0x0 0x8000 0x0 0x20>;
13607bd46a79SYixun Lan				interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
13617bd46a79SYixun Lan				status = "disabled";
13627bd46a79SYixun Lan			};
1363a51b74eaSXingyu Chen
1364a51b74eaSXingyu Chen			saradc: adc@9000 {
1365a51b74eaSXingyu Chen				compatible = "amlogic,meson-axg-saradc",
1366a51b74eaSXingyu Chen					"amlogic,meson-saradc";
1367a51b74eaSXingyu Chen				reg = <0x0 0x9000 0x0 0x38>;
1368a51b74eaSXingyu Chen				#io-channel-cells = <1>;
1369a51b74eaSXingyu Chen				interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>;
1370a51b74eaSXingyu Chen				clocks = <&xtal>,
1371a51b74eaSXingyu Chen					<&clkc_AO CLKID_AO_SAR_ADC>,
1372a51b74eaSXingyu Chen					<&clkc_AO CLKID_AO_SAR_ADC_CLK>,
1373a51b74eaSXingyu Chen					<&clkc_AO CLKID_AO_SAR_ADC_SEL>;
1374a51b74eaSXingyu Chen				clock-names = "clkin", "core", "adc_clk", "adc_sel";
1375a51b74eaSXingyu Chen				status = "disabled";
1376a51b74eaSXingyu Chen			};
13779d59b708SYixun Lan		};
13789d59b708SYixun Lan	};
13799d59b708SYixun Lan};
1380