19c8c52f7SJianxin Pan// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
29c8c52f7SJianxin Pan/*
39c8c52f7SJianxin Pan * Copyright (c) 2018 Amlogic, Inc. All rights reserved.
49c8c52f7SJianxin Pan */
59c8c52f7SJianxin Pan
69baf7d6bSNeil Armstrong#include <dt-bindings/phy/phy.h>
79c8c52f7SJianxin Pan#include <dt-bindings/gpio/gpio.h>
85dc0f28fSJerome Brunet#include <dt-bindings/clock/axg-audio-clkc.h>
9965c827aSJerome Brunet#include <dt-bindings/clock/g12a-clkc.h>
10820873cfSNeil Armstrong#include <dt-bindings/clock/g12a-aoclkc.h>
119c8c52f7SJianxin Pan#include <dt-bindings/interrupt-controller/irq.h>
129c8c52f7SJianxin Pan#include <dt-bindings/interrupt-controller/arm-gic.h>
13c59b7fe5SJerome Brunet#include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
149baf7d6bSNeil Armstrong#include <dt-bindings/reset/amlogic,meson-g12a-reset.h>
159c8c52f7SJianxin Pan
169c8c52f7SJianxin Pan/ {
179c8c52f7SJianxin Pan	compatible = "amlogic,g12a";
189c8c52f7SJianxin Pan
199c8c52f7SJianxin Pan	interrupt-parent = <&gic>;
209c8c52f7SJianxin Pan	#address-cells = <2>;
219c8c52f7SJianxin Pan	#size-cells = <2>;
229c8c52f7SJianxin Pan
231ff38c86SJerome Brunet	tdmif_a: audio-controller-0 {
241ff38c86SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
251ff38c86SJerome Brunet		#sound-dai-cells = <0>;
261ff38c86SJerome Brunet		sound-name-prefix = "TDM_A";
271ff38c86SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>,
281ff38c86SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_A_SCLK>,
291ff38c86SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_A_LRCLK>;
301ff38c86SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
311ff38c86SJerome Brunet		status = "disabled";
321ff38c86SJerome Brunet	};
331ff38c86SJerome Brunet
341ff38c86SJerome Brunet	tdmif_b: audio-controller-1 {
351ff38c86SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
361ff38c86SJerome Brunet		#sound-dai-cells = <0>;
371ff38c86SJerome Brunet		sound-name-prefix = "TDM_B";
381ff38c86SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_B_MCLK>,
391ff38c86SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_B_SCLK>,
401ff38c86SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_B_LRCLK>;
411ff38c86SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
421ff38c86SJerome Brunet		status = "disabled";
431ff38c86SJerome Brunet	};
441ff38c86SJerome Brunet
451ff38c86SJerome Brunet	tdmif_c: audio-controller-2 {
461ff38c86SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
471ff38c86SJerome Brunet		#sound-dai-cells = <0>;
481ff38c86SJerome Brunet		sound-name-prefix = "TDM_C";
491ff38c86SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_C_MCLK>,
501ff38c86SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_C_SCLK>,
511ff38c86SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_C_LRCLK>;
521ff38c86SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
531ff38c86SJerome Brunet		status = "disabled";
541ff38c86SJerome Brunet	};
551ff38c86SJerome Brunet
569c8c52f7SJianxin Pan	cpus {
579c8c52f7SJianxin Pan		#address-cells = <0x2>;
589c8c52f7SJianxin Pan		#size-cells = <0x0>;
599c8c52f7SJianxin Pan
609c8c52f7SJianxin Pan		cpu0: cpu@0 {
619c8c52f7SJianxin Pan			device_type = "cpu";
6231af04cdSRob Herring			compatible = "arm,cortex-a53";
639c8c52f7SJianxin Pan			reg = <0x0 0x0>;
649c8c52f7SJianxin Pan			enable-method = "psci";
659c8c52f7SJianxin Pan			next-level-cache = <&l2>;
669c8c52f7SJianxin Pan		};
679c8c52f7SJianxin Pan
689c8c52f7SJianxin Pan		cpu1: cpu@1 {
699c8c52f7SJianxin Pan			device_type = "cpu";
7031af04cdSRob Herring			compatible = "arm,cortex-a53";
719c8c52f7SJianxin Pan			reg = <0x0 0x1>;
729c8c52f7SJianxin Pan			enable-method = "psci";
739c8c52f7SJianxin Pan			next-level-cache = <&l2>;
749c8c52f7SJianxin Pan		};
759c8c52f7SJianxin Pan
769c8c52f7SJianxin Pan		cpu2: cpu@2 {
779c8c52f7SJianxin Pan			device_type = "cpu";
7831af04cdSRob Herring			compatible = "arm,cortex-a53";
799c8c52f7SJianxin Pan			reg = <0x0 0x2>;
809c8c52f7SJianxin Pan			enable-method = "psci";
819c8c52f7SJianxin Pan			next-level-cache = <&l2>;
829c8c52f7SJianxin Pan		};
839c8c52f7SJianxin Pan
849c8c52f7SJianxin Pan		cpu3: cpu@3 {
859c8c52f7SJianxin Pan			device_type = "cpu";
8631af04cdSRob Herring			compatible = "arm,cortex-a53";
879c8c52f7SJianxin Pan			reg = <0x0 0x3>;
889c8c52f7SJianxin Pan			enable-method = "psci";
899c8c52f7SJianxin Pan			next-level-cache = <&l2>;
909c8c52f7SJianxin Pan		};
919c8c52f7SJianxin Pan
929c8c52f7SJianxin Pan		l2: l2-cache0 {
939c8c52f7SJianxin Pan			compatible = "cache";
949c8c52f7SJianxin Pan		};
959c8c52f7SJianxin Pan	};
969c8c52f7SJianxin Pan
97965c827aSJerome Brunet	efuse: efuse {
98965c827aSJerome Brunet		compatible = "amlogic,meson-gxbb-efuse";
99965c827aSJerome Brunet		clocks = <&clkc CLKID_EFUSE>;
100965c827aSJerome Brunet		#address-cells = <1>;
101965c827aSJerome Brunet		#size-cells = <1>;
102965c827aSJerome Brunet		read-only;
103965c827aSJerome Brunet	};
104965c827aSJerome Brunet
1059c8c52f7SJianxin Pan	psci {
1069c8c52f7SJianxin Pan		compatible = "arm,psci-1.0";
1079c8c52f7SJianxin Pan		method = "smc";
1089c8c52f7SJianxin Pan	};
1099c8c52f7SJianxin Pan
1109c8c52f7SJianxin Pan	reserved-memory {
1119c8c52f7SJianxin Pan		#address-cells = <2>;
1129c8c52f7SJianxin Pan		#size-cells = <2>;
1139c8c52f7SJianxin Pan		ranges;
1149c8c52f7SJianxin Pan
1159c8c52f7SJianxin Pan		/* 3 MiB reserved for ARM Trusted Firmware (BL31) */
1169c8c52f7SJianxin Pan		secmon_reserved: secmon@5000000 {
1179c8c52f7SJianxin Pan			reg = <0x0 0x05000000 0x0 0x300000>;
1189c8c52f7SJianxin Pan			no-map;
1199c8c52f7SJianxin Pan		};
120e2cffeb3SNeil Armstrong
121e2cffeb3SNeil Armstrong		linux,cma {
122e2cffeb3SNeil Armstrong			compatible = "shared-dma-pool";
123e2cffeb3SNeil Armstrong			reusable;
124e2cffeb3SNeil Armstrong			size = <0x0 0x10000000>;
125e2cffeb3SNeil Armstrong			alignment = <0x0 0x400000>;
126e2cffeb3SNeil Armstrong			linux,cma-default;
127e2cffeb3SNeil Armstrong		};
1289c8c52f7SJianxin Pan	};
1299c8c52f7SJianxin Pan
130bd395152SJerome Brunet	sm: secure-monitor {
131bd395152SJerome Brunet		compatible = "amlogic,meson-gxbb-sm";
132bd395152SJerome Brunet	};
133bd395152SJerome Brunet
1349c8c52f7SJianxin Pan	soc {
1359c8c52f7SJianxin Pan		compatible = "simple-bus";
1369c8c52f7SJianxin Pan		#address-cells = <2>;
1379c8c52f7SJianxin Pan		#size-cells = <2>;
1389c8c52f7SJianxin Pan		ranges;
1399c8c52f7SJianxin Pan
140a466a867SJerome Brunet		ethmac: ethernet@ff3f0000 {
141a466a867SJerome Brunet			compatible = "amlogic,meson-axg-dwmac",
142a466a867SJerome Brunet				     "snps,dwmac-3.70a",
143a466a867SJerome Brunet				     "snps,dwmac";
144a466a867SJerome Brunet			reg = <0x0 0xff3f0000 0x0 0x10000
145a466a867SJerome Brunet			       0x0 0xff634540 0x0 0x8>;
146a466a867SJerome Brunet			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
147a466a867SJerome Brunet			interrupt-names = "macirq";
148a466a867SJerome Brunet			clocks = <&clkc CLKID_ETH>,
149a466a867SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>,
150a466a867SJerome Brunet				 <&clkc CLKID_MPLL2>;
151a466a867SJerome Brunet			clock-names = "stmmaceth", "clkin0", "clkin1";
152a466a867SJerome Brunet			status = "disabled";
153a466a867SJerome Brunet
154a466a867SJerome Brunet			mdio0: mdio {
155a466a867SJerome Brunet				#address-cells = <1>;
156a466a867SJerome Brunet				#size-cells = <0>;
157a466a867SJerome Brunet				compatible = "snps,dwmac-mdio";
158a466a867SJerome Brunet			};
159a466a867SJerome Brunet		};
160a466a867SJerome Brunet
161503f5fedSJerome Brunet		apb: bus@ff600000 {
1629c8c52f7SJianxin Pan			compatible = "simple-bus";
163503f5fedSJerome Brunet			reg = <0x0 0xff600000 0x0 0x200000>;
1649c8c52f7SJianxin Pan			#address-cells = <2>;
1659c8c52f7SJianxin Pan			#size-cells = <2>;
166503f5fedSJerome Brunet			ranges = <0x0 0x0 0x0 0xff600000 0x0 0x200000>;
167503f5fedSJerome Brunet
168083feecdSNeil Armstrong			hdmi_tx: hdmi-tx@0 {
169083feecdSNeil Armstrong				compatible = "amlogic,meson-g12a-dw-hdmi";
170083feecdSNeil Armstrong				reg = <0x0 0x0 0x0 0x10000>;
171083feecdSNeil Armstrong				interrupts = <GIC_SPI 57 IRQ_TYPE_EDGE_RISING>;
172083feecdSNeil Armstrong				resets = <&reset RESET_HDMITX_CAPB3>,
173083feecdSNeil Armstrong					 <&reset RESET_HDMITX_PHY>,
174083feecdSNeil Armstrong					 <&reset RESET_HDMITX>;
175083feecdSNeil Armstrong				reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy";
176083feecdSNeil Armstrong				clocks = <&clkc CLKID_HDMI>,
177083feecdSNeil Armstrong					 <&clkc CLKID_HTX_PCLK>,
178083feecdSNeil Armstrong					 <&clkc CLKID_VPU_INTR>;
179083feecdSNeil Armstrong				clock-names = "isfr", "iahb", "venci";
180083feecdSNeil Armstrong				#address-cells = <1>;
181083feecdSNeil Armstrong				#size-cells = <0>;
182b894a8f1SJerome Brunet				#sound-dai-cells = <0>;
183083feecdSNeil Armstrong				status = "disabled";
184083feecdSNeil Armstrong
185083feecdSNeil Armstrong				/* VPU VENC Input */
186083feecdSNeil Armstrong				hdmi_tx_venc_port: port@0 {
187083feecdSNeil Armstrong					reg = <0>;
188083feecdSNeil Armstrong
189083feecdSNeil Armstrong					hdmi_tx_in: endpoint {
190083feecdSNeil Armstrong						remote-endpoint = <&hdmi_tx_out>;
191083feecdSNeil Armstrong					};
192083feecdSNeil Armstrong				};
193083feecdSNeil Armstrong
194083feecdSNeil Armstrong				/* TMDS Output */
195083feecdSNeil Armstrong				hdmi_tx_tmds_port: port@1 {
196083feecdSNeil Armstrong					reg = <1>;
197083feecdSNeil Armstrong				};
198083feecdSNeil Armstrong			};
199083feecdSNeil Armstrong
2001b2f377bSNeil Armstrong			apb_efuse: bus@30000 {
2011b2f377bSNeil Armstrong				compatible = "simple-bus";
2021b2f377bSNeil Armstrong				reg = <0x0 0x30000 0x0 0x2000>;
2031b2f377bSNeil Armstrong				#address-cells = <2>;
2041b2f377bSNeil Armstrong				#size-cells = <2>;
2051b2f377bSNeil Armstrong				ranges = <0x0 0x0 0x0 0x30000 0x0 0x2000>;
2061b2f377bSNeil Armstrong
2071b2f377bSNeil Armstrong				hwrng: rng@218 {
2081b2f377bSNeil Armstrong					compatible = "amlogic,meson-rng";
2091b2f377bSNeil Armstrong					reg = <0x0 0x218 0x0 0x4>;
2101b2f377bSNeil Armstrong				};
2111b2f377bSNeil Armstrong			};
2121b2f377bSNeil Armstrong
213503f5fedSJerome Brunet			periphs: bus@34400 {
214503f5fedSJerome Brunet				compatible = "simple-bus";
215503f5fedSJerome Brunet				reg = <0x0 0x34400 0x0 0x400>;
216503f5fedSJerome Brunet				#address-cells = <2>;
217503f5fedSJerome Brunet				#size-cells = <2>;
218503f5fedSJerome Brunet				ranges = <0x0 0x0 0x0 0x34400 0x0 0x400>;
21911a7bea1SJerome Brunet
22011a7bea1SJerome Brunet				periphs_pinctrl: pinctrl@40 {
22111a7bea1SJerome Brunet					compatible = "amlogic,meson-g12a-periphs-pinctrl";
22211a7bea1SJerome Brunet					#address-cells = <2>;
22311a7bea1SJerome Brunet					#size-cells = <2>;
22411a7bea1SJerome Brunet					ranges;
22511a7bea1SJerome Brunet
22611a7bea1SJerome Brunet					gpio: bank@40 {
22711a7bea1SJerome Brunet						reg = <0x0 0x40  0x0 0x4c>,
22811a7bea1SJerome Brunet						      <0x0 0xe8  0x0 0x18>,
22911a7bea1SJerome Brunet						      <0x0 0x120 0x0 0x18>,
23011a7bea1SJerome Brunet						      <0x0 0x2c0 0x0 0x40>,
23111a7bea1SJerome Brunet						      <0x0 0x340 0x0 0x1c>;
23211a7bea1SJerome Brunet						reg-names = "gpio",
23311a7bea1SJerome Brunet							    "pull",
23411a7bea1SJerome Brunet							    "pull-enable",
23511a7bea1SJerome Brunet							    "mux",
23611a7bea1SJerome Brunet							    "ds";
23711a7bea1SJerome Brunet						gpio-controller;
23811a7bea1SJerome Brunet						#gpio-cells = <2>;
23911a7bea1SJerome Brunet						gpio-ranges = <&periphs_pinctrl 0 0 86>;
24011a7bea1SJerome Brunet					};
241ff4f8b6cSNeil Armstrong
24291516e54SNeil Armstrong					cec_ao_a_h_pins: cec_ao_a_h {
24391516e54SNeil Armstrong						mux {
24491516e54SNeil Armstrong							groups = "cec_ao_a_h";
24591516e54SNeil Armstrong							function = "cec_ao_a_h";
24691516e54SNeil Armstrong							bias-disable;
24791516e54SNeil Armstrong						};
24891516e54SNeil Armstrong					};
24991516e54SNeil Armstrong
25091516e54SNeil Armstrong					cec_ao_b_h_pins: cec_ao_b_h {
25191516e54SNeil Armstrong						mux {
25291516e54SNeil Armstrong							groups = "cec_ao_b_h";
25391516e54SNeil Armstrong							function = "cec_ao_b_h";
25491516e54SNeil Armstrong							bias-disable;
25591516e54SNeil Armstrong						};
25691516e54SNeil Armstrong					};
25791516e54SNeil Armstrong
2584759fd87SJerome Brunet					emmc_pins: emmc {
2594759fd87SJerome Brunet						mux-0 {
2604759fd87SJerome Brunet							groups = "emmc_nand_d0",
2614759fd87SJerome Brunet								 "emmc_nand_d1",
2624759fd87SJerome Brunet								 "emmc_nand_d2",
2634759fd87SJerome Brunet								 "emmc_nand_d3",
2644759fd87SJerome Brunet								 "emmc_nand_d4",
2654759fd87SJerome Brunet								 "emmc_nand_d5",
2664759fd87SJerome Brunet								 "emmc_nand_d6",
2674759fd87SJerome Brunet								 "emmc_nand_d7",
2684759fd87SJerome Brunet								 "emmc_cmd";
2694759fd87SJerome Brunet							function = "emmc";
2704759fd87SJerome Brunet							bias-pull-up;
2714759fd87SJerome Brunet							drive-strength-microamp = <4000>;
2724759fd87SJerome Brunet						};
2734759fd87SJerome Brunet
2744759fd87SJerome Brunet						mux-1 {
2754759fd87SJerome Brunet							groups = "emmc_clk";
2764759fd87SJerome Brunet							function = "emmc";
2774759fd87SJerome Brunet							bias-disable;
2784759fd87SJerome Brunet							drive-strength-microamp = <4000>;
2794759fd87SJerome Brunet						};
2804759fd87SJerome Brunet					};
2814759fd87SJerome Brunet
2824759fd87SJerome Brunet					emmc_ds_pins: emmc-ds {
2834759fd87SJerome Brunet						mux {
2844759fd87SJerome Brunet							groups = "emmc_nand_ds";
2854759fd87SJerome Brunet							function = "emmc";
2864759fd87SJerome Brunet							bias-pull-down;
2874759fd87SJerome Brunet							drive-strength-microamp = <4000>;
2884759fd87SJerome Brunet						};
2894759fd87SJerome Brunet					};
2904759fd87SJerome Brunet
2914759fd87SJerome Brunet					emmc_clk_gate_pins: emmc_clk_gate {
2924759fd87SJerome Brunet						mux {
2934759fd87SJerome Brunet							groups = "BOOT_8";
2944759fd87SJerome Brunet							function = "gpio_periphs";
2954759fd87SJerome Brunet							bias-pull-down;
2964759fd87SJerome Brunet							drive-strength-microamp = <4000>;
2974759fd87SJerome Brunet						};
2984759fd87SJerome Brunet					};
2994759fd87SJerome Brunet
300083feecdSNeil Armstrong					hdmitx_ddc_pins: hdmitx_ddc {
301083feecdSNeil Armstrong						mux {
302083feecdSNeil Armstrong							groups = "hdmitx_sda",
303083feecdSNeil Armstrong								 "hdmitx_sck";
304083feecdSNeil Armstrong							function = "hdmitx";
305083feecdSNeil Armstrong							bias-disable;
306d9b9640bSNeil Armstrong							drive-strength-microamp = <4000>;
307083feecdSNeil Armstrong						};
308083feecdSNeil Armstrong					};
309083feecdSNeil Armstrong
310083feecdSNeil Armstrong					hdmitx_hpd_pins: hdmitx_hpd {
311083feecdSNeil Armstrong						mux {
312083feecdSNeil Armstrong							groups = "hdmitx_hpd_in";
313083feecdSNeil Armstrong							function = "hdmitx";
314083feecdSNeil Armstrong							bias-disable;
315083feecdSNeil Armstrong						};
316083feecdSNeil Armstrong					};
317083feecdSNeil Armstrong
3189951aca6SGuillaume La Roque
3199951aca6SGuillaume La Roque					i2c0_sda_c_pins: i2c0-sda-c {
3209951aca6SGuillaume La Roque						mux {
3219951aca6SGuillaume La Roque							groups = "i2c0_sda_c";
3229951aca6SGuillaume La Roque							function = "i2c0";
3239951aca6SGuillaume La Roque							bias-disable;
3249951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3259951aca6SGuillaume La Roque
3269951aca6SGuillaume La Roque						};
3279951aca6SGuillaume La Roque					};
3289951aca6SGuillaume La Roque
3299951aca6SGuillaume La Roque					i2c0_sck_c_pins: i2c0-sck-c {
3309951aca6SGuillaume La Roque						mux {
3319951aca6SGuillaume La Roque							groups = "i2c0_sck_c";
3329951aca6SGuillaume La Roque							function = "i2c0";
3339951aca6SGuillaume La Roque							bias-disable;
3349951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3359951aca6SGuillaume La Roque						};
3369951aca6SGuillaume La Roque					};
3379951aca6SGuillaume La Roque
3389951aca6SGuillaume La Roque					i2c0_sda_z0_pins: i2c0-sda-z0 {
3399951aca6SGuillaume La Roque						mux {
3409951aca6SGuillaume La Roque							groups = "i2c0_sda_z0";
3419951aca6SGuillaume La Roque							function = "i2c0";
3429951aca6SGuillaume La Roque							bias-disable;
3439951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3449951aca6SGuillaume La Roque						};
3459951aca6SGuillaume La Roque					};
3469951aca6SGuillaume La Roque
3479951aca6SGuillaume La Roque					i2c0_sck_z1_pins: i2c0-sck-z1 {
3489951aca6SGuillaume La Roque						mux {
3499951aca6SGuillaume La Roque							groups = "i2c0_sck_z1";
3509951aca6SGuillaume La Roque							function = "i2c0";
3519951aca6SGuillaume La Roque							bias-disable;
3529951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3539951aca6SGuillaume La Roque						};
3549951aca6SGuillaume La Roque					};
3559951aca6SGuillaume La Roque
3569951aca6SGuillaume La Roque					i2c0_sda_z7_pins: i2c0-sda-z7 {
3579951aca6SGuillaume La Roque						mux {
3589951aca6SGuillaume La Roque							groups = "i2c0_sda_z7";
3599951aca6SGuillaume La Roque							function = "i2c0";
3609951aca6SGuillaume La Roque							bias-disable;
3619951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3629951aca6SGuillaume La Roque						};
3639951aca6SGuillaume La Roque					};
3649951aca6SGuillaume La Roque
3659951aca6SGuillaume La Roque					i2c0_sda_z8_pins: i2c0-sda-z8 {
3669951aca6SGuillaume La Roque						mux {
3679951aca6SGuillaume La Roque							groups = "i2c0_sda_z8";
3689951aca6SGuillaume La Roque							function = "i2c0";
3699951aca6SGuillaume La Roque							bias-disable;
3709951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3719951aca6SGuillaume La Roque						};
3729951aca6SGuillaume La Roque					};
3739951aca6SGuillaume La Roque
3749951aca6SGuillaume La Roque					i2c1_sda_x_pins: i2c1-sda-x {
3759951aca6SGuillaume La Roque						mux {
3769951aca6SGuillaume La Roque							groups = "i2c1_sda_x";
3779951aca6SGuillaume La Roque							function = "i2c1";
3789951aca6SGuillaume La Roque							bias-disable;
3799951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3809951aca6SGuillaume La Roque						};
3819951aca6SGuillaume La Roque					};
3829951aca6SGuillaume La Roque
3839951aca6SGuillaume La Roque					i2c1_sck_x_pins: i2c1-sck-x {
3849951aca6SGuillaume La Roque						mux {
3859951aca6SGuillaume La Roque							groups = "i2c1_sck_x";
3869951aca6SGuillaume La Roque							function = "i2c1";
3879951aca6SGuillaume La Roque							bias-disable;
3889951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3899951aca6SGuillaume La Roque						};
3909951aca6SGuillaume La Roque					};
3919951aca6SGuillaume La Roque
3929951aca6SGuillaume La Roque					i2c1_sda_h2_pins: i2c1-sda-h2 {
3939951aca6SGuillaume La Roque						mux {
3949951aca6SGuillaume La Roque							groups = "i2c1_sda_h2";
3959951aca6SGuillaume La Roque							function = "i2c1";
3969951aca6SGuillaume La Roque							bias-disable;
3979951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
3989951aca6SGuillaume La Roque						};
3999951aca6SGuillaume La Roque					};
4009951aca6SGuillaume La Roque
4019951aca6SGuillaume La Roque					i2c1_sck_h3_pins: i2c1-sck-h3 {
4029951aca6SGuillaume La Roque						mux {
4039951aca6SGuillaume La Roque							groups = "i2c1_sck_h3";
4049951aca6SGuillaume La Roque							function = "i2c1";
4059951aca6SGuillaume La Roque							bias-disable;
4069951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4079951aca6SGuillaume La Roque						};
4089951aca6SGuillaume La Roque					};
4099951aca6SGuillaume La Roque
4109951aca6SGuillaume La Roque					i2c1_sda_h6_pins: i2c1-sda-h6 {
4119951aca6SGuillaume La Roque						mux {
4129951aca6SGuillaume La Roque							groups = "i2c1_sda_h6";
4139951aca6SGuillaume La Roque							function = "i2c1";
4149951aca6SGuillaume La Roque							bias-disable;
4159951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4169951aca6SGuillaume La Roque						};
4179951aca6SGuillaume La Roque					};
4189951aca6SGuillaume La Roque
4199951aca6SGuillaume La Roque					i2c1_sck_h7_pins: i2c1-sck-h7 {
4209951aca6SGuillaume La Roque						mux {
4219951aca6SGuillaume La Roque							groups = "i2c1_sck_h7";
4229951aca6SGuillaume La Roque							function = "i2c1";
4239951aca6SGuillaume La Roque							bias-disable;
4249951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4259951aca6SGuillaume La Roque						};
4269951aca6SGuillaume La Roque					};
4279951aca6SGuillaume La Roque
4289951aca6SGuillaume La Roque					i2c2_sda_x_pins: i2c2-sda-x {
4299951aca6SGuillaume La Roque						mux {
4309951aca6SGuillaume La Roque							groups = "i2c2_sda_x";
4319951aca6SGuillaume La Roque							function = "i2c2";
4329951aca6SGuillaume La Roque							bias-disable;
4339951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4349951aca6SGuillaume La Roque						};
4359951aca6SGuillaume La Roque					};
4369951aca6SGuillaume La Roque
4379951aca6SGuillaume La Roque					i2c2_sck_x_pins: i2c2-sck-x {
4389951aca6SGuillaume La Roque						mux {
4399951aca6SGuillaume La Roque							groups = "i2c2_sck_x";
4409951aca6SGuillaume La Roque							function = "i2c2";
4419951aca6SGuillaume La Roque							bias-disable;
4429951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4439951aca6SGuillaume La Roque						};
4449951aca6SGuillaume La Roque					};
4459951aca6SGuillaume La Roque
4469951aca6SGuillaume La Roque					i2c2_sda_z_pins: i2c2-sda-z {
4479951aca6SGuillaume La Roque						mux {
4489951aca6SGuillaume La Roque							groups = "i2c2_sda_z";
4499951aca6SGuillaume La Roque							function = "i2c2";
4509951aca6SGuillaume La Roque							bias-disable;
4519951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4529951aca6SGuillaume La Roque						};
4539951aca6SGuillaume La Roque					};
4549951aca6SGuillaume La Roque
4559951aca6SGuillaume La Roque					i2c2_sck_z_pins: i2c2-sck-z {
4569951aca6SGuillaume La Roque						mux {
4579951aca6SGuillaume La Roque							groups = "i2c2_sck_z";
4589951aca6SGuillaume La Roque							function = "i2c2";
4599951aca6SGuillaume La Roque							bias-disable;
4609951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4619951aca6SGuillaume La Roque						};
4629951aca6SGuillaume La Roque					};
4639951aca6SGuillaume La Roque
4649951aca6SGuillaume La Roque					i2c3_sda_h_pins: i2c3-sda-h {
4659951aca6SGuillaume La Roque						mux {
4669951aca6SGuillaume La Roque							groups = "i2c3_sda_h";
4679951aca6SGuillaume La Roque							function = "i2c3";
4689951aca6SGuillaume La Roque							bias-disable;
4699951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4709951aca6SGuillaume La Roque						};
4719951aca6SGuillaume La Roque					};
4729951aca6SGuillaume La Roque
4739951aca6SGuillaume La Roque					i2c3_sck_h_pins: i2c3-sck-h {
4749951aca6SGuillaume La Roque						mux {
4759951aca6SGuillaume La Roque							groups = "i2c3_sck_h";
4769951aca6SGuillaume La Roque							function = "i2c3";
4779951aca6SGuillaume La Roque							bias-disable;
4789951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4799951aca6SGuillaume La Roque						};
4809951aca6SGuillaume La Roque					};
4819951aca6SGuillaume La Roque
4829951aca6SGuillaume La Roque					i2c3_sda_a_pins: i2c3-sda-a {
4839951aca6SGuillaume La Roque						mux {
4849951aca6SGuillaume La Roque							groups = "i2c3_sda_a";
4859951aca6SGuillaume La Roque							function = "i2c3";
4869951aca6SGuillaume La Roque							bias-disable;
4879951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4889951aca6SGuillaume La Roque						};
4899951aca6SGuillaume La Roque					};
4909951aca6SGuillaume La Roque
4919951aca6SGuillaume La Roque					i2c3_sck_a_pins: i2c3-sck-a {
4929951aca6SGuillaume La Roque						mux {
4939951aca6SGuillaume La Roque							groups = "i2c3_sck_a";
4949951aca6SGuillaume La Roque							function = "i2c3";
4959951aca6SGuillaume La Roque							bias-disable;
4969951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
4979951aca6SGuillaume La Roque						};
4989951aca6SGuillaume La Roque					};
4999951aca6SGuillaume La Roque
5001ff38c86SJerome Brunet					mclk0_a_pins: mclk0-a {
5011ff38c86SJerome Brunet						mux {
5021ff38c86SJerome Brunet							groups = "mclk0_a";
5031ff38c86SJerome Brunet							function = "mclk0";
5041ff38c86SJerome Brunet							bias-disable;
5051ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
5061ff38c86SJerome Brunet						};
5071ff38c86SJerome Brunet					};
5081ff38c86SJerome Brunet
5091ff38c86SJerome Brunet					mclk1_a_pins: mclk1-a {
5101ff38c86SJerome Brunet						mux {
5111ff38c86SJerome Brunet							groups = "mclk1_a";
5121ff38c86SJerome Brunet							function = "mclk1";
5131ff38c86SJerome Brunet							bias-disable;
5141ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
5151ff38c86SJerome Brunet						};
5161ff38c86SJerome Brunet					};
5171ff38c86SJerome Brunet
5181ff38c86SJerome Brunet					mclk1_x_pins: mclk1-x {
5191ff38c86SJerome Brunet						mux {
5201ff38c86SJerome Brunet							groups = "mclk1_x";
5211ff38c86SJerome Brunet							function = "mclk1";
5221ff38c86SJerome Brunet							bias-disable;
5231ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
5241ff38c86SJerome Brunet						};
5251ff38c86SJerome Brunet					};
5261ff38c86SJerome Brunet
5271ff38c86SJerome Brunet					mclk1_z_pins: mclk1-z {
5281ff38c86SJerome Brunet						mux {
5291ff38c86SJerome Brunet							groups = "mclk1_z";
5301ff38c86SJerome Brunet							function = "mclk1";
5311ff38c86SJerome Brunet							bias-disable;
5321ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
5331ff38c86SJerome Brunet						};
5341ff38c86SJerome Brunet					};
5351ff38c86SJerome Brunet
5369c5dc032SJerome Brunet					pdm_din0_a_pins: pdm-din0-a {
5379c5dc032SJerome Brunet						mux {
5389c5dc032SJerome Brunet							groups = "pdm_din0_a";
5399c5dc032SJerome Brunet							function = "pdm";
5409c5dc032SJerome Brunet							bias-disable;
5419c5dc032SJerome Brunet						};
5429c5dc032SJerome Brunet					};
5439c5dc032SJerome Brunet
5449c5dc032SJerome Brunet					pdm_din0_c_pins: pdm-din0-c {
5459c5dc032SJerome Brunet						mux {
5469c5dc032SJerome Brunet							groups = "pdm_din0_c";
5479c5dc032SJerome Brunet							function = "pdm";
5489c5dc032SJerome Brunet							bias-disable;
5499c5dc032SJerome Brunet						};
5509c5dc032SJerome Brunet					};
5519c5dc032SJerome Brunet
5529c5dc032SJerome Brunet					pdm_din0_x_pins: pdm-din0-x {
5539c5dc032SJerome Brunet						mux {
5549c5dc032SJerome Brunet							groups = "pdm_din0_x";
5559c5dc032SJerome Brunet							function = "pdm";
5569c5dc032SJerome Brunet							bias-disable;
5579c5dc032SJerome Brunet						};
5589c5dc032SJerome Brunet					};
5599c5dc032SJerome Brunet
5609c5dc032SJerome Brunet					pdm_din0_z_pins: pdm-din0-z {
5619c5dc032SJerome Brunet						mux {
5629c5dc032SJerome Brunet							groups = "pdm_din0_z";
5639c5dc032SJerome Brunet							function = "pdm";
5649c5dc032SJerome Brunet							bias-disable;
5659c5dc032SJerome Brunet						};
5669c5dc032SJerome Brunet					};
5679c5dc032SJerome Brunet
5689c5dc032SJerome Brunet					pdm_din1_a_pins: pdm-din1-a {
5699c5dc032SJerome Brunet						mux {
5709c5dc032SJerome Brunet							groups = "pdm_din1_a";
5719c5dc032SJerome Brunet							function = "pdm";
5729c5dc032SJerome Brunet							bias-disable;
5739c5dc032SJerome Brunet						};
5749c5dc032SJerome Brunet					};
5759c5dc032SJerome Brunet
5769c5dc032SJerome Brunet					pdm_din1_c_pins: pdm-din1-c {
5779c5dc032SJerome Brunet						mux {
5789c5dc032SJerome Brunet							groups = "pdm_din1_c";
5799c5dc032SJerome Brunet							function = "pdm";
5809c5dc032SJerome Brunet							bias-disable;
5819c5dc032SJerome Brunet						};
5829c5dc032SJerome Brunet					};
5839c5dc032SJerome Brunet
5849c5dc032SJerome Brunet					pdm_din1_x_pins: pdm-din1-x {
5859c5dc032SJerome Brunet						mux {
5869c5dc032SJerome Brunet							groups = "pdm_din1_x";
5879c5dc032SJerome Brunet							function = "pdm";
5889c5dc032SJerome Brunet							bias-disable;
5899c5dc032SJerome Brunet						};
5909c5dc032SJerome Brunet					};
5919c5dc032SJerome Brunet
5929c5dc032SJerome Brunet					pdm_din1_z_pins: pdm-din1-z {
5939c5dc032SJerome Brunet						mux {
5949c5dc032SJerome Brunet							groups = "pdm_din1_z";
5959c5dc032SJerome Brunet							function = "pdm";
5969c5dc032SJerome Brunet							bias-disable;
5979c5dc032SJerome Brunet						};
5989c5dc032SJerome Brunet					};
5999c5dc032SJerome Brunet
6009c5dc032SJerome Brunet					pdm_din2_a_pins: pdm-din2-a {
6019c5dc032SJerome Brunet						mux {
6029c5dc032SJerome Brunet							groups = "pdm_din2_a";
6039c5dc032SJerome Brunet							function = "pdm";
6049c5dc032SJerome Brunet							bias-disable;
6059c5dc032SJerome Brunet						};
6069c5dc032SJerome Brunet					};
6079c5dc032SJerome Brunet
6089c5dc032SJerome Brunet					pdm_din2_c_pins: pdm-din2-c {
6099c5dc032SJerome Brunet						mux {
6109c5dc032SJerome Brunet							groups = "pdm_din2_c";
6119c5dc032SJerome Brunet							function = "pdm";
6129c5dc032SJerome Brunet							bias-disable;
6139c5dc032SJerome Brunet						};
6149c5dc032SJerome Brunet					};
6159c5dc032SJerome Brunet
6169c5dc032SJerome Brunet					pdm_din2_x_pins: pdm-din2-x {
6179c5dc032SJerome Brunet						mux {
6189c5dc032SJerome Brunet							groups = "pdm_din2_x";
6199c5dc032SJerome Brunet							function = "pdm";
6209c5dc032SJerome Brunet							bias-disable;
6219c5dc032SJerome Brunet						};
6229c5dc032SJerome Brunet					};
6239c5dc032SJerome Brunet
6249c5dc032SJerome Brunet					pdm_din2_z_pins: pdm-din2-z {
6259c5dc032SJerome Brunet						mux {
6269c5dc032SJerome Brunet							groups = "pdm_din2_z";
6279c5dc032SJerome Brunet							function = "pdm";
6289c5dc032SJerome Brunet							bias-disable;
6299c5dc032SJerome Brunet						};
6309c5dc032SJerome Brunet					};
6319c5dc032SJerome Brunet
6329c5dc032SJerome Brunet					pdm_din3_a_pins: pdm-din3-a {
6339c5dc032SJerome Brunet						mux {
6349c5dc032SJerome Brunet							groups = "pdm_din3_a";
6359c5dc032SJerome Brunet							function = "pdm";
6369c5dc032SJerome Brunet							bias-disable;
6379c5dc032SJerome Brunet						};
6389c5dc032SJerome Brunet					};
6399c5dc032SJerome Brunet
6409c5dc032SJerome Brunet					pdm_din3_c_pins: pdm-din3-c {
6419c5dc032SJerome Brunet						mux {
6429c5dc032SJerome Brunet							groups = "pdm_din3_c";
6439c5dc032SJerome Brunet							function = "pdm";
6449c5dc032SJerome Brunet							bias-disable;
6459c5dc032SJerome Brunet						};
6469c5dc032SJerome Brunet					};
6479c5dc032SJerome Brunet
6489c5dc032SJerome Brunet					pdm_din3_x_pins: pdm-din3-x {
6499c5dc032SJerome Brunet						mux {
6509c5dc032SJerome Brunet							groups = "pdm_din3_x";
6519c5dc032SJerome Brunet							function = "pdm";
6529c5dc032SJerome Brunet							bias-disable;
6539c5dc032SJerome Brunet						};
6549c5dc032SJerome Brunet					};
6559c5dc032SJerome Brunet
6569c5dc032SJerome Brunet					pdm_din3_z_pins: pdm-din3-z {
6579c5dc032SJerome Brunet						mux {
6589c5dc032SJerome Brunet							groups = "pdm_din3_z";
6599c5dc032SJerome Brunet							function = "pdm";
6609c5dc032SJerome Brunet							bias-disable;
6619c5dc032SJerome Brunet						};
6629c5dc032SJerome Brunet					};
6639c5dc032SJerome Brunet
6649c5dc032SJerome Brunet					pdm_dclk_a_pins: pdm-dclk-a {
6659c5dc032SJerome Brunet						mux {
6669c5dc032SJerome Brunet							groups = "pdm_dclk_a";
6679c5dc032SJerome Brunet							function = "pdm";
6689c5dc032SJerome Brunet							bias-disable;
6699c5dc032SJerome Brunet							drive-strength-microamp = <500>;
6709c5dc032SJerome Brunet						};
6719c5dc032SJerome Brunet					};
6729c5dc032SJerome Brunet
6739c5dc032SJerome Brunet					pdm_dclk_c_pins: pdm-dclk-c {
6749c5dc032SJerome Brunet						mux {
6759c5dc032SJerome Brunet							groups = "pdm_dclk_c";
6769c5dc032SJerome Brunet							function = "pdm";
6779c5dc032SJerome Brunet							bias-disable;
6789c5dc032SJerome Brunet							drive-strength-microamp = <500>;
6799c5dc032SJerome Brunet						};
6809c5dc032SJerome Brunet					};
6819c5dc032SJerome Brunet
6829c5dc032SJerome Brunet					pdm_dclk_x_pins: pdm-dclk-x {
6839c5dc032SJerome Brunet						mux {
6849c5dc032SJerome Brunet							groups = "pdm_dclk_x";
6859c5dc032SJerome Brunet							function = "pdm";
6869c5dc032SJerome Brunet							bias-disable;
6879c5dc032SJerome Brunet							drive-strength-microamp = <500>;
6889c5dc032SJerome Brunet						};
6899c5dc032SJerome Brunet					};
6909c5dc032SJerome Brunet
6919c5dc032SJerome Brunet					pdm_dclk_z_pins: pdm-dclk-z {
6929c5dc032SJerome Brunet						mux {
6939c5dc032SJerome Brunet							groups = "pdm_dclk_z";
6949c5dc032SJerome Brunet							function = "pdm";
6959c5dc032SJerome Brunet							bias-disable;
6969c5dc032SJerome Brunet							drive-strength-microamp = <500>;
6979c5dc032SJerome Brunet						};
6989c5dc032SJerome Brunet					};
6999c5dc032SJerome Brunet
700bb23b125SNeil Armstrong					pwm_a_pins: pwm-a {
701bb23b125SNeil Armstrong						mux {
702bb23b125SNeil Armstrong							groups = "pwm_a";
703bb23b125SNeil Armstrong							function = "pwm_a";
704bb23b125SNeil Armstrong							bias-disable;
705bb23b125SNeil Armstrong						};
706bb23b125SNeil Armstrong					};
707bb23b125SNeil Armstrong
708bb23b125SNeil Armstrong					pwm_b_x7_pins: pwm-b-x7 {
709bb23b125SNeil Armstrong						mux {
710bb23b125SNeil Armstrong							groups = "pwm_b_x7";
711bb23b125SNeil Armstrong							function = "pwm_b";
712bb23b125SNeil Armstrong							bias-disable;
713bb23b125SNeil Armstrong						};
714bb23b125SNeil Armstrong					};
715bb23b125SNeil Armstrong
716bb23b125SNeil Armstrong					pwm_b_x19_pins: pwm-b-x19 {
717bb23b125SNeil Armstrong						mux {
718bb23b125SNeil Armstrong							groups = "pwm_b_x19";
719bb23b125SNeil Armstrong							function = "pwm_b";
720bb23b125SNeil Armstrong							bias-disable;
721bb23b125SNeil Armstrong						};
722bb23b125SNeil Armstrong					};
723bb23b125SNeil Armstrong
724bb23b125SNeil Armstrong					pwm_c_c_pins: pwm-c-c {
725bb23b125SNeil Armstrong						mux {
726bb23b125SNeil Armstrong							groups = "pwm_c_c";
727bb23b125SNeil Armstrong							function = "pwm_c";
728bb23b125SNeil Armstrong							bias-disable;
729bb23b125SNeil Armstrong						};
730bb23b125SNeil Armstrong					};
731bb23b125SNeil Armstrong
732bb23b125SNeil Armstrong					pwm_c_x5_pins: pwm-c-x5 {
733bb23b125SNeil Armstrong						mux {
734bb23b125SNeil Armstrong							groups = "pwm_c_x5";
735bb23b125SNeil Armstrong							function = "pwm_c";
736bb23b125SNeil Armstrong							bias-disable;
737bb23b125SNeil Armstrong						};
738bb23b125SNeil Armstrong					};
739bb23b125SNeil Armstrong
740bb23b125SNeil Armstrong					pwm_c_x8_pins: pwm-c-x8 {
741bb23b125SNeil Armstrong						mux {
742bb23b125SNeil Armstrong							groups = "pwm_c_x8";
743bb23b125SNeil Armstrong							function = "pwm_c";
744bb23b125SNeil Armstrong							bias-disable;
745bb23b125SNeil Armstrong						};
746bb23b125SNeil Armstrong					};
747bb23b125SNeil Armstrong
748bb23b125SNeil Armstrong					pwm_d_x3_pins: pwm-d-x3 {
749bb23b125SNeil Armstrong						mux {
750bb23b125SNeil Armstrong							groups = "pwm_d_x3";
751bb23b125SNeil Armstrong							function = "pwm_d";
752bb23b125SNeil Armstrong							bias-disable;
753bb23b125SNeil Armstrong						};
754bb23b125SNeil Armstrong					};
755bb23b125SNeil Armstrong
756bb23b125SNeil Armstrong					pwm_d_x6_pins: pwm-d-x6 {
757bb23b125SNeil Armstrong						mux {
758bb23b125SNeil Armstrong							groups = "pwm_d_x6";
759bb23b125SNeil Armstrong							function = "pwm_d";
760bb23b125SNeil Armstrong							bias-disable;
761bb23b125SNeil Armstrong						};
762bb23b125SNeil Armstrong					};
763bb23b125SNeil Armstrong
764bb23b125SNeil Armstrong					pwm_e_pins: pwm-e {
765bb23b125SNeil Armstrong						mux {
766bb23b125SNeil Armstrong							groups = "pwm_e";
767bb23b125SNeil Armstrong							function = "pwm_e";
768bb23b125SNeil Armstrong							bias-disable;
769bb23b125SNeil Armstrong						};
770bb23b125SNeil Armstrong					};
771bb23b125SNeil Armstrong
772bb23b125SNeil Armstrong					pwm_f_x_pins: pwm-f-x {
773bb23b125SNeil Armstrong						mux {
774bb23b125SNeil Armstrong							groups = "pwm_f_x";
775bb23b125SNeil Armstrong							function = "pwm_f";
776bb23b125SNeil Armstrong							bias-disable;
777bb23b125SNeil Armstrong						};
778bb23b125SNeil Armstrong					};
779bb23b125SNeil Armstrong
780bb23b125SNeil Armstrong					pwm_f_h_pins: pwm-f-h {
781bb23b125SNeil Armstrong						mux {
782bb23b125SNeil Armstrong							groups = "pwm_f_h";
783bb23b125SNeil Armstrong							function = "pwm_f";
784bb23b125SNeil Armstrong							bias-disable;
785bb23b125SNeil Armstrong						};
786bb23b125SNeil Armstrong					};
787bb23b125SNeil Armstrong
7884759fd87SJerome Brunet					sdcard_c_pins: sdcard_c {
7894759fd87SJerome Brunet						mux-0 {
7904759fd87SJerome Brunet							groups = "sdcard_d0_c",
7914759fd87SJerome Brunet								 "sdcard_d1_c",
7924759fd87SJerome Brunet								 "sdcard_d2_c",
7934759fd87SJerome Brunet								 "sdcard_d3_c",
7944759fd87SJerome Brunet								 "sdcard_cmd_c";
7954759fd87SJerome Brunet							function = "sdcard";
7964759fd87SJerome Brunet							bias-pull-up;
7974759fd87SJerome Brunet							drive-strength-microamp = <4000>;
7984759fd87SJerome Brunet						};
7994759fd87SJerome Brunet
8004759fd87SJerome Brunet						mux-1 {
8014759fd87SJerome Brunet							groups = "sdcard_clk_c";
8024759fd87SJerome Brunet							function = "sdcard";
8034759fd87SJerome Brunet							bias-disable;
8044759fd87SJerome Brunet							drive-strength-microamp = <4000>;
8054759fd87SJerome Brunet						};
8064759fd87SJerome Brunet					};
8074759fd87SJerome Brunet
8084759fd87SJerome Brunet					sdcard_clk_gate_c_pins: sdcard_clk_gate_c {
8094759fd87SJerome Brunet						mux {
8104759fd87SJerome Brunet							groups = "GPIOC_4";
8114759fd87SJerome Brunet							function = "gpio_periphs";
8124759fd87SJerome Brunet							bias-pull-down;
8134759fd87SJerome Brunet							drive-strength-microamp = <4000>;
8144759fd87SJerome Brunet						};
8154759fd87SJerome Brunet					};
8164759fd87SJerome Brunet
8174759fd87SJerome Brunet					sdcard_z_pins: sdcard_z {
8184759fd87SJerome Brunet						mux-0 {
8194759fd87SJerome Brunet							groups = "sdcard_d0_z",
8204759fd87SJerome Brunet								 "sdcard_d1_z",
8214759fd87SJerome Brunet								 "sdcard_d2_z",
8224759fd87SJerome Brunet								 "sdcard_d3_z",
8234759fd87SJerome Brunet								 "sdcard_cmd_z";
8244759fd87SJerome Brunet							function = "sdcard";
8254759fd87SJerome Brunet							bias-pull-up;
8264759fd87SJerome Brunet							drive-strength-microamp = <4000>;
8274759fd87SJerome Brunet						};
8284759fd87SJerome Brunet
8294759fd87SJerome Brunet						mux-1 {
8304759fd87SJerome Brunet							groups = "sdcard_clk_z";
8314759fd87SJerome Brunet							function = "sdcard";
8324759fd87SJerome Brunet							bias-disable;
8334759fd87SJerome Brunet							drive-strength-microamp = <4000>;
8344759fd87SJerome Brunet						};
8354759fd87SJerome Brunet					};
8364759fd87SJerome Brunet
8374759fd87SJerome Brunet					sdcard_clk_gate_z_pins: sdcard_clk_gate_z {
8384759fd87SJerome Brunet						mux {
8394759fd87SJerome Brunet							groups = "GPIOZ_6";
8404759fd87SJerome Brunet							function = "gpio_periphs";
8414759fd87SJerome Brunet							bias-pull-down;
8424759fd87SJerome Brunet							drive-strength-microamp = <4000>;
8434759fd87SJerome Brunet						};
8444759fd87SJerome Brunet					};
8454759fd87SJerome Brunet
8469a3f3714SJerome Brunet					sdio_pins: sdio {
8479a3f3714SJerome Brunet						mux {
8489a3f3714SJerome Brunet							groups = "sdio_d0",
8499a3f3714SJerome Brunet								 "sdio_d1",
8509a3f3714SJerome Brunet								 "sdio_d2",
8519a3f3714SJerome Brunet								 "sdio_d3",
8529a3f3714SJerome Brunet								 "sdio_clk",
8539a3f3714SJerome Brunet								 "sdio_cmd";
8549a3f3714SJerome Brunet							function = "sdio";
8559a3f3714SJerome Brunet							bias-disable;
8569a3f3714SJerome Brunet							drive-strength-microamp = <4000>;
8579a3f3714SJerome Brunet						};
8589a3f3714SJerome Brunet					};
8599a3f3714SJerome Brunet
8609a3f3714SJerome Brunet					sdio_clk_gate_pins: sdio_clk_gate {
8619a3f3714SJerome Brunet						mux {
8629a3f3714SJerome Brunet							groups = "GPIOX_4";
8639a3f3714SJerome Brunet							function = "gpio_periphs";
8649a3f3714SJerome Brunet							bias-pull-down;
8659a3f3714SJerome Brunet							drive-strength-microamp = <4000>;
8669a3f3714SJerome Brunet						};
8679a3f3714SJerome Brunet					};
8689a3f3714SJerome Brunet
869e3d3b132SJerome Brunet					spdif_in_a10_pins: spdif-in-a10 {
870e3d3b132SJerome Brunet						mux {
871e3d3b132SJerome Brunet							groups = "spdif_in_a10";
872e3d3b132SJerome Brunet							function = "spdif_in";
873e3d3b132SJerome Brunet							bias-disable;
874e3d3b132SJerome Brunet						};
875e3d3b132SJerome Brunet					};
876e3d3b132SJerome Brunet
877e3d3b132SJerome Brunet					spdif_in_a12_pins: spdif-in-a12 {
878e3d3b132SJerome Brunet						mux {
879e3d3b132SJerome Brunet							groups = "spdif_in_a12";
880e3d3b132SJerome Brunet							function = "spdif_in";
881e3d3b132SJerome Brunet							bias-disable;
882e3d3b132SJerome Brunet						};
883e3d3b132SJerome Brunet					};
884e3d3b132SJerome Brunet
885e3d3b132SJerome Brunet					spdif_in_h_pins: spdif-in-h {
886e3d3b132SJerome Brunet						mux {
887e3d3b132SJerome Brunet							groups = "spdif_in_h";
888e3d3b132SJerome Brunet							function = "spdif_in";
889e3d3b132SJerome Brunet							bias-disable;
890e3d3b132SJerome Brunet						};
891e3d3b132SJerome Brunet					};
892e3d3b132SJerome Brunet
893649675dbSJerome Brunet					spdif_out_h_pins: spdif-out-h {
894649675dbSJerome Brunet						mux {
895649675dbSJerome Brunet							groups = "spdif_out_h";
896649675dbSJerome Brunet							function = "spdif_out";
897649675dbSJerome Brunet							drive-strength-microamp = <500>;
898649675dbSJerome Brunet							bias-disable;
899649675dbSJerome Brunet						};
900649675dbSJerome Brunet					};
901649675dbSJerome Brunet
902649675dbSJerome Brunet					spdif_out_a11_pins: spdif-out-a11 {
903649675dbSJerome Brunet						mux {
904649675dbSJerome Brunet							groups = "spdif_out_a11";
905649675dbSJerome Brunet							function = "spdif_out";
906649675dbSJerome Brunet							drive-strength-microamp = <500>;
907649675dbSJerome Brunet							bias-disable;
908649675dbSJerome Brunet						};
909649675dbSJerome Brunet					};
910649675dbSJerome Brunet
911649675dbSJerome Brunet					spdif_out_a13_pins: spdif-out-a13 {
912649675dbSJerome Brunet						mux {
913649675dbSJerome Brunet							groups = "spdif_out_a13";
914649675dbSJerome Brunet							function = "spdif_out";
915649675dbSJerome Brunet							drive-strength-microamp = <500>;
916649675dbSJerome Brunet							bias-disable;
917649675dbSJerome Brunet						};
918649675dbSJerome Brunet					};
919649675dbSJerome Brunet
9201ff38c86SJerome Brunet					tdm_a_din0_pins: tdm-a-din0 {
9211ff38c86SJerome Brunet						mux {
9221ff38c86SJerome Brunet							groups = "tdm_a_din0";
9231ff38c86SJerome Brunet							function = "tdm_a";
9241ff38c86SJerome Brunet							bias-disable;
9251ff38c86SJerome Brunet						};
9261ff38c86SJerome Brunet					};
9271ff38c86SJerome Brunet
9281ff38c86SJerome Brunet
9291ff38c86SJerome Brunet					tdm_a_din1_pins: tdm-a-din1 {
9301ff38c86SJerome Brunet						mux {
9311ff38c86SJerome Brunet							groups = "tdm_a_din1";
9321ff38c86SJerome Brunet							function = "tdm_a";
9331ff38c86SJerome Brunet							bias-disable;
9341ff38c86SJerome Brunet						};
9351ff38c86SJerome Brunet					};
9361ff38c86SJerome Brunet
9371ff38c86SJerome Brunet					tdm_a_dout0_pins: tdm-a-dout0 {
9381ff38c86SJerome Brunet						mux {
9391ff38c86SJerome Brunet							groups = "tdm_a_dout0";
9401ff38c86SJerome Brunet							function = "tdm_a";
9411ff38c86SJerome Brunet							bias-disable;
9421ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9431ff38c86SJerome Brunet						};
9441ff38c86SJerome Brunet					};
9451ff38c86SJerome Brunet
9461ff38c86SJerome Brunet					tdm_a_dout1_pins: tdm-a-dout1 {
9471ff38c86SJerome Brunet						mux {
9481ff38c86SJerome Brunet							groups = "tdm_a_dout1";
9491ff38c86SJerome Brunet							function = "tdm_a";
9501ff38c86SJerome Brunet							bias-disable;
9511ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9521ff38c86SJerome Brunet						};
9531ff38c86SJerome Brunet					};
9541ff38c86SJerome Brunet
9551ff38c86SJerome Brunet					tdm_a_fs_pins: tdm-a-fs {
9561ff38c86SJerome Brunet						mux {
9571ff38c86SJerome Brunet							groups = "tdm_a_fs";
9581ff38c86SJerome Brunet							function = "tdm_a";
9591ff38c86SJerome Brunet							bias-disable;
9601ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9611ff38c86SJerome Brunet						};
9621ff38c86SJerome Brunet					};
9631ff38c86SJerome Brunet
9641ff38c86SJerome Brunet					tdm_a_sclk_pins: tdm-a-sclk {
9651ff38c86SJerome Brunet						mux {
9661ff38c86SJerome Brunet							groups = "tdm_a_sclk";
9671ff38c86SJerome Brunet							function = "tdm_a";
9681ff38c86SJerome Brunet							bias-disable;
9691ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9701ff38c86SJerome Brunet						};
9711ff38c86SJerome Brunet					};
9721ff38c86SJerome Brunet
9731ff38c86SJerome Brunet					tdm_a_slv_fs_pins: tdm-a-slv-fs {
9741ff38c86SJerome Brunet						mux {
9751ff38c86SJerome Brunet							groups = "tdm_a_slv_fs";
9761ff38c86SJerome Brunet							function = "tdm_a";
9771ff38c86SJerome Brunet							bias-disable;
9781ff38c86SJerome Brunet						};
9791ff38c86SJerome Brunet					};
9801ff38c86SJerome Brunet
9811ff38c86SJerome Brunet
9821ff38c86SJerome Brunet					tdm_a_slv_sclk_pins: tdm-a-slv-sclk {
9831ff38c86SJerome Brunet						mux {
9841ff38c86SJerome Brunet							groups = "tdm_a_slv_sclk";
9851ff38c86SJerome Brunet							function = "tdm_a";
9861ff38c86SJerome Brunet							bias-disable;
9871ff38c86SJerome Brunet						};
9881ff38c86SJerome Brunet					};
9891ff38c86SJerome Brunet
9901ff38c86SJerome Brunet					tdm_b_din0_pins: tdm-b-din0 {
9911ff38c86SJerome Brunet						mux {
9921ff38c86SJerome Brunet							groups = "tdm_b_din0";
9931ff38c86SJerome Brunet							function = "tdm_b";
9941ff38c86SJerome Brunet							bias-disable;
9951ff38c86SJerome Brunet						};
9961ff38c86SJerome Brunet					};
9971ff38c86SJerome Brunet
9981ff38c86SJerome Brunet					tdm_b_din1_pins: tdm-b-din1 {
9991ff38c86SJerome Brunet						mux {
10001ff38c86SJerome Brunet							groups = "tdm_b_din1";
10011ff38c86SJerome Brunet							function = "tdm_b";
10021ff38c86SJerome Brunet							bias-disable;
10031ff38c86SJerome Brunet						};
10041ff38c86SJerome Brunet					};
10051ff38c86SJerome Brunet
10061ff38c86SJerome Brunet					tdm_b_din2_pins: tdm-b-din2 {
10071ff38c86SJerome Brunet						mux {
10081ff38c86SJerome Brunet							groups = "tdm_b_din2";
10091ff38c86SJerome Brunet							function = "tdm_b";
10101ff38c86SJerome Brunet							bias-disable;
10111ff38c86SJerome Brunet						};
10121ff38c86SJerome Brunet					};
10131ff38c86SJerome Brunet
10141ff38c86SJerome Brunet					tdm_b_din3_a_pins: tdm-b-din3-a {
10151ff38c86SJerome Brunet						mux {
10161ff38c86SJerome Brunet							groups = "tdm_b_din3_a";
10171ff38c86SJerome Brunet							function = "tdm_b";
10181ff38c86SJerome Brunet							bias-disable;
10191ff38c86SJerome Brunet						};
10201ff38c86SJerome Brunet					};
10211ff38c86SJerome Brunet
10221ff38c86SJerome Brunet					tdm_b_din3_h_pins: tdm-b-din3-h {
10231ff38c86SJerome Brunet						mux {
10241ff38c86SJerome Brunet							groups = "tdm_b_din3_h";
10251ff38c86SJerome Brunet							function = "tdm_b";
10261ff38c86SJerome Brunet							bias-disable;
10271ff38c86SJerome Brunet						};
10281ff38c86SJerome Brunet					};
10291ff38c86SJerome Brunet
10301ff38c86SJerome Brunet					tdm_b_dout0_pins: tdm-b-dout0 {
10311ff38c86SJerome Brunet						mux {
10321ff38c86SJerome Brunet							groups = "tdm_b_dout0";
10331ff38c86SJerome Brunet							function = "tdm_b";
10341ff38c86SJerome Brunet							bias-disable;
10351ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10361ff38c86SJerome Brunet						};
10371ff38c86SJerome Brunet					};
10381ff38c86SJerome Brunet
10391ff38c86SJerome Brunet					tdm_b_dout1_pins: tdm-b-dout1 {
10401ff38c86SJerome Brunet						mux {
10411ff38c86SJerome Brunet							groups = "tdm_b_dout1";
10421ff38c86SJerome Brunet							function = "tdm_b";
10431ff38c86SJerome Brunet							bias-disable;
10441ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10451ff38c86SJerome Brunet						};
10461ff38c86SJerome Brunet					};
10471ff38c86SJerome Brunet
10481ff38c86SJerome Brunet					tdm_b_dout2_pins: tdm-b-dout2 {
10491ff38c86SJerome Brunet						mux {
10501ff38c86SJerome Brunet							groups = "tdm_b_dout2";
10511ff38c86SJerome Brunet							function = "tdm_b";
10521ff38c86SJerome Brunet							bias-disable;
10531ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10541ff38c86SJerome Brunet						};
10551ff38c86SJerome Brunet					};
10561ff38c86SJerome Brunet
10571ff38c86SJerome Brunet					tdm_b_dout3_a_pins: tdm-b-dout3-a {
10581ff38c86SJerome Brunet						mux {
10591ff38c86SJerome Brunet							groups = "tdm_b_dout3_a";
10601ff38c86SJerome Brunet							function = "tdm_b";
10611ff38c86SJerome Brunet							bias-disable;
10621ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10631ff38c86SJerome Brunet						};
10641ff38c86SJerome Brunet					};
10651ff38c86SJerome Brunet
10661ff38c86SJerome Brunet					tdm_b_dout3_h_pins: tdm-b-dout3-h {
10671ff38c86SJerome Brunet						mux {
10681ff38c86SJerome Brunet							groups = "tdm_b_dout3_h";
10691ff38c86SJerome Brunet							function = "tdm_b";
10701ff38c86SJerome Brunet							bias-disable;
10711ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10721ff38c86SJerome Brunet						};
10731ff38c86SJerome Brunet					};
10741ff38c86SJerome Brunet
10751ff38c86SJerome Brunet					tdm_b_fs_pins: tdm-b-fs {
10761ff38c86SJerome Brunet						mux {
10771ff38c86SJerome Brunet							groups = "tdm_b_fs";
10781ff38c86SJerome Brunet							function = "tdm_b";
10791ff38c86SJerome Brunet							bias-disable;
10801ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10811ff38c86SJerome Brunet						};
10821ff38c86SJerome Brunet					};
10831ff38c86SJerome Brunet
10841ff38c86SJerome Brunet					tdm_b_sclk_pins: tdm-b-sclk {
10851ff38c86SJerome Brunet						mux {
10861ff38c86SJerome Brunet							groups = "tdm_b_sclk";
10871ff38c86SJerome Brunet							function = "tdm_b";
10881ff38c86SJerome Brunet							bias-disable;
10891ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10901ff38c86SJerome Brunet						};
10911ff38c86SJerome Brunet					};
10921ff38c86SJerome Brunet
10931ff38c86SJerome Brunet					tdm_b_slv_fs_pins: tdm-b-slv-fs {
10941ff38c86SJerome Brunet						mux {
10951ff38c86SJerome Brunet							groups = "tdm_b_slv_fs";
10961ff38c86SJerome Brunet							function = "tdm_b";
10971ff38c86SJerome Brunet							bias-disable;
10981ff38c86SJerome Brunet						};
10991ff38c86SJerome Brunet					};
11001ff38c86SJerome Brunet
11011ff38c86SJerome Brunet					tdm_b_slv_sclk_pins: tdm-b-slv-sclk {
11021ff38c86SJerome Brunet						mux {
11031ff38c86SJerome Brunet							groups = "tdm_b_slv_sclk";
11041ff38c86SJerome Brunet							function = "tdm_b";
11051ff38c86SJerome Brunet							bias-disable;
11061ff38c86SJerome Brunet						};
11071ff38c86SJerome Brunet					};
11081ff38c86SJerome Brunet
11091ff38c86SJerome Brunet					tdm_c_din0_a_pins: tdm-c-din0-a {
11101ff38c86SJerome Brunet						mux {
11111ff38c86SJerome Brunet							groups = "tdm_c_din0_a";
11121ff38c86SJerome Brunet							function = "tdm_c";
11131ff38c86SJerome Brunet							bias-disable;
11141ff38c86SJerome Brunet						};
11151ff38c86SJerome Brunet					};
11161ff38c86SJerome Brunet
11171ff38c86SJerome Brunet					tdm_c_din0_z_pins: tdm-c-din0-z {
11181ff38c86SJerome Brunet						mux {
11191ff38c86SJerome Brunet							groups = "tdm_c_din0_z";
11201ff38c86SJerome Brunet							function = "tdm_c";
11211ff38c86SJerome Brunet							bias-disable;
11221ff38c86SJerome Brunet						};
11231ff38c86SJerome Brunet					};
11241ff38c86SJerome Brunet
11251ff38c86SJerome Brunet					tdm_c_din1_a_pins: tdm-c-din1-a {
11261ff38c86SJerome Brunet						mux {
11271ff38c86SJerome Brunet							groups = "tdm_c_din1_a";
11281ff38c86SJerome Brunet							function = "tdm_c";
11291ff38c86SJerome Brunet							bias-disable;
11301ff38c86SJerome Brunet						};
11311ff38c86SJerome Brunet					};
11321ff38c86SJerome Brunet
11331ff38c86SJerome Brunet					tdm_c_din1_z_pins: tdm-c-din1-z {
11341ff38c86SJerome Brunet						mux {
11351ff38c86SJerome Brunet							groups = "tdm_c_din1_z";
11361ff38c86SJerome Brunet							function = "tdm_c";
11371ff38c86SJerome Brunet							bias-disable;
11381ff38c86SJerome Brunet						};
11391ff38c86SJerome Brunet					};
11401ff38c86SJerome Brunet
11411ff38c86SJerome Brunet					tdm_c_din2_a_pins: tdm-c-din2-a {
11421ff38c86SJerome Brunet						mux {
11431ff38c86SJerome Brunet							groups = "tdm_c_din2_a";
11441ff38c86SJerome Brunet							function = "tdm_c";
11451ff38c86SJerome Brunet							bias-disable;
11461ff38c86SJerome Brunet						};
11471ff38c86SJerome Brunet					};
11481ff38c86SJerome Brunet
11493293252fSJerome Brunet					eth_leds_pins: eth-leds {
11503293252fSJerome Brunet						mux {
11513293252fSJerome Brunet							groups = "eth_link_led",
11523293252fSJerome Brunet								 "eth_act_led";
11533293252fSJerome Brunet							function = "eth";
11543293252fSJerome Brunet							bias-disable;
11553293252fSJerome Brunet						};
11563293252fSJerome Brunet					};
11573293252fSJerome Brunet
11583293252fSJerome Brunet					eth_pins: eth {
11593293252fSJerome Brunet						mux {
11603293252fSJerome Brunet							groups = "eth_mdio",
11613293252fSJerome Brunet								 "eth_mdc",
11623293252fSJerome Brunet								 "eth_rgmii_rx_clk",
11633293252fSJerome Brunet								 "eth_rx_dv",
11643293252fSJerome Brunet								 "eth_rxd0",
11653293252fSJerome Brunet								 "eth_rxd1",
11663293252fSJerome Brunet								 "eth_txen",
11673293252fSJerome Brunet								 "eth_txd0",
11683293252fSJerome Brunet								 "eth_txd1";
11693293252fSJerome Brunet							function = "eth";
117047b65cb8SNeil Armstrong							drive-strength-microamp = <4000>;
11713293252fSJerome Brunet							bias-disable;
11723293252fSJerome Brunet						};
11733293252fSJerome Brunet					};
11743293252fSJerome Brunet
11753293252fSJerome Brunet					eth_rgmii_pins: eth-rgmii {
11763293252fSJerome Brunet						mux {
11773293252fSJerome Brunet							groups = "eth_rxd2_rgmii",
11783293252fSJerome Brunet								 "eth_rxd3_rgmii",
11793293252fSJerome Brunet								 "eth_rgmii_tx_clk",
11803293252fSJerome Brunet								 "eth_txd2_rgmii",
11813293252fSJerome Brunet								 "eth_txd3_rgmii";
11823293252fSJerome Brunet							function = "eth";
118347b65cb8SNeil Armstrong							drive-strength-microamp = <4000>;
11843293252fSJerome Brunet							bias-disable;
11853293252fSJerome Brunet						};
11863293252fSJerome Brunet					};
11873293252fSJerome Brunet
11881ff38c86SJerome Brunet					tdm_c_din2_z_pins: tdm-c-din2-z {
11891ff38c86SJerome Brunet						mux {
11901ff38c86SJerome Brunet							groups = "tdm_c_din2_z";
11911ff38c86SJerome Brunet							function = "tdm_c";
11921ff38c86SJerome Brunet							bias-disable;
11931ff38c86SJerome Brunet						};
11941ff38c86SJerome Brunet					};
11951ff38c86SJerome Brunet
11961ff38c86SJerome Brunet					tdm_c_din3_a_pins: tdm-c-din3-a {
11971ff38c86SJerome Brunet						mux {
11981ff38c86SJerome Brunet							groups = "tdm_c_din3_a";
11991ff38c86SJerome Brunet							function = "tdm_c";
12001ff38c86SJerome Brunet							bias-disable;
12011ff38c86SJerome Brunet						};
12021ff38c86SJerome Brunet					};
12031ff38c86SJerome Brunet
12041ff38c86SJerome Brunet					tdm_c_din3_z_pins: tdm-c-din3-z {
12051ff38c86SJerome Brunet						mux {
12061ff38c86SJerome Brunet							groups = "tdm_c_din3_z";
12071ff38c86SJerome Brunet							function = "tdm_c";
12081ff38c86SJerome Brunet							bias-disable;
12091ff38c86SJerome Brunet						};
12101ff38c86SJerome Brunet					};
12111ff38c86SJerome Brunet
12121ff38c86SJerome Brunet					tdm_c_dout0_a_pins: tdm-c-dout0-a {
12131ff38c86SJerome Brunet						mux {
12141ff38c86SJerome Brunet							groups = "tdm_c_dout0_a";
12151ff38c86SJerome Brunet							function = "tdm_c";
12161ff38c86SJerome Brunet							bias-disable;
12171ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12181ff38c86SJerome Brunet						};
12191ff38c86SJerome Brunet					};
12201ff38c86SJerome Brunet
12211ff38c86SJerome Brunet					tdm_c_dout0_z_pins: tdm-c-dout0-z {
12221ff38c86SJerome Brunet						mux {
12231ff38c86SJerome Brunet							groups = "tdm_c_dout0_z";
12241ff38c86SJerome Brunet							function = "tdm_c";
12251ff38c86SJerome Brunet							bias-disable;
12261ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12271ff38c86SJerome Brunet						};
12281ff38c86SJerome Brunet					};
12291ff38c86SJerome Brunet
12301ff38c86SJerome Brunet					tdm_c_dout1_a_pins: tdm-c-dout1-a {
12311ff38c86SJerome Brunet						mux {
12321ff38c86SJerome Brunet							groups = "tdm_c_dout1_a";
12331ff38c86SJerome Brunet							function = "tdm_c";
12341ff38c86SJerome Brunet							bias-disable;
12351ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12361ff38c86SJerome Brunet						};
12371ff38c86SJerome Brunet					};
12381ff38c86SJerome Brunet
12391ff38c86SJerome Brunet					tdm_c_dout1_z_pins: tdm-c-dout1-z {
12401ff38c86SJerome Brunet						mux {
12411ff38c86SJerome Brunet							groups = "tdm_c_dout1_z";
12421ff38c86SJerome Brunet							function = "tdm_c";
12431ff38c86SJerome Brunet							bias-disable;
12441ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12451ff38c86SJerome Brunet						};
12461ff38c86SJerome Brunet					};
12471ff38c86SJerome Brunet
12481ff38c86SJerome Brunet					tdm_c_dout2_a_pins: tdm-c-dout2-a {
12491ff38c86SJerome Brunet						mux {
12501ff38c86SJerome Brunet							groups = "tdm_c_dout2_a";
12511ff38c86SJerome Brunet							function = "tdm_c";
12521ff38c86SJerome Brunet							bias-disable;
12531ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12541ff38c86SJerome Brunet						};
12551ff38c86SJerome Brunet					};
12561ff38c86SJerome Brunet
12571ff38c86SJerome Brunet					tdm_c_dout2_z_pins: tdm-c-dout2-z {
12581ff38c86SJerome Brunet						mux {
12591ff38c86SJerome Brunet							groups = "tdm_c_dout2_z";
12601ff38c86SJerome Brunet							function = "tdm_c";
12611ff38c86SJerome Brunet							bias-disable;
12621ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12631ff38c86SJerome Brunet						};
12641ff38c86SJerome Brunet					};
12651ff38c86SJerome Brunet
12661ff38c86SJerome Brunet					tdm_c_dout3_a_pins: tdm-c-dout3-a {
12671ff38c86SJerome Brunet						mux {
12681ff38c86SJerome Brunet							groups = "tdm_c_dout3_a";
12691ff38c86SJerome Brunet							function = "tdm_c";
12701ff38c86SJerome Brunet							bias-disable;
12711ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12721ff38c86SJerome Brunet						};
12731ff38c86SJerome Brunet					};
12741ff38c86SJerome Brunet
12751ff38c86SJerome Brunet					tdm_c_dout3_z_pins: tdm-c-dout3-z {
12761ff38c86SJerome Brunet						mux {
12771ff38c86SJerome Brunet							groups = "tdm_c_dout3_z";
12781ff38c86SJerome Brunet							function = "tdm_c";
12791ff38c86SJerome Brunet							bias-disable;
12801ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12811ff38c86SJerome Brunet						};
12821ff38c86SJerome Brunet					};
12831ff38c86SJerome Brunet
12841ff38c86SJerome Brunet					tdm_c_fs_a_pins: tdm-c-fs-a {
12851ff38c86SJerome Brunet						mux {
12861ff38c86SJerome Brunet							groups = "tdm_c_fs_a";
12871ff38c86SJerome Brunet							function = "tdm_c";
12881ff38c86SJerome Brunet							bias-disable;
12891ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12901ff38c86SJerome Brunet						};
12911ff38c86SJerome Brunet					};
12921ff38c86SJerome Brunet
12931ff38c86SJerome Brunet					tdm_c_fs_z_pins: tdm-c-fs-z {
12941ff38c86SJerome Brunet						mux {
12951ff38c86SJerome Brunet							groups = "tdm_c_fs_z";
12961ff38c86SJerome Brunet							function = "tdm_c";
12971ff38c86SJerome Brunet							bias-disable;
12981ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12991ff38c86SJerome Brunet						};
13001ff38c86SJerome Brunet					};
13011ff38c86SJerome Brunet
13021ff38c86SJerome Brunet					tdm_c_sclk_a_pins: tdm-c-sclk-a {
13031ff38c86SJerome Brunet						mux {
13041ff38c86SJerome Brunet							groups = "tdm_c_sclk_a";
13051ff38c86SJerome Brunet							function = "tdm_c";
13061ff38c86SJerome Brunet							bias-disable;
13071ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
13081ff38c86SJerome Brunet						};
13091ff38c86SJerome Brunet					};
13101ff38c86SJerome Brunet
13111ff38c86SJerome Brunet					tdm_c_sclk_z_pins: tdm-c-sclk-z {
13121ff38c86SJerome Brunet						mux {
13131ff38c86SJerome Brunet							groups = "tdm_c_sclk_z";
13141ff38c86SJerome Brunet							function = "tdm_c";
13151ff38c86SJerome Brunet							bias-disable;
13161ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
13171ff38c86SJerome Brunet						};
13181ff38c86SJerome Brunet					};
13191ff38c86SJerome Brunet
13201ff38c86SJerome Brunet					tdm_c_slv_fs_a_pins: tdm-c-slv-fs-a {
13211ff38c86SJerome Brunet						mux {
13221ff38c86SJerome Brunet							groups = "tdm_c_slv_fs_a";
13231ff38c86SJerome Brunet							function = "tdm_c";
13241ff38c86SJerome Brunet							bias-disable;
13251ff38c86SJerome Brunet						};
13261ff38c86SJerome Brunet					};
13271ff38c86SJerome Brunet
13281ff38c86SJerome Brunet					tdm_c_slv_fs_z_pins: tdm-c-slv-fs-z {
13291ff38c86SJerome Brunet						mux {
13301ff38c86SJerome Brunet							groups = "tdm_c_slv_fs_z";
13311ff38c86SJerome Brunet							function = "tdm_c";
13321ff38c86SJerome Brunet							bias-disable;
13331ff38c86SJerome Brunet						};
13341ff38c86SJerome Brunet					};
13351ff38c86SJerome Brunet
13361ff38c86SJerome Brunet					tdm_c_slv_sclk_a_pins: tdm-c-slv-sclk-a {
13371ff38c86SJerome Brunet						mux {
13381ff38c86SJerome Brunet							groups = "tdm_c_slv_sclk_a";
13391ff38c86SJerome Brunet							function = "tdm_c";
13401ff38c86SJerome Brunet							bias-disable;
13411ff38c86SJerome Brunet						};
13421ff38c86SJerome Brunet					};
13431ff38c86SJerome Brunet
13441ff38c86SJerome Brunet					tdm_c_slv_sclk_z_pins: tdm-c-slv-sclk-z {
13451ff38c86SJerome Brunet						mux {
13461ff38c86SJerome Brunet							groups = "tdm_c_slv_sclk_z";
13471ff38c86SJerome Brunet							function = "tdm_c";
13481ff38c86SJerome Brunet							bias-disable;
13491ff38c86SJerome Brunet						};
13501ff38c86SJerome Brunet					};
13511ff38c86SJerome Brunet
1352ff4f8b6cSNeil Armstrong					uart_a_pins: uart-a {
1353ff4f8b6cSNeil Armstrong						mux {
1354ff4f8b6cSNeil Armstrong							groups = "uart_a_tx",
1355ff4f8b6cSNeil Armstrong								 "uart_a_rx";
1356ff4f8b6cSNeil Armstrong							function = "uart_a";
1357ff4f8b6cSNeil Armstrong							bias-disable;
1358ff4f8b6cSNeil Armstrong						};
1359ff4f8b6cSNeil Armstrong					};
1360ff4f8b6cSNeil Armstrong
1361ff4f8b6cSNeil Armstrong					uart_a_cts_rts_pins: uart-a-cts-rts {
1362ff4f8b6cSNeil Armstrong						mux {
1363ff4f8b6cSNeil Armstrong							groups = "uart_a_cts",
1364ff4f8b6cSNeil Armstrong								 "uart_a_rts";
1365ff4f8b6cSNeil Armstrong							function = "uart_a";
1366ff4f8b6cSNeil Armstrong							bias-disable;
1367ff4f8b6cSNeil Armstrong						};
1368ff4f8b6cSNeil Armstrong					};
1369ff4f8b6cSNeil Armstrong
1370ff4f8b6cSNeil Armstrong					uart_b_pins: uart-b {
1371ff4f8b6cSNeil Armstrong						mux {
1372ff4f8b6cSNeil Armstrong							groups = "uart_b_tx",
1373ff4f8b6cSNeil Armstrong								 "uart_b_rx";
1374ff4f8b6cSNeil Armstrong							function = "uart_b";
1375ff4f8b6cSNeil Armstrong							bias-disable;
1376ff4f8b6cSNeil Armstrong						};
1377ff4f8b6cSNeil Armstrong					};
1378ff4f8b6cSNeil Armstrong
1379ff4f8b6cSNeil Armstrong					uart_c_pins: uart-c {
1380ff4f8b6cSNeil Armstrong						mux {
1381ff4f8b6cSNeil Armstrong							groups = "uart_c_tx",
1382ff4f8b6cSNeil Armstrong								 "uart_c_rx";
1383ff4f8b6cSNeil Armstrong							function = "uart_c";
1384ff4f8b6cSNeil Armstrong							bias-disable;
1385ff4f8b6cSNeil Armstrong						};
1386ff4f8b6cSNeil Armstrong					};
1387ff4f8b6cSNeil Armstrong
1388ff4f8b6cSNeil Armstrong					uart_c_cts_rts_pins: uart-c-cts-rts {
1389ff4f8b6cSNeil Armstrong						mux {
1390ff4f8b6cSNeil Armstrong							groups = "uart_c_cts",
1391ff4f8b6cSNeil Armstrong								 "uart_c_rts";
1392ff4f8b6cSNeil Armstrong							function = "uart_c";
1393ff4f8b6cSNeil Armstrong							bias-disable;
1394ff4f8b6cSNeil Armstrong						};
1395ff4f8b6cSNeil Armstrong					};
139611a7bea1SJerome Brunet				};
13979c8c52f7SJianxin Pan			};
13989c8c52f7SJianxin Pan
13999baf7d6bSNeil Armstrong			usb2_phy0: phy@36000 {
14009baf7d6bSNeil Armstrong				compatible = "amlogic,g12a-usb2-phy";
14019baf7d6bSNeil Armstrong				reg = <0x0 0x36000 0x0 0x2000>;
14029baf7d6bSNeil Armstrong				clocks = <&xtal>;
14039baf7d6bSNeil Armstrong				clock-names = "xtal";
14049baf7d6bSNeil Armstrong				resets = <&reset RESET_USB_PHY20>;
14059baf7d6bSNeil Armstrong				reset-names = "phy";
14069baf7d6bSNeil Armstrong				#phy-cells = <0>;
14079baf7d6bSNeil Armstrong			};
14089baf7d6bSNeil Armstrong
1409083feecdSNeil Armstrong			dmc: bus@38000 {
1410083feecdSNeil Armstrong				compatible = "simple-bus";
1411083feecdSNeil Armstrong				reg = <0x0 0x38000 0x0 0x400>;
1412083feecdSNeil Armstrong				#address-cells = <2>;
1413083feecdSNeil Armstrong				#size-cells = <2>;
1414083feecdSNeil Armstrong				ranges = <0x0 0x0 0x0 0x38000 0x0 0x400>;
1415083feecdSNeil Armstrong
1416083feecdSNeil Armstrong				canvas: video-lut@48 {
1417083feecdSNeil Armstrong					compatible = "amlogic,canvas";
1418083feecdSNeil Armstrong					reg = <0x0 0x48 0x0 0x14>;
1419083feecdSNeil Armstrong				};
1420083feecdSNeil Armstrong			};
1421083feecdSNeil Armstrong
14229baf7d6bSNeil Armstrong			usb2_phy1: phy@3a000 {
14239baf7d6bSNeil Armstrong				compatible = "amlogic,g12a-usb2-phy";
14249baf7d6bSNeil Armstrong				reg = <0x0 0x3a000 0x0 0x2000>;
14259baf7d6bSNeil Armstrong				clocks = <&xtal>;
14269baf7d6bSNeil Armstrong				clock-names = "xtal";
14279baf7d6bSNeil Armstrong				resets = <&reset RESET_USB_PHY21>;
14289baf7d6bSNeil Armstrong				reset-names = "phy";
14299baf7d6bSNeil Armstrong				#phy-cells = <0>;
14309baf7d6bSNeil Armstrong			};
14319baf7d6bSNeil Armstrong
1432503f5fedSJerome Brunet			hiu: bus@3c000 {
14339c8c52f7SJianxin Pan				compatible = "simple-bus";
1434503f5fedSJerome Brunet				reg = <0x0 0x3c000 0x0 0x1400>;
14359c8c52f7SJianxin Pan				#address-cells = <2>;
14369c8c52f7SJianxin Pan				#size-cells = <2>;
1437503f5fedSJerome Brunet				ranges = <0x0 0x0 0x0 0x3c000 0x0 0x1400>;
1438785fb434SJerome Brunet
1439785fb434SJerome Brunet				hhi: system-controller@0 {
1440785fb434SJerome Brunet					compatible = "amlogic,meson-gx-hhi-sysctrl",
1441785fb434SJerome Brunet						     "simple-mfd", "syscon";
1442785fb434SJerome Brunet					reg = <0 0 0 0x400>;
1443785fb434SJerome Brunet
1444785fb434SJerome Brunet					clkc: clock-controller {
1445785fb434SJerome Brunet						compatible = "amlogic,g12a-clkc";
1446785fb434SJerome Brunet						#clock-cells = <1>;
1447785fb434SJerome Brunet						clocks = <&xtal>;
1448785fb434SJerome Brunet						clock-names = "xtal";
1449785fb434SJerome Brunet					};
1450785fb434SJerome Brunet				};
1451503f5fedSJerome Brunet			};
14529baf7d6bSNeil Armstrong
14539c5dc032SJerome Brunet			pdm: audio-controller@40000 {
14549c5dc032SJerome Brunet				compatible = "amlogic,g12a-pdm",
14559c5dc032SJerome Brunet					     "amlogic,axg-pdm";
14569c5dc032SJerome Brunet				reg = <0x0 0x40000 0x0 0x34>;
14579c5dc032SJerome Brunet				#sound-dai-cells = <0>;
14589c5dc032SJerome Brunet				sound-name-prefix = "PDM";
14599c5dc032SJerome Brunet				clocks = <&clkc_audio AUD_CLKID_PDM>,
14609c5dc032SJerome Brunet					 <&clkc_audio AUD_CLKID_PDM_DCLK>,
14619c5dc032SJerome Brunet					 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
14629c5dc032SJerome Brunet				clock-names = "pclk", "dclk", "sysclk";
14639c5dc032SJerome Brunet				status = "disabled";
14649c5dc032SJerome Brunet			};
14659c5dc032SJerome Brunet
146603c3f08cSJerome Brunet			audio: bus@42000 {
146703c3f08cSJerome Brunet				compatible = "simple-bus";
146803c3f08cSJerome Brunet				reg = <0x0 0x42000 0x0 0x2000>;
146903c3f08cSJerome Brunet				#address-cells = <2>;
147003c3f08cSJerome Brunet				#size-cells = <2>;
147103c3f08cSJerome Brunet				ranges = <0x0 0x0 0x0 0x42000 0x0 0x2000>;
147203c3f08cSJerome Brunet
147303c3f08cSJerome Brunet				clkc_audio: clock-controller@0 {
147403c3f08cSJerome Brunet					status = "disabled";
147503c3f08cSJerome Brunet					compatible = "amlogic,g12a-audio-clkc";
147603c3f08cSJerome Brunet					reg = <0x0 0x0 0x0 0xb4>;
147703c3f08cSJerome Brunet					#clock-cells = <1>;
147803c3f08cSJerome Brunet
147903c3f08cSJerome Brunet					clocks = <&clkc CLKID_AUDIO>,
148003c3f08cSJerome Brunet						 <&clkc CLKID_MPLL0>,
148103c3f08cSJerome Brunet						 <&clkc CLKID_MPLL1>,
148203c3f08cSJerome Brunet						 <&clkc CLKID_MPLL2>,
148303c3f08cSJerome Brunet						 <&clkc CLKID_MPLL3>,
148403c3f08cSJerome Brunet						 <&clkc CLKID_HIFI_PLL>,
148503c3f08cSJerome Brunet						 <&clkc CLKID_FCLK_DIV3>,
148603c3f08cSJerome Brunet						 <&clkc CLKID_FCLK_DIV4>,
148703c3f08cSJerome Brunet						 <&clkc CLKID_GP0_PLL>;
148803c3f08cSJerome Brunet					clock-names = "pclk",
148903c3f08cSJerome Brunet						      "mst_in0",
149003c3f08cSJerome Brunet						      "mst_in1",
149103c3f08cSJerome Brunet						      "mst_in2",
149203c3f08cSJerome Brunet						      "mst_in3",
149303c3f08cSJerome Brunet						      "mst_in4",
149403c3f08cSJerome Brunet						      "mst_in5",
149503c3f08cSJerome Brunet						      "mst_in6",
149603c3f08cSJerome Brunet						      "mst_in7";
149703c3f08cSJerome Brunet
149803c3f08cSJerome Brunet					resets = <&reset RESET_AUDIO>;
149903c3f08cSJerome Brunet				};
15005dc0f28fSJerome Brunet
1501c59b7fe5SJerome Brunet				toddr_a: audio-controller@100 {
1502c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-toddr",
1503c59b7fe5SJerome Brunet						     "amlogic,axg-toddr";
1504c59b7fe5SJerome Brunet					reg = <0x0 0x100 0x0 0x1c>;
1505c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1506c59b7fe5SJerome Brunet					sound-name-prefix = "TODDR_A";
1507c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 148 IRQ_TYPE_EDGE_RISING>;
1508c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
1509c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_TODDR_A>;
1510c59b7fe5SJerome Brunet					status = "disabled";
1511c59b7fe5SJerome Brunet				};
1512c59b7fe5SJerome Brunet
1513c59b7fe5SJerome Brunet				toddr_b: audio-controller@140 {
1514c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-toddr",
1515c59b7fe5SJerome Brunet						     "amlogic,axg-toddr";
1516c59b7fe5SJerome Brunet					reg = <0x0 0x140 0x0 0x1c>;
1517c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1518c59b7fe5SJerome Brunet					sound-name-prefix = "TODDR_B";
1519c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 149 IRQ_TYPE_EDGE_RISING>;
1520c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
1521c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_TODDR_B>;
1522c59b7fe5SJerome Brunet					status = "disabled";
1523c59b7fe5SJerome Brunet				};
1524c59b7fe5SJerome Brunet
1525c59b7fe5SJerome Brunet				toddr_c: audio-controller@180 {
1526c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-toddr",
1527c59b7fe5SJerome Brunet						     "amlogic,axg-toddr";
1528c59b7fe5SJerome Brunet					reg = <0x0 0x180 0x0 0x1c>;
1529c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1530c59b7fe5SJerome Brunet					sound-name-prefix = "TODDR_C";
1531c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>;
1532c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
1533c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_TODDR_C>;
1534c59b7fe5SJerome Brunet					status = "disabled";
1535c59b7fe5SJerome Brunet				};
1536c59b7fe5SJerome Brunet
1537c59b7fe5SJerome Brunet				frddr_a: audio-controller@1c0 {
1538c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-frddr",
1539c59b7fe5SJerome Brunet						     "amlogic,axg-frddr";
1540c59b7fe5SJerome Brunet					reg = <0x0 0x1c0 0x0 0x1c>;
1541c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1542c59b7fe5SJerome Brunet					sound-name-prefix = "FRDDR_A";
1543c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>;
1544c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
1545c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_FRDDR_A>;
1546c59b7fe5SJerome Brunet					status = "disabled";
1547c59b7fe5SJerome Brunet				};
1548c59b7fe5SJerome Brunet
1549c59b7fe5SJerome Brunet				frddr_b: audio-controller@200 {
1550c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-frddr",
1551c59b7fe5SJerome Brunet						     "amlogic,axg-frddr";
1552c59b7fe5SJerome Brunet					reg = <0x0 0x200 0x0 0x1c>;
1553c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1554c59b7fe5SJerome Brunet					sound-name-prefix = "FRDDR_B";
1555c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 153 IRQ_TYPE_EDGE_RISING>;
1556c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
1557c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_FRDDR_B>;
1558c59b7fe5SJerome Brunet					status = "disabled";
1559c59b7fe5SJerome Brunet				};
1560c59b7fe5SJerome Brunet
1561c59b7fe5SJerome Brunet				frddr_c: audio-controller@240 {
1562c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-frddr",
1563c59b7fe5SJerome Brunet						     "amlogic,axg-frddr";
1564c59b7fe5SJerome Brunet					reg = <0x0 0x240 0x0 0x1c>;
1565c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1566c59b7fe5SJerome Brunet					sound-name-prefix = "FRDDR_C";
1567c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 154 IRQ_TYPE_EDGE_RISING>;
1568c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
1569c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_FRDDR_C>;
1570c59b7fe5SJerome Brunet					status = "disabled";
1571c59b7fe5SJerome Brunet				};
1572c59b7fe5SJerome Brunet
15735dc0f28fSJerome Brunet				arb: reset-controller@280 {
15745dc0f28fSJerome Brunet					status = "disabled";
15755dc0f28fSJerome Brunet					compatible = "amlogic,meson-axg-audio-arb";
15765dc0f28fSJerome Brunet					reg = <0x0 0x280 0x0 0x4>;
15775dc0f28fSJerome Brunet					#reset-cells = <1>;
15785dc0f28fSJerome Brunet					clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
15795dc0f28fSJerome Brunet				};
15801ff38c86SJerome Brunet
15811ff38c86SJerome Brunet				tdmin_a: audio-controller@300 {
15821ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
15831ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
15841ff38c86SJerome Brunet					reg = <0x0 0x300 0x0 0x40>;
15851ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_A";
15861ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_A>,
15871ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>,
15881ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>,
15891ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>,
15901ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>;
15911ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
15921ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
15931ff38c86SJerome Brunet					status = "disabled";
15941ff38c86SJerome Brunet				};
15951ff38c86SJerome Brunet
15961ff38c86SJerome Brunet				tdmin_b: audio-controller@340 {
15971ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
15981ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
15991ff38c86SJerome Brunet					reg = <0x0 0x340 0x0 0x40>;
16001ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_B";
16011ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_B>,
16021ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>,
16031ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>,
16041ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>,
16051ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>;
16061ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16071ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16081ff38c86SJerome Brunet					status = "disabled";
16091ff38c86SJerome Brunet				};
16101ff38c86SJerome Brunet
16111ff38c86SJerome Brunet				tdmin_c: audio-controller@380 {
16121ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
16131ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
16141ff38c86SJerome Brunet					reg = <0x0 0x380 0x0 0x40>;
16151ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_C";
16161ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_C>,
16171ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>,
16181ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>,
16191ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>,
16201ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>;
16211ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16221ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16231ff38c86SJerome Brunet					status = "disabled";
16241ff38c86SJerome Brunet				};
16251ff38c86SJerome Brunet
16261ff38c86SJerome Brunet				tdmin_lb: audio-controller@3c0 {
16271ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
16281ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
16291ff38c86SJerome Brunet					reg = <0x0 0x3c0 0x0 0x40>;
16301ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_LB";
16311ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>,
16321ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>,
16331ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>,
16341ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>,
16351ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>;
16361ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16371ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16381ff38c86SJerome Brunet					status = "disabled";
16391ff38c86SJerome Brunet				};
16401ff38c86SJerome Brunet
1641e3d3b132SJerome Brunet				spdifin: audio-controller@400 {
1642e3d3b132SJerome Brunet					compatible = "amlogic,g12a-spdifin",
1643e3d3b132SJerome Brunet						     "amlogic,axg-spdifin";
1644e3d3b132SJerome Brunet					reg = <0x0 0x400 0x0 0x30>;
1645e3d3b132SJerome Brunet					#sound-dai-cells = <0>;
1646e3d3b132SJerome Brunet					sound-name-prefix = "SPDIFIN";
1647e3d3b132SJerome Brunet					interrupts = <GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
1648e3d3b132SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_SPDIFIN>,
1649e3d3b132SJerome Brunet						 <&clkc_audio AUD_CLKID_SPDIFIN_CLK>;
1650e3d3b132SJerome Brunet					clock-names = "pclk", "refclk";
1651e3d3b132SJerome Brunet					status = "disabled";
1652e3d3b132SJerome Brunet				};
1653e3d3b132SJerome Brunet
1654649675dbSJerome Brunet				spdifout: audio-controller@480 {
1655649675dbSJerome Brunet					compatible = "amlogic,g12a-spdifout",
1656649675dbSJerome Brunet						     "amlogic,axg-spdifout";
1657649675dbSJerome Brunet					reg = <0x0 0x480 0x0 0x50>;
1658649675dbSJerome Brunet					#sound-dai-cells = <0>;
1659649675dbSJerome Brunet					sound-name-prefix = "SPDIFOUT";
1660649675dbSJerome Brunet					clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
1661649675dbSJerome Brunet						 <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
1662649675dbSJerome Brunet					clock-names = "pclk", "mclk";
1663649675dbSJerome Brunet					status = "disabled";
1664649675dbSJerome Brunet				};
1665649675dbSJerome Brunet
16661ff38c86SJerome Brunet				tdmout_a: audio-controller@500 {
16671ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmout";
16681ff38c86SJerome Brunet					reg = <0x0 0x500 0x0 0x40>;
16691ff38c86SJerome Brunet					sound-name-prefix = "TDMOUT_A";
16701ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
16711ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
16721ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
16731ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
16741ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
16751ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16761ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16771ff38c86SJerome Brunet					status = "disabled";
16781ff38c86SJerome Brunet				};
16791ff38c86SJerome Brunet
16801ff38c86SJerome Brunet				tdmout_b: audio-controller@540 {
16811ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmout";
16821ff38c86SJerome Brunet					reg = <0x0 0x540 0x0 0x40>;
16831ff38c86SJerome Brunet					sound-name-prefix = "TDMOUT_B";
16841ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>,
16851ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>,
16861ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>,
16871ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>,
16881ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>;
16891ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16901ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16911ff38c86SJerome Brunet					status = "disabled";
16921ff38c86SJerome Brunet				};
16931ff38c86SJerome Brunet
16941ff38c86SJerome Brunet				tdmout_c: audio-controller@580 {
16951ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmout";
16961ff38c86SJerome Brunet					reg = <0x0 0x580 0x0 0x40>;
16971ff38c86SJerome Brunet					sound-name-prefix = "TDMOUT_C";
16981ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>,
16991ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>,
17001ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>,
17011ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>,
17021ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>;
17031ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
17041ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
17051ff38c86SJerome Brunet					status = "disabled";
17061ff38c86SJerome Brunet				};
1707649675dbSJerome Brunet
1708649675dbSJerome Brunet				spdifout_b: audio-controller@680 {
1709649675dbSJerome Brunet					compatible = "amlogic,g12a-spdifout",
1710649675dbSJerome Brunet						     "amlogic,axg-spdifout";
1711649675dbSJerome Brunet					reg = <0x0 0x680 0x0 0x50>;
1712649675dbSJerome Brunet					#sound-dai-cells = <0>;
1713649675dbSJerome Brunet					sound-name-prefix = "SPDIFOUT_B";
1714649675dbSJerome Brunet					clocks = <&clkc_audio AUD_CLKID_SPDIFOUT_B>,
1715649675dbSJerome Brunet						 <&clkc_audio AUD_CLKID_SPDIFOUT_B_CLK>;
1716649675dbSJerome Brunet					clock-names = "pclk", "mclk";
1717649675dbSJerome Brunet					status = "disabled";
1718649675dbSJerome Brunet				};
1719d7556f49SJerome Brunet
1720d7556f49SJerome Brunet				tohdmitx: audio-controller@744 {
1721d7556f49SJerome Brunet					compatible = "amlogic,g12a-tohdmitx";
1722d7556f49SJerome Brunet					reg = <0x0 0x744 0x0 0x4>;
1723d7556f49SJerome Brunet					#sound-dai-cells = <1>;
1724d7556f49SJerome Brunet					sound-name-prefix = "TOHDMITX";
1725d7556f49SJerome Brunet					status = "disabled";
1726d7556f49SJerome Brunet				};
172703c3f08cSJerome Brunet			};
172803c3f08cSJerome Brunet
17299baf7d6bSNeil Armstrong			usb3_pcie_phy: phy@46000 {
17309baf7d6bSNeil Armstrong				compatible = "amlogic,g12a-usb3-pcie-phy";
17319baf7d6bSNeil Armstrong				reg = <0x0 0x46000 0x0 0x2000>;
17329baf7d6bSNeil Armstrong				clocks = <&clkc CLKID_PCIE_PLL>;
17339baf7d6bSNeil Armstrong				clock-names = "ref_clk";
17349baf7d6bSNeil Armstrong				resets = <&reset RESET_PCIE_PHY>;
17359baf7d6bSNeil Armstrong				reset-names = "phy";
17369baf7d6bSNeil Armstrong				assigned-clocks = <&clkc CLKID_PCIE_PLL>;
17379baf7d6bSNeil Armstrong				assigned-clock-rates = <100000000>;
17389baf7d6bSNeil Armstrong				#phy-cells = <1>;
17399baf7d6bSNeil Armstrong			};
1740280c17dfSJerome Brunet
1741280c17dfSJerome Brunet			eth_phy: mdio-multiplexer@4c000 {
1742280c17dfSJerome Brunet				compatible = "amlogic,g12a-mdio-mux";
1743280c17dfSJerome Brunet				reg = <0x0 0x4c000 0x0 0xa4>;
1744280c17dfSJerome Brunet				clocks = <&clkc CLKID_ETH_PHY>,
1745280c17dfSJerome Brunet					 <&xtal>,
1746280c17dfSJerome Brunet					 <&clkc CLKID_MPLL_50M>;
1747280c17dfSJerome Brunet				clock-names = "pclk", "clkin0", "clkin1";
1748280c17dfSJerome Brunet				mdio-parent-bus = <&mdio0>;
1749280c17dfSJerome Brunet				#address-cells = <1>;
1750280c17dfSJerome Brunet				#size-cells = <0>;
1751280c17dfSJerome Brunet
1752280c17dfSJerome Brunet				ext_mdio: mdio@0 {
1753280c17dfSJerome Brunet					reg = <0>;
1754280c17dfSJerome Brunet					#address-cells = <1>;
1755280c17dfSJerome Brunet					#size-cells = <0>;
1756280c17dfSJerome Brunet				};
1757280c17dfSJerome Brunet
1758280c17dfSJerome Brunet				int_mdio: mdio@1 {
1759280c17dfSJerome Brunet					reg = <1>;
1760280c17dfSJerome Brunet					#address-cells = <1>;
1761280c17dfSJerome Brunet					#size-cells = <0>;
1762280c17dfSJerome Brunet
1763280c17dfSJerome Brunet					internal_ephy: ethernet_phy@8 {
1764280c17dfSJerome Brunet						compatible = "ethernet-phy-id0180.3301",
1765280c17dfSJerome Brunet							     "ethernet-phy-ieee802.3-c22";
1766280c17dfSJerome Brunet						interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
1767280c17dfSJerome Brunet						reg = <8>;
1768280c17dfSJerome Brunet						max-speed = <100>;
1769280c17dfSJerome Brunet					};
1770280c17dfSJerome Brunet				};
1771280c17dfSJerome Brunet			};
17729c8c52f7SJianxin Pan		};
17739c8c52f7SJianxin Pan
17749c8c52f7SJianxin Pan		aobus: bus@ff800000 {
17759c8c52f7SJianxin Pan			compatible = "simple-bus";
17769c8c52f7SJianxin Pan			reg = <0x0 0xff800000 0x0 0x100000>;
17779c8c52f7SJianxin Pan			#address-cells = <2>;
17789c8c52f7SJianxin Pan			#size-cells = <2>;
17799c8c52f7SJianxin Pan			ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
17809c8c52f7SJianxin Pan
1781b019f4a4SNeil Armstrong			rti: sys-ctrl@0 {
1782b019f4a4SNeil Armstrong				compatible = "amlogic,meson-gx-ao-sysctrl",
1783b019f4a4SNeil Armstrong					     "simple-mfd", "syscon";
1784b019f4a4SNeil Armstrong				reg = <0x0 0x0 0x0 0x100>;
1785b019f4a4SNeil Armstrong				#address-cells = <2>;
1786b019f4a4SNeil Armstrong				#size-cells = <2>;
1787b019f4a4SNeil Armstrong				ranges = <0x0 0x0 0x0 0x0 0x0 0x100>;
1788b019f4a4SNeil Armstrong
1789b019f4a4SNeil Armstrong				clkc_AO: clock-controller {
1790b019f4a4SNeil Armstrong					compatible = "amlogic,meson-g12a-aoclkc";
1791b019f4a4SNeil Armstrong					#clock-cells = <1>;
1792b019f4a4SNeil Armstrong					#reset-cells = <1>;
1793b019f4a4SNeil Armstrong					clocks = <&xtal>, <&clkc CLKID_CLK81>;
1794b019f4a4SNeil Armstrong					clock-names = "xtal", "mpeg-clk";
1795b019f4a4SNeil Armstrong				};
179611a7bea1SJerome Brunet
1797083feecdSNeil Armstrong				pwrc_vpu: power-controller-vpu {
1798083feecdSNeil Armstrong					compatible = "amlogic,meson-g12a-pwrc-vpu";
1799083feecdSNeil Armstrong					#power-domain-cells = <0>;
1800083feecdSNeil Armstrong					amlogic,hhi-sysctrl = <&hhi>;
1801083feecdSNeil Armstrong					resets = <&reset RESET_VIU>,
1802083feecdSNeil Armstrong						 <&reset RESET_VENC>,
1803083feecdSNeil Armstrong						 <&reset RESET_VCBUS>,
1804083feecdSNeil Armstrong						 <&reset RESET_BT656>,
1805083feecdSNeil Armstrong						 <&reset RESET_RDMA>,
1806083feecdSNeil Armstrong						 <&reset RESET_VENCI>,
1807083feecdSNeil Armstrong						 <&reset RESET_VENCP>,
1808083feecdSNeil Armstrong						 <&reset RESET_VDAC>,
1809083feecdSNeil Armstrong						 <&reset RESET_VDI6>,
1810083feecdSNeil Armstrong						 <&reset RESET_VENCL>,
1811083feecdSNeil Armstrong						 <&reset RESET_VID_LOCK>;
1812083feecdSNeil Armstrong					clocks = <&clkc CLKID_VPU>,
1813083feecdSNeil Armstrong						 <&clkc CLKID_VAPB>;
1814083feecdSNeil Armstrong					clock-names = "vpu", "vapb";
1815083feecdSNeil Armstrong					/*
1816083feecdSNeil Armstrong					 * VPU clocking is provided by two identical clock paths
1817083feecdSNeil Armstrong					 * VPU_0 and VPU_1 muxed to a single clock by a glitch
1818083feecdSNeil Armstrong					 * free mux to safely change frequency while running.
1819083feecdSNeil Armstrong					 * Same for VAPB but with a final gate after the glitch free mux.
1820083feecdSNeil Armstrong					 */
1821083feecdSNeil Armstrong					assigned-clocks = <&clkc CLKID_VPU_0_SEL>,
1822083feecdSNeil Armstrong							  <&clkc CLKID_VPU_0>,
1823083feecdSNeil Armstrong							  <&clkc CLKID_VPU>, /* Glitch free mux */
1824083feecdSNeil Armstrong							  <&clkc CLKID_VAPB_0_SEL>,
1825083feecdSNeil Armstrong							  <&clkc CLKID_VAPB_0>,
1826083feecdSNeil Armstrong							  <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */
1827083feecdSNeil Armstrong					assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>,
1828083feecdSNeil Armstrong								 <0>, /* Do Nothing */
1829083feecdSNeil Armstrong								 <&clkc CLKID_VPU_0>,
1830083feecdSNeil Armstrong								 <&clkc CLKID_FCLK_DIV4>,
1831083feecdSNeil Armstrong								 <0>, /* Do Nothing */
1832083feecdSNeil Armstrong								 <&clkc CLKID_VAPB_0>;
1833083feecdSNeil Armstrong					assigned-clock-rates = <0>, /* Do Nothing */
1834083feecdSNeil Armstrong							       <666666666>,
1835083feecdSNeil Armstrong							       <0>, /* Do Nothing */
1836083feecdSNeil Armstrong							       <0>, /* Do Nothing */
1837083feecdSNeil Armstrong							       <250000000>,
1838083feecdSNeil Armstrong							       <0>; /* Do Nothing */
1839083feecdSNeil Armstrong				};
1840083feecdSNeil Armstrong
184111a7bea1SJerome Brunet				ao_pinctrl: pinctrl@14 {
184211a7bea1SJerome Brunet					compatible = "amlogic,meson-g12a-aobus-pinctrl";
184311a7bea1SJerome Brunet					#address-cells = <2>;
184411a7bea1SJerome Brunet					#size-cells = <2>;
184511a7bea1SJerome Brunet					ranges;
184611a7bea1SJerome Brunet
184711a7bea1SJerome Brunet					gpio_ao: bank@14 {
184811a7bea1SJerome Brunet						reg = <0x0 0x14 0x0 0x8>,
184911a7bea1SJerome Brunet						      <0x0 0x1c 0x0 0x8>,
185011a7bea1SJerome Brunet						      <0x0 0x24 0x0 0x14>;
185111a7bea1SJerome Brunet						reg-names = "mux",
185211a7bea1SJerome Brunet							    "ds",
185311a7bea1SJerome Brunet							    "gpio";
185411a7bea1SJerome Brunet						gpio-controller;
185511a7bea1SJerome Brunet						#gpio-cells = <2>;
185611a7bea1SJerome Brunet						gpio-ranges = <&ao_pinctrl 0 0 15>;
185711a7bea1SJerome Brunet					};
1858e92546c2SJerome Brunet
18599951aca6SGuillaume La Roque					i2c_ao_sck_pins: i2c_ao_sck_pins {
18609951aca6SGuillaume La Roque						mux {
18619951aca6SGuillaume La Roque							groups = "i2c_ao_sck";
18629951aca6SGuillaume La Roque							function = "i2c_ao";
18639951aca6SGuillaume La Roque							bias-disable;
18649951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18659951aca6SGuillaume La Roque						};
18669951aca6SGuillaume La Roque					};
18679951aca6SGuillaume La Roque
18689951aca6SGuillaume La Roque					i2c_ao_sda_pins: i2c_ao_sda {
18699951aca6SGuillaume La Roque						mux {
18709951aca6SGuillaume La Roque							groups = "i2c_ao_sda";
18719951aca6SGuillaume La Roque							function = "i2c_ao";
18729951aca6SGuillaume La Roque							bias-disable;
18739951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18749951aca6SGuillaume La Roque						};
18759951aca6SGuillaume La Roque					};
18769951aca6SGuillaume La Roque
18779951aca6SGuillaume La Roque					i2c_ao_sck_e_pins: i2c_ao_sck_e {
18789951aca6SGuillaume La Roque						mux {
18799951aca6SGuillaume La Roque							groups = "i2c_ao_sck_e";
18809951aca6SGuillaume La Roque							function = "i2c_ao";
18819951aca6SGuillaume La Roque							bias-disable;
18829951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18839951aca6SGuillaume La Roque						};
18849951aca6SGuillaume La Roque					};
18859951aca6SGuillaume La Roque
18869951aca6SGuillaume La Roque					i2c_ao_sda_e_pins: i2c_ao_sda_e {
18879951aca6SGuillaume La Roque						mux {
18889951aca6SGuillaume La Roque							groups = "i2c_ao_sda_e";
18899951aca6SGuillaume La Roque							function = "i2c_ao";
18909951aca6SGuillaume La Roque							bias-disable;
18919951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18929951aca6SGuillaume La Roque						};
18939951aca6SGuillaume La Roque					};
18949951aca6SGuillaume La Roque
18951ff38c86SJerome Brunet					mclk0_ao_pins: mclk0-ao {
18961ff38c86SJerome Brunet						mux {
18971ff38c86SJerome Brunet							groups = "mclk0_ao";
18981ff38c86SJerome Brunet							function = "mclk0_ao";
18991ff38c86SJerome Brunet							bias-disable;
19001ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19011ff38c86SJerome Brunet						};
19021ff38c86SJerome Brunet					};
19031ff38c86SJerome Brunet
19041ff38c86SJerome Brunet					tdm_ao_b_din0_pins: tdm-ao-b-din0 {
19051ff38c86SJerome Brunet						mux {
19061ff38c86SJerome Brunet							groups = "tdm_ao_b_din0";
19071ff38c86SJerome Brunet							function = "tdm_ao_b";
19081ff38c86SJerome Brunet							bias-disable;
19091ff38c86SJerome Brunet						};
19101ff38c86SJerome Brunet					};
19111ff38c86SJerome Brunet
1912649675dbSJerome Brunet					spdif_ao_out_pins: spdif-ao-out {
1913649675dbSJerome Brunet						mux {
1914649675dbSJerome Brunet							groups = "spdif_ao_out";
1915649675dbSJerome Brunet							function = "spdif_ao_out";
1916649675dbSJerome Brunet							drive-strength-microamp = <500>;
1917649675dbSJerome Brunet							bias-disable;
1918649675dbSJerome Brunet						};
1919649675dbSJerome Brunet					};
1920649675dbSJerome Brunet
19211ff38c86SJerome Brunet					tdm_ao_b_din1_pins: tdm-ao-b-din1 {
19221ff38c86SJerome Brunet						mux {
19231ff38c86SJerome Brunet							groups = "tdm_ao_b_din1";
19241ff38c86SJerome Brunet							function = "tdm_ao_b";
19251ff38c86SJerome Brunet							bias-disable;
19261ff38c86SJerome Brunet						};
19271ff38c86SJerome Brunet					};
19281ff38c86SJerome Brunet
19291ff38c86SJerome Brunet					tdm_ao_b_din2_pins: tdm-ao-b-din2 {
19301ff38c86SJerome Brunet						mux {
19311ff38c86SJerome Brunet							groups = "tdm_ao_b_din2";
19321ff38c86SJerome Brunet							function = "tdm_ao_b";
19331ff38c86SJerome Brunet							bias-disable;
19341ff38c86SJerome Brunet						};
19351ff38c86SJerome Brunet					};
19361ff38c86SJerome Brunet
19371ff38c86SJerome Brunet					tdm_ao_b_dout0_pins: tdm-ao-b-dout0 {
19381ff38c86SJerome Brunet						mux {
19391ff38c86SJerome Brunet							groups = "tdm_ao_b_dout0";
19401ff38c86SJerome Brunet							function = "tdm_ao_b";
19411ff38c86SJerome Brunet							bias-disable;
19421ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19431ff38c86SJerome Brunet						};
19441ff38c86SJerome Brunet					};
19451ff38c86SJerome Brunet
19461ff38c86SJerome Brunet					tdm_ao_b_dout1_pins: tdm-ao-b-dout1 {
19471ff38c86SJerome Brunet						mux {
19481ff38c86SJerome Brunet							groups = "tdm_ao_b_dout1";
19491ff38c86SJerome Brunet							function = "tdm_ao_b";
19501ff38c86SJerome Brunet							bias-disable;
19511ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19521ff38c86SJerome Brunet						};
19531ff38c86SJerome Brunet					};
19541ff38c86SJerome Brunet
19551ff38c86SJerome Brunet					tdm_ao_b_dout2_pins: tdm-ao-b-dout2 {
19561ff38c86SJerome Brunet						mux {
19571ff38c86SJerome Brunet							groups = "tdm_ao_b_dout2";
19581ff38c86SJerome Brunet							function = "tdm_ao_b";
19591ff38c86SJerome Brunet							bias-disable;
19601ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19611ff38c86SJerome Brunet						};
19621ff38c86SJerome Brunet					};
19631ff38c86SJerome Brunet
19641ff38c86SJerome Brunet					tdm_ao_b_fs_pins: tdm-ao-b-fs {
19651ff38c86SJerome Brunet						mux {
19661ff38c86SJerome Brunet							groups = "tdm_ao_b_fs";
19671ff38c86SJerome Brunet							function = "tdm_ao_b";
19681ff38c86SJerome Brunet							bias-disable;
19691ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19701ff38c86SJerome Brunet						};
19711ff38c86SJerome Brunet					};
19721ff38c86SJerome Brunet
19731ff38c86SJerome Brunet					tdm_ao_b_sclk_pins: tdm-ao-b-sclk {
19741ff38c86SJerome Brunet						mux {
19751ff38c86SJerome Brunet							groups = "tdm_ao_b_sclk";
19761ff38c86SJerome Brunet							function = "tdm_ao_b";
19771ff38c86SJerome Brunet							bias-disable;
19781ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19791ff38c86SJerome Brunet						};
19801ff38c86SJerome Brunet					};
19811ff38c86SJerome Brunet
19821ff38c86SJerome Brunet					tdm_ao_b_slv_fs_pins: tdm-ao-b-slv-fs {
19831ff38c86SJerome Brunet						mux {
19841ff38c86SJerome Brunet							groups = "tdm_ao_b_slv_fs";
19851ff38c86SJerome Brunet							function = "tdm_ao_b";
19861ff38c86SJerome Brunet							bias-disable;
19871ff38c86SJerome Brunet						};
19881ff38c86SJerome Brunet					};
19891ff38c86SJerome Brunet
19901ff38c86SJerome Brunet					tdm_ao_b_slv_sclk_pins: tdm-ao-b-slv-sclk {
19911ff38c86SJerome Brunet						mux {
19921ff38c86SJerome Brunet							groups = "tdm_ao_b_slv_sclk";
19931ff38c86SJerome Brunet							function = "tdm_ao_b";
19941ff38c86SJerome Brunet							bias-disable;
19951ff38c86SJerome Brunet						};
19961ff38c86SJerome Brunet					};
19971ff38c86SJerome Brunet
1998e92546c2SJerome Brunet					uart_ao_a_pins: uart-a-ao {
1999e92546c2SJerome Brunet						mux {
2000e92546c2SJerome Brunet							groups = "uart_ao_a_tx",
2001e92546c2SJerome Brunet								 "uart_ao_a_rx";
2002e92546c2SJerome Brunet							function = "uart_ao_a";
2003e92546c2SJerome Brunet							bias-disable;
2004e92546c2SJerome Brunet						};
2005e92546c2SJerome Brunet					};
2006e92546c2SJerome Brunet
2007e92546c2SJerome Brunet					uart_ao_a_cts_rts_pins: uart-ao-a-cts-rts {
2008e92546c2SJerome Brunet						mux {
2009e92546c2SJerome Brunet							groups = "uart_ao_a_cts",
2010e92546c2SJerome Brunet								 "uart_ao_a_rts";
2011e92546c2SJerome Brunet							function = "uart_ao_a";
2012e92546c2SJerome Brunet							bias-disable;
2013e92546c2SJerome Brunet						};
2014e92546c2SJerome Brunet					};
2015bb23b125SNeil Armstrong
2016bb23b125SNeil Armstrong					pwm_ao_a_pins: pwm-ao-a {
2017bb23b125SNeil Armstrong						mux {
2018bb23b125SNeil Armstrong							groups = "pwm_ao_a";
2019bb23b125SNeil Armstrong							function = "pwm_ao_a";
2020bb23b125SNeil Armstrong							bias-disable;
2021bb23b125SNeil Armstrong						};
2022bb23b125SNeil Armstrong					};
2023bb23b125SNeil Armstrong
2024bb23b125SNeil Armstrong					pwm_ao_b_pins: pwm-ao-b {
2025bb23b125SNeil Armstrong						mux {
2026bb23b125SNeil Armstrong							groups = "pwm_ao_b";
2027bb23b125SNeil Armstrong							function = "pwm_ao_b";
2028bb23b125SNeil Armstrong							bias-disable;
2029bb23b125SNeil Armstrong						};
2030bb23b125SNeil Armstrong					};
2031bb23b125SNeil Armstrong
2032bb23b125SNeil Armstrong					pwm_ao_c_4_pins: pwm-ao-c-4 {
2033bb23b125SNeil Armstrong						mux {
2034bb23b125SNeil Armstrong							groups = "pwm_ao_c_4";
2035bb23b125SNeil Armstrong							function = "pwm_ao_c";
2036bb23b125SNeil Armstrong							bias-disable;
2037bb23b125SNeil Armstrong						};
2038bb23b125SNeil Armstrong					};
2039bb23b125SNeil Armstrong
2040bb23b125SNeil Armstrong					pwm_ao_c_6_pins: pwm-ao-c-6 {
2041bb23b125SNeil Armstrong						mux {
2042bb23b125SNeil Armstrong							groups = "pwm_ao_c_6";
2043bb23b125SNeil Armstrong							function = "pwm_ao_c";
2044bb23b125SNeil Armstrong							bias-disable;
2045bb23b125SNeil Armstrong						};
2046bb23b125SNeil Armstrong					};
2047bb23b125SNeil Armstrong
2048bb23b125SNeil Armstrong					pwm_ao_d_5_pins: pwm-ao-d-5 {
2049bb23b125SNeil Armstrong						mux {
2050bb23b125SNeil Armstrong							groups = "pwm_ao_d_5";
2051bb23b125SNeil Armstrong							function = "pwm_ao_d";
2052bb23b125SNeil Armstrong							bias-disable;
2053bb23b125SNeil Armstrong						};
2054bb23b125SNeil Armstrong					};
2055bb23b125SNeil Armstrong
2056bb23b125SNeil Armstrong					pwm_ao_d_10_pins: pwm-ao-d-10 {
2057bb23b125SNeil Armstrong						mux {
2058bb23b125SNeil Armstrong							groups = "pwm_ao_d_10";
2059bb23b125SNeil Armstrong							function = "pwm_ao_d";
2060bb23b125SNeil Armstrong							bias-disable;
2061bb23b125SNeil Armstrong						};
2062bb23b125SNeil Armstrong					};
2063bb23b125SNeil Armstrong
2064bb23b125SNeil Armstrong					pwm_ao_d_e_pins: pwm-ao-d-e {
2065bb23b125SNeil Armstrong						mux {
2066bb23b125SNeil Armstrong							groups = "pwm_ao_d_e";
2067bb23b125SNeil Armstrong							function = "pwm_ao_d";
20682bfe8412SNeil Armstrong						};
20692bfe8412SNeil Armstrong					};
20702bfe8412SNeil Armstrong
20712bfe8412SNeil Armstrong					remote_input_ao_pins: remote-input-ao {
20722bfe8412SNeil Armstrong						mux {
20732bfe8412SNeil Armstrong							groups = "remote_ao_input";
20742bfe8412SNeil Armstrong							function = "remote_ao_input";
2075bb23b125SNeil Armstrong							bias-disable;
2076bb23b125SNeil Armstrong						};
2077bb23b125SNeil Armstrong					};
207811a7bea1SJerome Brunet				};
2079b019f4a4SNeil Armstrong			};
2080b019f4a4SNeil Armstrong
208191516e54SNeil Armstrong			cec_AO: cec@100 {
208291516e54SNeil Armstrong				compatible = "amlogic,meson-gx-ao-cec";
208391516e54SNeil Armstrong				reg = <0x0 0x00100 0x0 0x14>;
208491516e54SNeil Armstrong				interrupts = <GIC_SPI 199 IRQ_TYPE_EDGE_RISING>;
208591516e54SNeil Armstrong				clocks = <&clkc_AO CLKID_AO_CEC>;
208691516e54SNeil Armstrong				clock-names = "core";
208791516e54SNeil Armstrong				status = "disabled";
208891516e54SNeil Armstrong			};
208991516e54SNeil Armstrong
20900fa724c5SNeil Armstrong			sec_AO: ao-secure@140 {
20910fa724c5SNeil Armstrong				compatible = "amlogic,meson-gx-ao-secure", "syscon";
20920fa724c5SNeil Armstrong				reg = <0x0 0x140 0x0 0x140>;
20930fa724c5SNeil Armstrong				amlogic,has-chip-id;
20940fa724c5SNeil Armstrong			};
20950fa724c5SNeil Armstrong
209691516e54SNeil Armstrong			cecb_AO: cec@280 {
209791516e54SNeil Armstrong				compatible = "amlogic,meson-g12a-ao-cec";
209891516e54SNeil Armstrong				reg = <0x0 0x00280 0x0 0x1c>;
209991516e54SNeil Armstrong				interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
210091516e54SNeil Armstrong				clocks = <&clkc_AO CLKID_AO_CTS_OSCIN>;
210191516e54SNeil Armstrong				clock-names = "oscin";
210291516e54SNeil Armstrong				status = "disabled";
210391516e54SNeil Armstrong			};
210491516e54SNeil Armstrong
2105bb23b125SNeil Armstrong			pwm_AO_cd: pwm@2000 {
2106bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ao-pwm-cd";
2107bb23b125SNeil Armstrong				reg = <0x0 0x2000 0x0 0x20>;
2108bb23b125SNeil Armstrong				#pwm-cells = <3>;
2109bb23b125SNeil Armstrong				status = "disabled";
2110bb23b125SNeil Armstrong			};
2111bb23b125SNeil Armstrong
21129c8c52f7SJianxin Pan			uart_AO: serial@3000 {
2113503f5fedSJerome Brunet				compatible = "amlogic,meson-gx-uart",
2114503f5fedSJerome Brunet					     "amlogic,meson-ao-uart";
21159c8c52f7SJianxin Pan				reg = <0x0 0x3000 0x0 0x18>;
21169c8c52f7SJianxin Pan				interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
21179a690907SJerome Brunet				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART>, <&xtal>;
21189c8c52f7SJianxin Pan				clock-names = "xtal", "pclk", "baud";
21199c8c52f7SJianxin Pan				status = "disabled";
21209c8c52f7SJianxin Pan			};
21219c8c52f7SJianxin Pan
21229c8c52f7SJianxin Pan			uart_AO_B: serial@4000 {
2123503f5fedSJerome Brunet				compatible = "amlogic,meson-gx-uart",
2124503f5fedSJerome Brunet					     "amlogic,meson-ao-uart";
21259c8c52f7SJianxin Pan				reg = <0x0 0x4000 0x0 0x18>;
21269c8c52f7SJianxin Pan				interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
21279a690907SJerome Brunet				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
21289c8c52f7SJianxin Pan				clock-names = "xtal", "pclk", "baud";
21299c8c52f7SJianxin Pan				status = "disabled";
21309c8c52f7SJianxin Pan			};
2131820873cfSNeil Armstrong
21329951aca6SGuillaume La Roque			i2c_AO: i2c@5000 {
21339951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
21349951aca6SGuillaume La Roque				status = "disabled";
21359951aca6SGuillaume La Roque				reg = <0x0 0x05000 0x0 0x20>;
21369951aca6SGuillaume La Roque				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
21379951aca6SGuillaume La Roque				#address-cells = <1>;
21389951aca6SGuillaume La Roque				#size-cells = <0>;
21399951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
21409951aca6SGuillaume La Roque			};
21419951aca6SGuillaume La Roque
2142bb23b125SNeil Armstrong			pwm_AO_ab: pwm@7000 {
2143bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ao-pwm-ab";
2144bb23b125SNeil Armstrong				reg = <0x0 0x7000 0x0 0x20>;
2145bb23b125SNeil Armstrong				#pwm-cells = <3>;
2146bb23b125SNeil Armstrong				status = "disabled";
2147bb23b125SNeil Armstrong			};
2148bb23b125SNeil Armstrong
21492bfe8412SNeil Armstrong			ir: ir@8000 {
21502bfe8412SNeil Armstrong				compatible = "amlogic,meson-gxbb-ir";
21512bfe8412SNeil Armstrong				reg = <0x0 0x8000 0x0 0x20>;
21522bfe8412SNeil Armstrong				interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
21532bfe8412SNeil Armstrong				status = "disabled";
21542bfe8412SNeil Armstrong			};
21552bfe8412SNeil Armstrong
2156820873cfSNeil Armstrong			saradc: adc@9000 {
2157820873cfSNeil Armstrong				compatible = "amlogic,meson-g12a-saradc",
2158820873cfSNeil Armstrong					     "amlogic,meson-saradc";
2159820873cfSNeil Armstrong				reg = <0x0 0x9000 0x0 0x48>;
2160820873cfSNeil Armstrong				#io-channel-cells = <1>;
2161820873cfSNeil Armstrong				interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>;
2162820873cfSNeil Armstrong				clocks = <&xtal>,
2163820873cfSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC>,
2164820873cfSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC_CLK>,
2165820873cfSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC_SEL>;
2166820873cfSNeil Armstrong				clock-names = "clkin", "core", "adc_clk", "adc_sel";
2167820873cfSNeil Armstrong				status = "disabled";
2168820873cfSNeil Armstrong			};
21699c8c52f7SJianxin Pan		};
21709c8c52f7SJianxin Pan
2171083feecdSNeil Armstrong		vpu: vpu@ff900000 {
2172083feecdSNeil Armstrong			compatible = "amlogic,meson-g12a-vpu";
2173083feecdSNeil Armstrong			reg = <0x0 0xff900000 0x0 0x100000>,
2174083feecdSNeil Armstrong			      <0x0 0xff63c000 0x0 0x1000>;
2175083feecdSNeil Armstrong			reg-names = "vpu", "hhi";
2176083feecdSNeil Armstrong			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
2177083feecdSNeil Armstrong			#address-cells = <1>;
2178083feecdSNeil Armstrong			#size-cells = <0>;
2179083feecdSNeil Armstrong			amlogic,canvas = <&canvas>;
2180083feecdSNeil Armstrong			power-domains = <&pwrc_vpu>;
2181083feecdSNeil Armstrong
2182083feecdSNeil Armstrong			/* CVBS VDAC output port */
2183083feecdSNeil Armstrong			cvbs_vdac_port: port@0 {
2184083feecdSNeil Armstrong				reg = <0>;
2185083feecdSNeil Armstrong			};
2186083feecdSNeil Armstrong
2187083feecdSNeil Armstrong			/* HDMI-TX output port */
2188083feecdSNeil Armstrong			hdmi_tx_port: port@1 {
2189083feecdSNeil Armstrong				reg = <1>;
2190083feecdSNeil Armstrong
2191083feecdSNeil Armstrong				hdmi_tx_out: endpoint {
2192083feecdSNeil Armstrong					remote-endpoint = <&hdmi_tx_in>;
2193083feecdSNeil Armstrong				};
2194083feecdSNeil Armstrong			};
2195083feecdSNeil Armstrong		};
2196083feecdSNeil Armstrong
21979c8c52f7SJianxin Pan		gic: interrupt-controller@ffc01000 {
21989c8c52f7SJianxin Pan			compatible = "arm,gic-400";
21999c8c52f7SJianxin Pan			reg = <0x0 0xffc01000 0 0x1000>,
22009c8c52f7SJianxin Pan			      <0x0 0xffc02000 0 0x2000>,
22019c8c52f7SJianxin Pan			      <0x0 0xffc04000 0 0x2000>,
22029c8c52f7SJianxin Pan			      <0x0 0xffc06000 0 0x2000>;
22039c8c52f7SJianxin Pan			interrupt-controller;
22049c8c52f7SJianxin Pan			interrupts = <GIC_PPI 9
22059c8c52f7SJianxin Pan				(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
22069c8c52f7SJianxin Pan			#interrupt-cells = <3>;
22079c8c52f7SJianxin Pan			#address-cells = <0>;
22089c8c52f7SJianxin Pan		};
22099c8c52f7SJianxin Pan
22109c8c52f7SJianxin Pan		cbus: bus@ffd00000 {
22119c8c52f7SJianxin Pan			compatible = "simple-bus";
2212503f5fedSJerome Brunet			reg = <0x0 0xffd00000 0x0 0x100000>;
22139c8c52f7SJianxin Pan			#address-cells = <2>;
22149c8c52f7SJianxin Pan			#size-cells = <2>;
2215503f5fedSJerome Brunet			ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x100000>;
22169c8c52f7SJianxin Pan
22177ab41c47SJerome Brunet			reset: reset-controller@1004 {
22187ab41c47SJerome Brunet				compatible = "amlogic,meson-g12a-reset",
22197ab41c47SJerome Brunet					     "amlogic,meson-axg-reset";
22207ab41c47SJerome Brunet				reg = <0x0 0x1004 0x0 0x9c>;
22217ab41c47SJerome Brunet				#reset-cells = <1>;
22227ab41c47SJerome Brunet			};
22237ab41c47SJerome Brunet
2224568465c3SMartin Blumenstingl			gpio_intc: interrupt-controller@f080 {
2225568465c3SMartin Blumenstingl				compatible = "amlogic,meson-g12a-gpio-intc",
2226568465c3SMartin Blumenstingl					     "amlogic,meson-gpio-intc";
2227568465c3SMartin Blumenstingl				reg = <0x0 0xf080 0x0 0x10>;
2228568465c3SMartin Blumenstingl				interrupt-controller;
2229568465c3SMartin Blumenstingl				#interrupt-cells = <2>;
2230568465c3SMartin Blumenstingl				amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
2231568465c3SMartin Blumenstingl			};
2232568465c3SMartin Blumenstingl
2233bb23b125SNeil Armstrong			pwm_ef: pwm@19000 {
2234bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
2235bb23b125SNeil Armstrong				reg = <0x0 0x19000 0x0 0x20>;
2236bb23b125SNeil Armstrong				#pwm-cells = <3>;
2237bb23b125SNeil Armstrong				status = "disabled";
2238bb23b125SNeil Armstrong			};
2239bb23b125SNeil Armstrong
2240bb23b125SNeil Armstrong			pwm_cd: pwm@1a000 {
2241bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
2242bb23b125SNeil Armstrong				reg = <0x0 0x1a000 0x0 0x20>;
2243bb23b125SNeil Armstrong				#pwm-cells = <3>;
2244bb23b125SNeil Armstrong				status = "disabled";
2245bb23b125SNeil Armstrong			};
2246bb23b125SNeil Armstrong
2247bb23b125SNeil Armstrong			pwm_ab: pwm@1b000 {
2248bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
2249bb23b125SNeil Armstrong				reg = <0x0 0x1b000 0x0 0x20>;
2250bb23b125SNeil Armstrong				#pwm-cells = <3>;
2251bb23b125SNeil Armstrong				status = "disabled";
2252bb23b125SNeil Armstrong			};
2253bb23b125SNeil Armstrong
22549951aca6SGuillaume La Roque			i2c3: i2c@1c000 {
22559951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22569951aca6SGuillaume La Roque				status = "disabled";
22579951aca6SGuillaume La Roque				reg = <0x0 0x1c000 0x0 0x20>;
22589951aca6SGuillaume La Roque				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
22599951aca6SGuillaume La Roque				#address-cells = <1>;
22609951aca6SGuillaume La Roque				#size-cells = <0>;
22619951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22629951aca6SGuillaume La Roque			};
22639951aca6SGuillaume La Roque
22649951aca6SGuillaume La Roque			i2c2: i2c@1d000 {
22659951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22669951aca6SGuillaume La Roque				status = "disabled";
22679951aca6SGuillaume La Roque				reg = <0x0 0x1d000 0x0 0x20>;
22689951aca6SGuillaume La Roque				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
22699951aca6SGuillaume La Roque				#address-cells = <1>;
22709951aca6SGuillaume La Roque				#size-cells = <0>;
22719951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22729951aca6SGuillaume La Roque			};
22739951aca6SGuillaume La Roque
22749951aca6SGuillaume La Roque			i2c1: i2c@1e000 {
22759951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22769951aca6SGuillaume La Roque				status = "disabled";
22779951aca6SGuillaume La Roque				reg = <0x0 0x1e000 0x0 0x20>;
22789951aca6SGuillaume La Roque				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
22799951aca6SGuillaume La Roque				#address-cells = <1>;
22809951aca6SGuillaume La Roque				#size-cells = <0>;
22819951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22829951aca6SGuillaume La Roque			};
22839951aca6SGuillaume La Roque
22849951aca6SGuillaume La Roque			i2c0: i2c@1f000 {
22859951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22869951aca6SGuillaume La Roque				status = "disabled";
22879951aca6SGuillaume La Roque				reg = <0x0 0x1f000 0x0 0x20>;
22889951aca6SGuillaume La Roque				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
22899951aca6SGuillaume La Roque				#address-cells = <1>;
22909951aca6SGuillaume La Roque				#size-cells = <0>;
22919951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22929951aca6SGuillaume La Roque			};
22939951aca6SGuillaume La Roque
229460d4fdb8SJerome Brunet			clk_msr: clock-measure@18000 {
229560d4fdb8SJerome Brunet				compatible = "amlogic,meson-g12a-clk-measure";
229660d4fdb8SJerome Brunet				reg = <0x0 0x18000 0x0 0x10>;
229760d4fdb8SJerome Brunet			};
2298ff4f8b6cSNeil Armstrong
2299ff4f8b6cSNeil Armstrong			uart_C: serial@22000 {
2300ff4f8b6cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
2301ff4f8b6cSNeil Armstrong				reg = <0x0 0x22000 0x0 0x18>;
2302ff4f8b6cSNeil Armstrong				interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>;
2303ff4f8b6cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>;
2304ff4f8b6cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
2305ff4f8b6cSNeil Armstrong				status = "disabled";
2306ff4f8b6cSNeil Armstrong			};
2307ff4f8b6cSNeil Armstrong
2308ff4f8b6cSNeil Armstrong			uart_B: serial@23000 {
2309ff4f8b6cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
2310ff4f8b6cSNeil Armstrong				reg = <0x0 0x23000 0x0 0x18>;
2311ff4f8b6cSNeil Armstrong				interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
2312ff4f8b6cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
2313ff4f8b6cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
2314ff4f8b6cSNeil Armstrong				status = "disabled";
2315ff4f8b6cSNeil Armstrong			};
2316ff4f8b6cSNeil Armstrong
2317ff4f8b6cSNeil Armstrong			uart_A: serial@24000 {
2318ff4f8b6cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
2319ff4f8b6cSNeil Armstrong				reg = <0x0 0x24000 0x0 0x18>;
2320ff4f8b6cSNeil Armstrong				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
2321ff4f8b6cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
2322ff4f8b6cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
2323ff4f8b6cSNeil Armstrong				status = "disabled";
2324ff4f8b6cSNeil Armstrong			};
23259c8c52f7SJianxin Pan		};
23269baf7d6bSNeil Armstrong
23279a3f3714SJerome Brunet		sd_emmc_a: sd@ffe03000 {
23289a3f3714SJerome Brunet			compatible = "amlogic,meson-axg-mmc";
23299a3f3714SJerome Brunet			reg = <0x0 0xffe03000 0x0 0x800>;
23309a3f3714SJerome Brunet			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
23319a3f3714SJerome Brunet			status = "disabled";
23329a3f3714SJerome Brunet			clocks = <&clkc CLKID_SD_EMMC_A>,
23339a3f3714SJerome Brunet				 <&clkc CLKID_SD_EMMC_A_CLK0>,
23349a3f3714SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>;
23359a3f3714SJerome Brunet			clock-names = "core", "clkin0", "clkin1";
23369a3f3714SJerome Brunet			resets = <&reset RESET_SD_EMMC_A>;
23379a3f3714SJerome Brunet			amlogic,dram-access-quirk;
23389a3f3714SJerome Brunet		};
23399a3f3714SJerome Brunet
23404759fd87SJerome Brunet		sd_emmc_b: sd@ffe05000 {
23414759fd87SJerome Brunet			compatible = "amlogic,meson-axg-mmc";
23424759fd87SJerome Brunet			reg = <0x0 0xffe05000 0x0 0x800>;
23434759fd87SJerome Brunet			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
23444759fd87SJerome Brunet			status = "disabled";
23454759fd87SJerome Brunet			clocks = <&clkc CLKID_SD_EMMC_B>,
23464759fd87SJerome Brunet				 <&clkc CLKID_SD_EMMC_B_CLK0>,
23474759fd87SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>;
23484759fd87SJerome Brunet			clock-names = "core", "clkin0", "clkin1";
23494759fd87SJerome Brunet			resets = <&reset RESET_SD_EMMC_B>;
23504759fd87SJerome Brunet		};
23514759fd87SJerome Brunet
23524759fd87SJerome Brunet		sd_emmc_c: mmc@ffe07000 {
23534759fd87SJerome Brunet			compatible = "amlogic,meson-axg-mmc";
23544759fd87SJerome Brunet			reg = <0x0 0xffe07000 0x0 0x800>;
23554759fd87SJerome Brunet			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
23564759fd87SJerome Brunet			status = "disabled";
23574759fd87SJerome Brunet			clocks = <&clkc CLKID_SD_EMMC_C>,
23584759fd87SJerome Brunet				 <&clkc CLKID_SD_EMMC_C_CLK0>,
23594759fd87SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>;
23604759fd87SJerome Brunet			clock-names = "core", "clkin0", "clkin1";
23614759fd87SJerome Brunet			resets = <&reset RESET_SD_EMMC_C>;
23624759fd87SJerome Brunet		};
23634759fd87SJerome Brunet
23649baf7d6bSNeil Armstrong		usb: usb@ffe09000 {
23659baf7d6bSNeil Armstrong			status = "disabled";
23669baf7d6bSNeil Armstrong			compatible = "amlogic,meson-g12a-usb-ctrl";
23679baf7d6bSNeil Armstrong			reg = <0x0 0xffe09000 0x0 0xa0>;
23689baf7d6bSNeil Armstrong			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
23699baf7d6bSNeil Armstrong			#address-cells = <2>;
23709baf7d6bSNeil Armstrong			#size-cells = <2>;
23719baf7d6bSNeil Armstrong			ranges;
23729baf7d6bSNeil Armstrong
23739baf7d6bSNeil Armstrong			clocks = <&clkc CLKID_USB>;
23749baf7d6bSNeil Armstrong			resets = <&reset RESET_USB>;
23759baf7d6bSNeil Armstrong
23769baf7d6bSNeil Armstrong			dr_mode = "otg";
23779baf7d6bSNeil Armstrong
23789baf7d6bSNeil Armstrong			phys = <&usb2_phy0>, <&usb2_phy1>,
23799baf7d6bSNeil Armstrong			       <&usb3_pcie_phy PHY_TYPE_USB3>;
23809baf7d6bSNeil Armstrong			phy-names = "usb2-phy0", "usb2-phy1", "usb3-phy0";
23819baf7d6bSNeil Armstrong
23829baf7d6bSNeil Armstrong			dwc2: usb@ff400000 {
23839baf7d6bSNeil Armstrong				compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
23849baf7d6bSNeil Armstrong				reg = <0x0 0xff400000 0x0 0x40000>;
23859baf7d6bSNeil Armstrong				interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
23869baf7d6bSNeil Armstrong				clocks = <&clkc CLKID_USB1_DDR_BRIDGE>;
23879baf7d6bSNeil Armstrong				clock-names = "ddr";
23889baf7d6bSNeil Armstrong				phys = <&usb2_phy1>;
23899baf7d6bSNeil Armstrong				dr_mode = "peripheral";
23909baf7d6bSNeil Armstrong				g-rx-fifo-size = <192>;
23919baf7d6bSNeil Armstrong				g-np-tx-fifo-size = <128>;
23929baf7d6bSNeil Armstrong				g-tx-fifo-size = <128 128 16 16 16>;
23939baf7d6bSNeil Armstrong			};
23949baf7d6bSNeil Armstrong
23959baf7d6bSNeil Armstrong			dwc3: usb@ff500000 {
23969baf7d6bSNeil Armstrong				compatible = "snps,dwc3";
23979baf7d6bSNeil Armstrong				reg = <0x0 0xff500000 0x0 0x100000>;
23989baf7d6bSNeil Armstrong				interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
23999baf7d6bSNeil Armstrong				dr_mode = "host";
24009baf7d6bSNeil Armstrong				snps,dis_u2_susphy_quirk;
24019baf7d6bSNeil Armstrong				snps,quirk-frame-length-adjustment;
24029baf7d6bSNeil Armstrong			};
24039baf7d6bSNeil Armstrong		};
24042607fd08SNeil Armstrong
24052607fd08SNeil Armstrong		mali: gpu@ffe40000 {
24062607fd08SNeil Armstrong			compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
24072607fd08SNeil Armstrong			reg = <0x0 0xffe40000 0x0 0x40000>;
24082607fd08SNeil Armstrong			interrupt-parent = <&gic>;
24092607fd08SNeil Armstrong			interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
24102607fd08SNeil Armstrong				     <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
24112607fd08SNeil Armstrong				     <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
24122607fd08SNeil Armstrong			interrupt-names = "gpu", "mmu", "job";
24132607fd08SNeil Armstrong			clocks = <&clkc CLKID_MALI>;
24142607fd08SNeil Armstrong			resets = <&reset RESET_DVALIN_CAPB3>, <&reset RESET_DVALIN>;
24152607fd08SNeil Armstrong
24162607fd08SNeil Armstrong			/*
24172607fd08SNeil Armstrong			 * Mali clocking is provided by two identical clock paths
24182607fd08SNeil Armstrong			 * MALI_0 and MALI_1 muxed to a single clock by a glitch
24192607fd08SNeil Armstrong			 * free mux to safely change frequency while running.
24202607fd08SNeil Armstrong			 */
24212607fd08SNeil Armstrong			assigned-clocks = <&clkc CLKID_MALI_0_SEL>,
24222607fd08SNeil Armstrong					  <&clkc CLKID_MALI_0>,
24232607fd08SNeil Armstrong					  <&clkc CLKID_MALI>; /* Glitch free mux */
24242607fd08SNeil Armstrong			assigned-clock-parents = <&clkc CLKID_FCLK_DIV2P5>,
24252607fd08SNeil Armstrong						 <0>, /* Do Nothing */
24262607fd08SNeil Armstrong						 <&clkc CLKID_MALI_0>;
24272607fd08SNeil Armstrong			assigned-clock-rates = <0>, /* Do Nothing */
24282607fd08SNeil Armstrong					       <800000000>,
24292607fd08SNeil Armstrong					       <0>; /* Do Nothing */
24302607fd08SNeil Armstrong		};
24319c8c52f7SJianxin Pan	};
24329c8c52f7SJianxin Pan
24339c8c52f7SJianxin Pan	timer {
24349c8c52f7SJianxin Pan		compatible = "arm,armv8-timer";
24359c8c52f7SJianxin Pan		interrupts = <GIC_PPI 13
24369c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24379c8c52f7SJianxin Pan			     <GIC_PPI 14
24389c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24399c8c52f7SJianxin Pan			     <GIC_PPI 11
24409c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24419c8c52f7SJianxin Pan			     <GIC_PPI 10
24429c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>;
24439c8c52f7SJianxin Pan	};
24449c8c52f7SJianxin Pan
24459c8c52f7SJianxin Pan	xtal: xtal-clk {
24469c8c52f7SJianxin Pan		compatible = "fixed-clock";
24479c8c52f7SJianxin Pan		clock-frequency = <24000000>;
24489c8c52f7SJianxin Pan		clock-output-names = "xtal";
24499c8c52f7SJianxin Pan		#clock-cells = <0>;
24509c8c52f7SJianxin Pan	};
24519c8c52f7SJianxin Pan
24529c8c52f7SJianxin Pan};
2453