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
846e3d3b132SJerome Brunet					spdif_in_a10_pins: spdif-in-a10 {
847e3d3b132SJerome Brunet						mux {
848e3d3b132SJerome Brunet							groups = "spdif_in_a10";
849e3d3b132SJerome Brunet							function = "spdif_in";
850e3d3b132SJerome Brunet							bias-disable;
851e3d3b132SJerome Brunet						};
852e3d3b132SJerome Brunet					};
853e3d3b132SJerome Brunet
854e3d3b132SJerome Brunet					spdif_in_a12_pins: spdif-in-a12 {
855e3d3b132SJerome Brunet						mux {
856e3d3b132SJerome Brunet							groups = "spdif_in_a12";
857e3d3b132SJerome Brunet							function = "spdif_in";
858e3d3b132SJerome Brunet							bias-disable;
859e3d3b132SJerome Brunet						};
860e3d3b132SJerome Brunet					};
861e3d3b132SJerome Brunet
862e3d3b132SJerome Brunet					spdif_in_h_pins: spdif-in-h {
863e3d3b132SJerome Brunet						mux {
864e3d3b132SJerome Brunet							groups = "spdif_in_h";
865e3d3b132SJerome Brunet							function = "spdif_in";
866e3d3b132SJerome Brunet							bias-disable;
867e3d3b132SJerome Brunet						};
868e3d3b132SJerome Brunet					};
869e3d3b132SJerome Brunet
870649675dbSJerome Brunet					spdif_out_h_pins: spdif-out-h {
871649675dbSJerome Brunet						mux {
872649675dbSJerome Brunet							groups = "spdif_out_h";
873649675dbSJerome Brunet							function = "spdif_out";
874649675dbSJerome Brunet							drive-strength-microamp = <500>;
875649675dbSJerome Brunet							bias-disable;
876649675dbSJerome Brunet						};
877649675dbSJerome Brunet					};
878649675dbSJerome Brunet
879649675dbSJerome Brunet					spdif_out_a11_pins: spdif-out-a11 {
880649675dbSJerome Brunet						mux {
881649675dbSJerome Brunet							groups = "spdif_out_a11";
882649675dbSJerome Brunet							function = "spdif_out";
883649675dbSJerome Brunet							drive-strength-microamp = <500>;
884649675dbSJerome Brunet							bias-disable;
885649675dbSJerome Brunet						};
886649675dbSJerome Brunet					};
887649675dbSJerome Brunet
888649675dbSJerome Brunet					spdif_out_a13_pins: spdif-out-a13 {
889649675dbSJerome Brunet						mux {
890649675dbSJerome Brunet							groups = "spdif_out_a13";
891649675dbSJerome Brunet							function = "spdif_out";
892649675dbSJerome Brunet							drive-strength-microamp = <500>;
893649675dbSJerome Brunet							bias-disable;
894649675dbSJerome Brunet						};
895649675dbSJerome Brunet					};
896649675dbSJerome Brunet
8971ff38c86SJerome Brunet					tdm_a_din0_pins: tdm-a-din0 {
8981ff38c86SJerome Brunet						mux {
8991ff38c86SJerome Brunet							groups = "tdm_a_din0";
9001ff38c86SJerome Brunet							function = "tdm_a";
9011ff38c86SJerome Brunet							bias-disable;
9021ff38c86SJerome Brunet						};
9031ff38c86SJerome Brunet					};
9041ff38c86SJerome Brunet
9051ff38c86SJerome Brunet
9061ff38c86SJerome Brunet					tdm_a_din1_pins: tdm-a-din1 {
9071ff38c86SJerome Brunet						mux {
9081ff38c86SJerome Brunet							groups = "tdm_a_din1";
9091ff38c86SJerome Brunet							function = "tdm_a";
9101ff38c86SJerome Brunet							bias-disable;
9111ff38c86SJerome Brunet						};
9121ff38c86SJerome Brunet					};
9131ff38c86SJerome Brunet
9141ff38c86SJerome Brunet					tdm_a_dout0_pins: tdm-a-dout0 {
9151ff38c86SJerome Brunet						mux {
9161ff38c86SJerome Brunet							groups = "tdm_a_dout0";
9171ff38c86SJerome Brunet							function = "tdm_a";
9181ff38c86SJerome Brunet							bias-disable;
9191ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9201ff38c86SJerome Brunet						};
9211ff38c86SJerome Brunet					};
9221ff38c86SJerome Brunet
9231ff38c86SJerome Brunet					tdm_a_dout1_pins: tdm-a-dout1 {
9241ff38c86SJerome Brunet						mux {
9251ff38c86SJerome Brunet							groups = "tdm_a_dout1";
9261ff38c86SJerome Brunet							function = "tdm_a";
9271ff38c86SJerome Brunet							bias-disable;
9281ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9291ff38c86SJerome Brunet						};
9301ff38c86SJerome Brunet					};
9311ff38c86SJerome Brunet
9321ff38c86SJerome Brunet					tdm_a_fs_pins: tdm-a-fs {
9331ff38c86SJerome Brunet						mux {
9341ff38c86SJerome Brunet							groups = "tdm_a_fs";
9351ff38c86SJerome Brunet							function = "tdm_a";
9361ff38c86SJerome Brunet							bias-disable;
9371ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9381ff38c86SJerome Brunet						};
9391ff38c86SJerome Brunet					};
9401ff38c86SJerome Brunet
9411ff38c86SJerome Brunet					tdm_a_sclk_pins: tdm-a-sclk {
9421ff38c86SJerome Brunet						mux {
9431ff38c86SJerome Brunet							groups = "tdm_a_sclk";
9441ff38c86SJerome Brunet							function = "tdm_a";
9451ff38c86SJerome Brunet							bias-disable;
9461ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
9471ff38c86SJerome Brunet						};
9481ff38c86SJerome Brunet					};
9491ff38c86SJerome Brunet
9501ff38c86SJerome Brunet					tdm_a_slv_fs_pins: tdm-a-slv-fs {
9511ff38c86SJerome Brunet						mux {
9521ff38c86SJerome Brunet							groups = "tdm_a_slv_fs";
9531ff38c86SJerome Brunet							function = "tdm_a";
9541ff38c86SJerome Brunet							bias-disable;
9551ff38c86SJerome Brunet						};
9561ff38c86SJerome Brunet					};
9571ff38c86SJerome Brunet
9581ff38c86SJerome Brunet
9591ff38c86SJerome Brunet					tdm_a_slv_sclk_pins: tdm-a-slv-sclk {
9601ff38c86SJerome Brunet						mux {
9611ff38c86SJerome Brunet							groups = "tdm_a_slv_sclk";
9621ff38c86SJerome Brunet							function = "tdm_a";
9631ff38c86SJerome Brunet							bias-disable;
9641ff38c86SJerome Brunet						};
9651ff38c86SJerome Brunet					};
9661ff38c86SJerome Brunet
9671ff38c86SJerome Brunet					tdm_b_din0_pins: tdm-b-din0 {
9681ff38c86SJerome Brunet						mux {
9691ff38c86SJerome Brunet							groups = "tdm_b_din0";
9701ff38c86SJerome Brunet							function = "tdm_b";
9711ff38c86SJerome Brunet							bias-disable;
9721ff38c86SJerome Brunet						};
9731ff38c86SJerome Brunet					};
9741ff38c86SJerome Brunet
9751ff38c86SJerome Brunet					tdm_b_din1_pins: tdm-b-din1 {
9761ff38c86SJerome Brunet						mux {
9771ff38c86SJerome Brunet							groups = "tdm_b_din1";
9781ff38c86SJerome Brunet							function = "tdm_b";
9791ff38c86SJerome Brunet							bias-disable;
9801ff38c86SJerome Brunet						};
9811ff38c86SJerome Brunet					};
9821ff38c86SJerome Brunet
9831ff38c86SJerome Brunet					tdm_b_din2_pins: tdm-b-din2 {
9841ff38c86SJerome Brunet						mux {
9851ff38c86SJerome Brunet							groups = "tdm_b_din2";
9861ff38c86SJerome Brunet							function = "tdm_b";
9871ff38c86SJerome Brunet							bias-disable;
9881ff38c86SJerome Brunet						};
9891ff38c86SJerome Brunet					};
9901ff38c86SJerome Brunet
9911ff38c86SJerome Brunet					tdm_b_din3_a_pins: tdm-b-din3-a {
9921ff38c86SJerome Brunet						mux {
9931ff38c86SJerome Brunet							groups = "tdm_b_din3_a";
9941ff38c86SJerome Brunet							function = "tdm_b";
9951ff38c86SJerome Brunet							bias-disable;
9961ff38c86SJerome Brunet						};
9971ff38c86SJerome Brunet					};
9981ff38c86SJerome Brunet
9991ff38c86SJerome Brunet					tdm_b_din3_h_pins: tdm-b-din3-h {
10001ff38c86SJerome Brunet						mux {
10011ff38c86SJerome Brunet							groups = "tdm_b_din3_h";
10021ff38c86SJerome Brunet							function = "tdm_b";
10031ff38c86SJerome Brunet							bias-disable;
10041ff38c86SJerome Brunet						};
10051ff38c86SJerome Brunet					};
10061ff38c86SJerome Brunet
10071ff38c86SJerome Brunet					tdm_b_dout0_pins: tdm-b-dout0 {
10081ff38c86SJerome Brunet						mux {
10091ff38c86SJerome Brunet							groups = "tdm_b_dout0";
10101ff38c86SJerome Brunet							function = "tdm_b";
10111ff38c86SJerome Brunet							bias-disable;
10121ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10131ff38c86SJerome Brunet						};
10141ff38c86SJerome Brunet					};
10151ff38c86SJerome Brunet
10161ff38c86SJerome Brunet					tdm_b_dout1_pins: tdm-b-dout1 {
10171ff38c86SJerome Brunet						mux {
10181ff38c86SJerome Brunet							groups = "tdm_b_dout1";
10191ff38c86SJerome Brunet							function = "tdm_b";
10201ff38c86SJerome Brunet							bias-disable;
10211ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10221ff38c86SJerome Brunet						};
10231ff38c86SJerome Brunet					};
10241ff38c86SJerome Brunet
10251ff38c86SJerome Brunet					tdm_b_dout2_pins: tdm-b-dout2 {
10261ff38c86SJerome Brunet						mux {
10271ff38c86SJerome Brunet							groups = "tdm_b_dout2";
10281ff38c86SJerome Brunet							function = "tdm_b";
10291ff38c86SJerome Brunet							bias-disable;
10301ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10311ff38c86SJerome Brunet						};
10321ff38c86SJerome Brunet					};
10331ff38c86SJerome Brunet
10341ff38c86SJerome Brunet					tdm_b_dout3_a_pins: tdm-b-dout3-a {
10351ff38c86SJerome Brunet						mux {
10361ff38c86SJerome Brunet							groups = "tdm_b_dout3_a";
10371ff38c86SJerome Brunet							function = "tdm_b";
10381ff38c86SJerome Brunet							bias-disable;
10391ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10401ff38c86SJerome Brunet						};
10411ff38c86SJerome Brunet					};
10421ff38c86SJerome Brunet
10431ff38c86SJerome Brunet					tdm_b_dout3_h_pins: tdm-b-dout3-h {
10441ff38c86SJerome Brunet						mux {
10451ff38c86SJerome Brunet							groups = "tdm_b_dout3_h";
10461ff38c86SJerome Brunet							function = "tdm_b";
10471ff38c86SJerome Brunet							bias-disable;
10481ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10491ff38c86SJerome Brunet						};
10501ff38c86SJerome Brunet					};
10511ff38c86SJerome Brunet
10521ff38c86SJerome Brunet					tdm_b_fs_pins: tdm-b-fs {
10531ff38c86SJerome Brunet						mux {
10541ff38c86SJerome Brunet							groups = "tdm_b_fs";
10551ff38c86SJerome Brunet							function = "tdm_b";
10561ff38c86SJerome Brunet							bias-disable;
10571ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10581ff38c86SJerome Brunet						};
10591ff38c86SJerome Brunet					};
10601ff38c86SJerome Brunet
10611ff38c86SJerome Brunet					tdm_b_sclk_pins: tdm-b-sclk {
10621ff38c86SJerome Brunet						mux {
10631ff38c86SJerome Brunet							groups = "tdm_b_sclk";
10641ff38c86SJerome Brunet							function = "tdm_b";
10651ff38c86SJerome Brunet							bias-disable;
10661ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
10671ff38c86SJerome Brunet						};
10681ff38c86SJerome Brunet					};
10691ff38c86SJerome Brunet
10701ff38c86SJerome Brunet					tdm_b_slv_fs_pins: tdm-b-slv-fs {
10711ff38c86SJerome Brunet						mux {
10721ff38c86SJerome Brunet							groups = "tdm_b_slv_fs";
10731ff38c86SJerome Brunet							function = "tdm_b";
10741ff38c86SJerome Brunet							bias-disable;
10751ff38c86SJerome Brunet						};
10761ff38c86SJerome Brunet					};
10771ff38c86SJerome Brunet
10781ff38c86SJerome Brunet					tdm_b_slv_sclk_pins: tdm-b-slv-sclk {
10791ff38c86SJerome Brunet						mux {
10801ff38c86SJerome Brunet							groups = "tdm_b_slv_sclk";
10811ff38c86SJerome Brunet							function = "tdm_b";
10821ff38c86SJerome Brunet							bias-disable;
10831ff38c86SJerome Brunet						};
10841ff38c86SJerome Brunet					};
10851ff38c86SJerome Brunet
10861ff38c86SJerome Brunet					tdm_c_din0_a_pins: tdm-c-din0-a {
10871ff38c86SJerome Brunet						mux {
10881ff38c86SJerome Brunet							groups = "tdm_c_din0_a";
10891ff38c86SJerome Brunet							function = "tdm_c";
10901ff38c86SJerome Brunet							bias-disable;
10911ff38c86SJerome Brunet						};
10921ff38c86SJerome Brunet					};
10931ff38c86SJerome Brunet
10941ff38c86SJerome Brunet					tdm_c_din0_z_pins: tdm-c-din0-z {
10951ff38c86SJerome Brunet						mux {
10961ff38c86SJerome Brunet							groups = "tdm_c_din0_z";
10971ff38c86SJerome Brunet							function = "tdm_c";
10981ff38c86SJerome Brunet							bias-disable;
10991ff38c86SJerome Brunet						};
11001ff38c86SJerome Brunet					};
11011ff38c86SJerome Brunet
11021ff38c86SJerome Brunet					tdm_c_din1_a_pins: tdm-c-din1-a {
11031ff38c86SJerome Brunet						mux {
11041ff38c86SJerome Brunet							groups = "tdm_c_din1_a";
11051ff38c86SJerome Brunet							function = "tdm_c";
11061ff38c86SJerome Brunet							bias-disable;
11071ff38c86SJerome Brunet						};
11081ff38c86SJerome Brunet					};
11091ff38c86SJerome Brunet
11101ff38c86SJerome Brunet					tdm_c_din1_z_pins: tdm-c-din1-z {
11111ff38c86SJerome Brunet						mux {
11121ff38c86SJerome Brunet							groups = "tdm_c_din1_z";
11131ff38c86SJerome Brunet							function = "tdm_c";
11141ff38c86SJerome Brunet							bias-disable;
11151ff38c86SJerome Brunet						};
11161ff38c86SJerome Brunet					};
11171ff38c86SJerome Brunet
11181ff38c86SJerome Brunet					tdm_c_din2_a_pins: tdm-c-din2-a {
11191ff38c86SJerome Brunet						mux {
11201ff38c86SJerome Brunet							groups = "tdm_c_din2_a";
11211ff38c86SJerome Brunet							function = "tdm_c";
11221ff38c86SJerome Brunet							bias-disable;
11231ff38c86SJerome Brunet						};
11241ff38c86SJerome Brunet					};
11251ff38c86SJerome Brunet
11263293252fSJerome Brunet					eth_leds_pins: eth-leds {
11273293252fSJerome Brunet						mux {
11283293252fSJerome Brunet							groups = "eth_link_led",
11293293252fSJerome Brunet								 "eth_act_led";
11303293252fSJerome Brunet							function = "eth";
11313293252fSJerome Brunet							bias-disable;
11323293252fSJerome Brunet						};
11333293252fSJerome Brunet					};
11343293252fSJerome Brunet
11353293252fSJerome Brunet					eth_pins: eth {
11363293252fSJerome Brunet						mux {
11373293252fSJerome Brunet							groups = "eth_mdio",
11383293252fSJerome Brunet								 "eth_mdc",
11393293252fSJerome Brunet								 "eth_rgmii_rx_clk",
11403293252fSJerome Brunet								 "eth_rx_dv",
11413293252fSJerome Brunet								 "eth_rxd0",
11423293252fSJerome Brunet								 "eth_rxd1",
11433293252fSJerome Brunet								 "eth_txen",
11443293252fSJerome Brunet								 "eth_txd0",
11453293252fSJerome Brunet								 "eth_txd1";
11463293252fSJerome Brunet							function = "eth";
114747b65cb8SNeil Armstrong							drive-strength-microamp = <4000>;
11483293252fSJerome Brunet							bias-disable;
11493293252fSJerome Brunet						};
11503293252fSJerome Brunet					};
11513293252fSJerome Brunet
11523293252fSJerome Brunet					eth_rgmii_pins: eth-rgmii {
11533293252fSJerome Brunet						mux {
11543293252fSJerome Brunet							groups = "eth_rxd2_rgmii",
11553293252fSJerome Brunet								 "eth_rxd3_rgmii",
11563293252fSJerome Brunet								 "eth_rgmii_tx_clk",
11573293252fSJerome Brunet								 "eth_txd2_rgmii",
11583293252fSJerome Brunet								 "eth_txd3_rgmii";
11593293252fSJerome Brunet							function = "eth";
116047b65cb8SNeil Armstrong							drive-strength-microamp = <4000>;
11613293252fSJerome Brunet							bias-disable;
11623293252fSJerome Brunet						};
11633293252fSJerome Brunet					};
11643293252fSJerome Brunet
11651ff38c86SJerome Brunet					tdm_c_din2_z_pins: tdm-c-din2-z {
11661ff38c86SJerome Brunet						mux {
11671ff38c86SJerome Brunet							groups = "tdm_c_din2_z";
11681ff38c86SJerome Brunet							function = "tdm_c";
11691ff38c86SJerome Brunet							bias-disable;
11701ff38c86SJerome Brunet						};
11711ff38c86SJerome Brunet					};
11721ff38c86SJerome Brunet
11731ff38c86SJerome Brunet					tdm_c_din3_a_pins: tdm-c-din3-a {
11741ff38c86SJerome Brunet						mux {
11751ff38c86SJerome Brunet							groups = "tdm_c_din3_a";
11761ff38c86SJerome Brunet							function = "tdm_c";
11771ff38c86SJerome Brunet							bias-disable;
11781ff38c86SJerome Brunet						};
11791ff38c86SJerome Brunet					};
11801ff38c86SJerome Brunet
11811ff38c86SJerome Brunet					tdm_c_din3_z_pins: tdm-c-din3-z {
11821ff38c86SJerome Brunet						mux {
11831ff38c86SJerome Brunet							groups = "tdm_c_din3_z";
11841ff38c86SJerome Brunet							function = "tdm_c";
11851ff38c86SJerome Brunet							bias-disable;
11861ff38c86SJerome Brunet						};
11871ff38c86SJerome Brunet					};
11881ff38c86SJerome Brunet
11891ff38c86SJerome Brunet					tdm_c_dout0_a_pins: tdm-c-dout0-a {
11901ff38c86SJerome Brunet						mux {
11911ff38c86SJerome Brunet							groups = "tdm_c_dout0_a";
11921ff38c86SJerome Brunet							function = "tdm_c";
11931ff38c86SJerome Brunet							bias-disable;
11941ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
11951ff38c86SJerome Brunet						};
11961ff38c86SJerome Brunet					};
11971ff38c86SJerome Brunet
11981ff38c86SJerome Brunet					tdm_c_dout0_z_pins: tdm-c-dout0-z {
11991ff38c86SJerome Brunet						mux {
12001ff38c86SJerome Brunet							groups = "tdm_c_dout0_z";
12011ff38c86SJerome Brunet							function = "tdm_c";
12021ff38c86SJerome Brunet							bias-disable;
12031ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12041ff38c86SJerome Brunet						};
12051ff38c86SJerome Brunet					};
12061ff38c86SJerome Brunet
12071ff38c86SJerome Brunet					tdm_c_dout1_a_pins: tdm-c-dout1-a {
12081ff38c86SJerome Brunet						mux {
12091ff38c86SJerome Brunet							groups = "tdm_c_dout1_a";
12101ff38c86SJerome Brunet							function = "tdm_c";
12111ff38c86SJerome Brunet							bias-disable;
12121ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12131ff38c86SJerome Brunet						};
12141ff38c86SJerome Brunet					};
12151ff38c86SJerome Brunet
12161ff38c86SJerome Brunet					tdm_c_dout1_z_pins: tdm-c-dout1-z {
12171ff38c86SJerome Brunet						mux {
12181ff38c86SJerome Brunet							groups = "tdm_c_dout1_z";
12191ff38c86SJerome Brunet							function = "tdm_c";
12201ff38c86SJerome Brunet							bias-disable;
12211ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12221ff38c86SJerome Brunet						};
12231ff38c86SJerome Brunet					};
12241ff38c86SJerome Brunet
12251ff38c86SJerome Brunet					tdm_c_dout2_a_pins: tdm-c-dout2-a {
12261ff38c86SJerome Brunet						mux {
12271ff38c86SJerome Brunet							groups = "tdm_c_dout2_a";
12281ff38c86SJerome Brunet							function = "tdm_c";
12291ff38c86SJerome Brunet							bias-disable;
12301ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12311ff38c86SJerome Brunet						};
12321ff38c86SJerome Brunet					};
12331ff38c86SJerome Brunet
12341ff38c86SJerome Brunet					tdm_c_dout2_z_pins: tdm-c-dout2-z {
12351ff38c86SJerome Brunet						mux {
12361ff38c86SJerome Brunet							groups = "tdm_c_dout2_z";
12371ff38c86SJerome Brunet							function = "tdm_c";
12381ff38c86SJerome Brunet							bias-disable;
12391ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12401ff38c86SJerome Brunet						};
12411ff38c86SJerome Brunet					};
12421ff38c86SJerome Brunet
12431ff38c86SJerome Brunet					tdm_c_dout3_a_pins: tdm-c-dout3-a {
12441ff38c86SJerome Brunet						mux {
12451ff38c86SJerome Brunet							groups = "tdm_c_dout3_a";
12461ff38c86SJerome Brunet							function = "tdm_c";
12471ff38c86SJerome Brunet							bias-disable;
12481ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12491ff38c86SJerome Brunet						};
12501ff38c86SJerome Brunet					};
12511ff38c86SJerome Brunet
12521ff38c86SJerome Brunet					tdm_c_dout3_z_pins: tdm-c-dout3-z {
12531ff38c86SJerome Brunet						mux {
12541ff38c86SJerome Brunet							groups = "tdm_c_dout3_z";
12551ff38c86SJerome Brunet							function = "tdm_c";
12561ff38c86SJerome Brunet							bias-disable;
12571ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12581ff38c86SJerome Brunet						};
12591ff38c86SJerome Brunet					};
12601ff38c86SJerome Brunet
12611ff38c86SJerome Brunet					tdm_c_fs_a_pins: tdm-c-fs-a {
12621ff38c86SJerome Brunet						mux {
12631ff38c86SJerome Brunet							groups = "tdm_c_fs_a";
12641ff38c86SJerome Brunet							function = "tdm_c";
12651ff38c86SJerome Brunet							bias-disable;
12661ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12671ff38c86SJerome Brunet						};
12681ff38c86SJerome Brunet					};
12691ff38c86SJerome Brunet
12701ff38c86SJerome Brunet					tdm_c_fs_z_pins: tdm-c-fs-z {
12711ff38c86SJerome Brunet						mux {
12721ff38c86SJerome Brunet							groups = "tdm_c_fs_z";
12731ff38c86SJerome Brunet							function = "tdm_c";
12741ff38c86SJerome Brunet							bias-disable;
12751ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12761ff38c86SJerome Brunet						};
12771ff38c86SJerome Brunet					};
12781ff38c86SJerome Brunet
12791ff38c86SJerome Brunet					tdm_c_sclk_a_pins: tdm-c-sclk-a {
12801ff38c86SJerome Brunet						mux {
12811ff38c86SJerome Brunet							groups = "tdm_c_sclk_a";
12821ff38c86SJerome Brunet							function = "tdm_c";
12831ff38c86SJerome Brunet							bias-disable;
12841ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12851ff38c86SJerome Brunet						};
12861ff38c86SJerome Brunet					};
12871ff38c86SJerome Brunet
12881ff38c86SJerome Brunet					tdm_c_sclk_z_pins: tdm-c-sclk-z {
12891ff38c86SJerome Brunet						mux {
12901ff38c86SJerome Brunet							groups = "tdm_c_sclk_z";
12911ff38c86SJerome Brunet							function = "tdm_c";
12921ff38c86SJerome Brunet							bias-disable;
12931ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
12941ff38c86SJerome Brunet						};
12951ff38c86SJerome Brunet					};
12961ff38c86SJerome Brunet
12971ff38c86SJerome Brunet					tdm_c_slv_fs_a_pins: tdm-c-slv-fs-a {
12981ff38c86SJerome Brunet						mux {
12991ff38c86SJerome Brunet							groups = "tdm_c_slv_fs_a";
13001ff38c86SJerome Brunet							function = "tdm_c";
13011ff38c86SJerome Brunet							bias-disable;
13021ff38c86SJerome Brunet						};
13031ff38c86SJerome Brunet					};
13041ff38c86SJerome Brunet
13051ff38c86SJerome Brunet					tdm_c_slv_fs_z_pins: tdm-c-slv-fs-z {
13061ff38c86SJerome Brunet						mux {
13071ff38c86SJerome Brunet							groups = "tdm_c_slv_fs_z";
13081ff38c86SJerome Brunet							function = "tdm_c";
13091ff38c86SJerome Brunet							bias-disable;
13101ff38c86SJerome Brunet						};
13111ff38c86SJerome Brunet					};
13121ff38c86SJerome Brunet
13131ff38c86SJerome Brunet					tdm_c_slv_sclk_a_pins: tdm-c-slv-sclk-a {
13141ff38c86SJerome Brunet						mux {
13151ff38c86SJerome Brunet							groups = "tdm_c_slv_sclk_a";
13161ff38c86SJerome Brunet							function = "tdm_c";
13171ff38c86SJerome Brunet							bias-disable;
13181ff38c86SJerome Brunet						};
13191ff38c86SJerome Brunet					};
13201ff38c86SJerome Brunet
13211ff38c86SJerome Brunet					tdm_c_slv_sclk_z_pins: tdm-c-slv-sclk-z {
13221ff38c86SJerome Brunet						mux {
13231ff38c86SJerome Brunet							groups = "tdm_c_slv_sclk_z";
13241ff38c86SJerome Brunet							function = "tdm_c";
13251ff38c86SJerome Brunet							bias-disable;
13261ff38c86SJerome Brunet						};
13271ff38c86SJerome Brunet					};
13281ff38c86SJerome Brunet
13298a6b3ca2SJerome Brunet					sdio_pins: sdio {
13308a6b3ca2SJerome Brunet						mux {
13318a6b3ca2SJerome Brunet							groups = "sdio_d0",
13328a6b3ca2SJerome Brunet								 "sdio_d1",
13338a6b3ca2SJerome Brunet								 "sdio_d2",
13348a6b3ca2SJerome Brunet								 "sdio_d3",
13358a6b3ca2SJerome Brunet								 "sdio_cmd",
13368a6b3ca2SJerome Brunet								 "sdio_clk";
13378a6b3ca2SJerome Brunet							function = "sdio";
13388a6b3ca2SJerome Brunet							bias-disable;
13398a6b3ca2SJerome Brunet							drive-strength-microamp = <4000>;
13408a6b3ca2SJerome Brunet						};
13418a6b3ca2SJerome Brunet					};
13428a6b3ca2SJerome Brunet
13438a6b3ca2SJerome Brunet					sdio_clk_gate_pins: sdio_clk_gate {
13448a6b3ca2SJerome Brunet						mux {
13458a6b3ca2SJerome Brunet							groups = "GPIOX_4";
13468a6b3ca2SJerome Brunet							function = "gpio_periphs";
13478a6b3ca2SJerome Brunet							bias-pull-down;
13488a6b3ca2SJerome Brunet							drive-strength-microamp = <4000>;
13498a6b3ca2SJerome Brunet						};
13508a6b3ca2SJerome Brunet					};
13518a6b3ca2SJerome Brunet
13528a6b3ca2SJerome Brunet
1353ff4f8b6cSNeil Armstrong					uart_a_pins: uart-a {
1354ff4f8b6cSNeil Armstrong						mux {
1355ff4f8b6cSNeil Armstrong							groups = "uart_a_tx",
1356ff4f8b6cSNeil Armstrong								 "uart_a_rx";
1357ff4f8b6cSNeil Armstrong							function = "uart_a";
1358ff4f8b6cSNeil Armstrong							bias-disable;
1359ff4f8b6cSNeil Armstrong						};
1360ff4f8b6cSNeil Armstrong					};
1361ff4f8b6cSNeil Armstrong
1362ff4f8b6cSNeil Armstrong					uart_a_cts_rts_pins: uart-a-cts-rts {
1363ff4f8b6cSNeil Armstrong						mux {
1364ff4f8b6cSNeil Armstrong							groups = "uart_a_cts",
1365ff4f8b6cSNeil Armstrong								 "uart_a_rts";
1366ff4f8b6cSNeil Armstrong							function = "uart_a";
1367ff4f8b6cSNeil Armstrong							bias-disable;
1368ff4f8b6cSNeil Armstrong						};
1369ff4f8b6cSNeil Armstrong					};
1370ff4f8b6cSNeil Armstrong
1371ff4f8b6cSNeil Armstrong					uart_b_pins: uart-b {
1372ff4f8b6cSNeil Armstrong						mux {
1373ff4f8b6cSNeil Armstrong							groups = "uart_b_tx",
1374ff4f8b6cSNeil Armstrong								 "uart_b_rx";
1375ff4f8b6cSNeil Armstrong							function = "uart_b";
1376ff4f8b6cSNeil Armstrong							bias-disable;
1377ff4f8b6cSNeil Armstrong						};
1378ff4f8b6cSNeil Armstrong					};
1379ff4f8b6cSNeil Armstrong
1380ff4f8b6cSNeil Armstrong					uart_c_pins: uart-c {
1381ff4f8b6cSNeil Armstrong						mux {
1382ff4f8b6cSNeil Armstrong							groups = "uart_c_tx",
1383ff4f8b6cSNeil Armstrong								 "uart_c_rx";
1384ff4f8b6cSNeil Armstrong							function = "uart_c";
1385ff4f8b6cSNeil Armstrong							bias-disable;
1386ff4f8b6cSNeil Armstrong						};
1387ff4f8b6cSNeil Armstrong					};
1388ff4f8b6cSNeil Armstrong
1389ff4f8b6cSNeil Armstrong					uart_c_cts_rts_pins: uart-c-cts-rts {
1390ff4f8b6cSNeil Armstrong						mux {
1391ff4f8b6cSNeil Armstrong							groups = "uart_c_cts",
1392ff4f8b6cSNeil Armstrong								 "uart_c_rts";
1393ff4f8b6cSNeil Armstrong							function = "uart_c";
1394ff4f8b6cSNeil Armstrong							bias-disable;
1395ff4f8b6cSNeil Armstrong						};
1396ff4f8b6cSNeil Armstrong					};
139711a7bea1SJerome Brunet				};
13989c8c52f7SJianxin Pan			};
13999c8c52f7SJianxin Pan
14009baf7d6bSNeil Armstrong			usb2_phy0: phy@36000 {
14019baf7d6bSNeil Armstrong				compatible = "amlogic,g12a-usb2-phy";
14029baf7d6bSNeil Armstrong				reg = <0x0 0x36000 0x0 0x2000>;
14039baf7d6bSNeil Armstrong				clocks = <&xtal>;
14049baf7d6bSNeil Armstrong				clock-names = "xtal";
14059baf7d6bSNeil Armstrong				resets = <&reset RESET_USB_PHY20>;
14069baf7d6bSNeil Armstrong				reset-names = "phy";
14079baf7d6bSNeil Armstrong				#phy-cells = <0>;
14089baf7d6bSNeil Armstrong			};
14099baf7d6bSNeil Armstrong
1410083feecdSNeil Armstrong			dmc: bus@38000 {
1411083feecdSNeil Armstrong				compatible = "simple-bus";
1412083feecdSNeil Armstrong				reg = <0x0 0x38000 0x0 0x400>;
1413083feecdSNeil Armstrong				#address-cells = <2>;
1414083feecdSNeil Armstrong				#size-cells = <2>;
1415083feecdSNeil Armstrong				ranges = <0x0 0x0 0x0 0x38000 0x0 0x400>;
1416083feecdSNeil Armstrong
1417083feecdSNeil Armstrong				canvas: video-lut@48 {
1418083feecdSNeil Armstrong					compatible = "amlogic,canvas";
1419083feecdSNeil Armstrong					reg = <0x0 0x48 0x0 0x14>;
1420083feecdSNeil Armstrong				};
1421083feecdSNeil Armstrong			};
1422083feecdSNeil Armstrong
14239baf7d6bSNeil Armstrong			usb2_phy1: phy@3a000 {
14249baf7d6bSNeil Armstrong				compatible = "amlogic,g12a-usb2-phy";
14259baf7d6bSNeil Armstrong				reg = <0x0 0x3a000 0x0 0x2000>;
14269baf7d6bSNeil Armstrong				clocks = <&xtal>;
14279baf7d6bSNeil Armstrong				clock-names = "xtal";
14289baf7d6bSNeil Armstrong				resets = <&reset RESET_USB_PHY21>;
14299baf7d6bSNeil Armstrong				reset-names = "phy";
14309baf7d6bSNeil Armstrong				#phy-cells = <0>;
14319baf7d6bSNeil Armstrong			};
14329baf7d6bSNeil Armstrong
1433503f5fedSJerome Brunet			hiu: bus@3c000 {
14349c8c52f7SJianxin Pan				compatible = "simple-bus";
1435503f5fedSJerome Brunet				reg = <0x0 0x3c000 0x0 0x1400>;
14369c8c52f7SJianxin Pan				#address-cells = <2>;
14379c8c52f7SJianxin Pan				#size-cells = <2>;
1438503f5fedSJerome Brunet				ranges = <0x0 0x0 0x0 0x3c000 0x0 0x1400>;
1439785fb434SJerome Brunet
1440785fb434SJerome Brunet				hhi: system-controller@0 {
1441785fb434SJerome Brunet					compatible = "amlogic,meson-gx-hhi-sysctrl",
1442785fb434SJerome Brunet						     "simple-mfd", "syscon";
1443785fb434SJerome Brunet					reg = <0 0 0 0x400>;
1444785fb434SJerome Brunet
1445785fb434SJerome Brunet					clkc: clock-controller {
1446785fb434SJerome Brunet						compatible = "amlogic,g12a-clkc";
1447785fb434SJerome Brunet						#clock-cells = <1>;
1448785fb434SJerome Brunet						clocks = <&xtal>;
1449785fb434SJerome Brunet						clock-names = "xtal";
1450785fb434SJerome Brunet					};
1451785fb434SJerome Brunet				};
1452503f5fedSJerome Brunet			};
14539baf7d6bSNeil Armstrong
14549c5dc032SJerome Brunet			pdm: audio-controller@40000 {
14559c5dc032SJerome Brunet				compatible = "amlogic,g12a-pdm",
14569c5dc032SJerome Brunet					     "amlogic,axg-pdm";
14579c5dc032SJerome Brunet				reg = <0x0 0x40000 0x0 0x34>;
14589c5dc032SJerome Brunet				#sound-dai-cells = <0>;
14599c5dc032SJerome Brunet				sound-name-prefix = "PDM";
14609c5dc032SJerome Brunet				clocks = <&clkc_audio AUD_CLKID_PDM>,
14619c5dc032SJerome Brunet					 <&clkc_audio AUD_CLKID_PDM_DCLK>,
14629c5dc032SJerome Brunet					 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
14639c5dc032SJerome Brunet				clock-names = "pclk", "dclk", "sysclk";
14649c5dc032SJerome Brunet				status = "disabled";
14659c5dc032SJerome Brunet			};
14669c5dc032SJerome Brunet
146703c3f08cSJerome Brunet			audio: bus@42000 {
146803c3f08cSJerome Brunet				compatible = "simple-bus";
146903c3f08cSJerome Brunet				reg = <0x0 0x42000 0x0 0x2000>;
147003c3f08cSJerome Brunet				#address-cells = <2>;
147103c3f08cSJerome Brunet				#size-cells = <2>;
147203c3f08cSJerome Brunet				ranges = <0x0 0x0 0x0 0x42000 0x0 0x2000>;
147303c3f08cSJerome Brunet
147403c3f08cSJerome Brunet				clkc_audio: clock-controller@0 {
147503c3f08cSJerome Brunet					status = "disabled";
147603c3f08cSJerome Brunet					compatible = "amlogic,g12a-audio-clkc";
147703c3f08cSJerome Brunet					reg = <0x0 0x0 0x0 0xb4>;
147803c3f08cSJerome Brunet					#clock-cells = <1>;
147903c3f08cSJerome Brunet
148003c3f08cSJerome Brunet					clocks = <&clkc CLKID_AUDIO>,
148103c3f08cSJerome Brunet						 <&clkc CLKID_MPLL0>,
148203c3f08cSJerome Brunet						 <&clkc CLKID_MPLL1>,
148303c3f08cSJerome Brunet						 <&clkc CLKID_MPLL2>,
148403c3f08cSJerome Brunet						 <&clkc CLKID_MPLL3>,
148503c3f08cSJerome Brunet						 <&clkc CLKID_HIFI_PLL>,
148603c3f08cSJerome Brunet						 <&clkc CLKID_FCLK_DIV3>,
148703c3f08cSJerome Brunet						 <&clkc CLKID_FCLK_DIV4>,
148803c3f08cSJerome Brunet						 <&clkc CLKID_GP0_PLL>;
148903c3f08cSJerome Brunet					clock-names = "pclk",
149003c3f08cSJerome Brunet						      "mst_in0",
149103c3f08cSJerome Brunet						      "mst_in1",
149203c3f08cSJerome Brunet						      "mst_in2",
149303c3f08cSJerome Brunet						      "mst_in3",
149403c3f08cSJerome Brunet						      "mst_in4",
149503c3f08cSJerome Brunet						      "mst_in5",
149603c3f08cSJerome Brunet						      "mst_in6",
149703c3f08cSJerome Brunet						      "mst_in7";
149803c3f08cSJerome Brunet
149903c3f08cSJerome Brunet					resets = <&reset RESET_AUDIO>;
150003c3f08cSJerome Brunet				};
15015dc0f28fSJerome Brunet
1502c59b7fe5SJerome Brunet				toddr_a: audio-controller@100 {
1503c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-toddr",
1504c59b7fe5SJerome Brunet						     "amlogic,axg-toddr";
1505c59b7fe5SJerome Brunet					reg = <0x0 0x100 0x0 0x1c>;
1506c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1507c59b7fe5SJerome Brunet					sound-name-prefix = "TODDR_A";
1508c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 148 IRQ_TYPE_EDGE_RISING>;
1509c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
1510c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_TODDR_A>;
1511c59b7fe5SJerome Brunet					status = "disabled";
1512c59b7fe5SJerome Brunet				};
1513c59b7fe5SJerome Brunet
1514c59b7fe5SJerome Brunet				toddr_b: audio-controller@140 {
1515c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-toddr",
1516c59b7fe5SJerome Brunet						     "amlogic,axg-toddr";
1517c59b7fe5SJerome Brunet					reg = <0x0 0x140 0x0 0x1c>;
1518c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1519c59b7fe5SJerome Brunet					sound-name-prefix = "TODDR_B";
1520c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 149 IRQ_TYPE_EDGE_RISING>;
1521c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
1522c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_TODDR_B>;
1523c59b7fe5SJerome Brunet					status = "disabled";
1524c59b7fe5SJerome Brunet				};
1525c59b7fe5SJerome Brunet
1526c59b7fe5SJerome Brunet				toddr_c: audio-controller@180 {
1527c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-toddr",
1528c59b7fe5SJerome Brunet						     "amlogic,axg-toddr";
1529c59b7fe5SJerome Brunet					reg = <0x0 0x180 0x0 0x1c>;
1530c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1531c59b7fe5SJerome Brunet					sound-name-prefix = "TODDR_C";
1532c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>;
1533c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
1534c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_TODDR_C>;
1535c59b7fe5SJerome Brunet					status = "disabled";
1536c59b7fe5SJerome Brunet				};
1537c59b7fe5SJerome Brunet
1538c59b7fe5SJerome Brunet				frddr_a: audio-controller@1c0 {
1539c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-frddr",
1540c59b7fe5SJerome Brunet						     "amlogic,axg-frddr";
1541c59b7fe5SJerome Brunet					reg = <0x0 0x1c0 0x0 0x1c>;
1542c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1543c59b7fe5SJerome Brunet					sound-name-prefix = "FRDDR_A";
1544c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>;
1545c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
1546c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_FRDDR_A>;
1547c59b7fe5SJerome Brunet					status = "disabled";
1548c59b7fe5SJerome Brunet				};
1549c59b7fe5SJerome Brunet
1550c59b7fe5SJerome Brunet				frddr_b: audio-controller@200 {
1551c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-frddr",
1552c59b7fe5SJerome Brunet						     "amlogic,axg-frddr";
1553c59b7fe5SJerome Brunet					reg = <0x0 0x200 0x0 0x1c>;
1554c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1555c59b7fe5SJerome Brunet					sound-name-prefix = "FRDDR_B";
1556c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 153 IRQ_TYPE_EDGE_RISING>;
1557c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
1558c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_FRDDR_B>;
1559c59b7fe5SJerome Brunet					status = "disabled";
1560c59b7fe5SJerome Brunet				};
1561c59b7fe5SJerome Brunet
1562c59b7fe5SJerome Brunet				frddr_c: audio-controller@240 {
1563c59b7fe5SJerome Brunet					compatible = "amlogic,g12a-frddr",
1564c59b7fe5SJerome Brunet						     "amlogic,axg-frddr";
1565c59b7fe5SJerome Brunet					reg = <0x0 0x240 0x0 0x1c>;
1566c59b7fe5SJerome Brunet					#sound-dai-cells = <0>;
1567c59b7fe5SJerome Brunet					sound-name-prefix = "FRDDR_C";
1568c59b7fe5SJerome Brunet					interrupts = <GIC_SPI 154 IRQ_TYPE_EDGE_RISING>;
1569c59b7fe5SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
1570c59b7fe5SJerome Brunet					resets = <&arb AXG_ARB_FRDDR_C>;
1571c59b7fe5SJerome Brunet					status = "disabled";
1572c59b7fe5SJerome Brunet				};
1573c59b7fe5SJerome Brunet
15745dc0f28fSJerome Brunet				arb: reset-controller@280 {
15755dc0f28fSJerome Brunet					status = "disabled";
15765dc0f28fSJerome Brunet					compatible = "amlogic,meson-axg-audio-arb";
15775dc0f28fSJerome Brunet					reg = <0x0 0x280 0x0 0x4>;
15785dc0f28fSJerome Brunet					#reset-cells = <1>;
15795dc0f28fSJerome Brunet					clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
15805dc0f28fSJerome Brunet				};
15811ff38c86SJerome Brunet
15821ff38c86SJerome Brunet				tdmin_a: audio-controller@300 {
15831ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
15841ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
15851ff38c86SJerome Brunet					reg = <0x0 0x300 0x0 0x40>;
15861ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_A";
15871ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_A>,
15881ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>,
15891ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>,
15901ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>,
15911ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>;
15921ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
15931ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
15941ff38c86SJerome Brunet					status = "disabled";
15951ff38c86SJerome Brunet				};
15961ff38c86SJerome Brunet
15971ff38c86SJerome Brunet				tdmin_b: audio-controller@340 {
15981ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
15991ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
16001ff38c86SJerome Brunet					reg = <0x0 0x340 0x0 0x40>;
16011ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_B";
16021ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_B>,
16031ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>,
16041ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>,
16051ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>,
16061ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>;
16071ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16081ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16091ff38c86SJerome Brunet					status = "disabled";
16101ff38c86SJerome Brunet				};
16111ff38c86SJerome Brunet
16121ff38c86SJerome Brunet				tdmin_c: audio-controller@380 {
16131ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
16141ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
16151ff38c86SJerome Brunet					reg = <0x0 0x380 0x0 0x40>;
16161ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_C";
16171ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_C>,
16181ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>,
16191ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>,
16201ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>,
16211ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>;
16221ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16231ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16241ff38c86SJerome Brunet					status = "disabled";
16251ff38c86SJerome Brunet				};
16261ff38c86SJerome Brunet
16271ff38c86SJerome Brunet				tdmin_lb: audio-controller@3c0 {
16281ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmin",
16291ff38c86SJerome Brunet						     "amlogic,axg-tdmin";
16301ff38c86SJerome Brunet					reg = <0x0 0x3c0 0x0 0x40>;
16311ff38c86SJerome Brunet					sound-name-prefix = "TDMIN_LB";
16321ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>,
16331ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>,
16341ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>,
16351ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>,
16361ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>;
16371ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16381ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16391ff38c86SJerome Brunet					status = "disabled";
16401ff38c86SJerome Brunet				};
16411ff38c86SJerome Brunet
1642e3d3b132SJerome Brunet				spdifin: audio-controller@400 {
1643e3d3b132SJerome Brunet					compatible = "amlogic,g12a-spdifin",
1644e3d3b132SJerome Brunet						     "amlogic,axg-spdifin";
1645e3d3b132SJerome Brunet					reg = <0x0 0x400 0x0 0x30>;
1646e3d3b132SJerome Brunet					#sound-dai-cells = <0>;
1647e3d3b132SJerome Brunet					sound-name-prefix = "SPDIFIN";
1648e3d3b132SJerome Brunet					interrupts = <GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
1649e3d3b132SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_SPDIFIN>,
1650e3d3b132SJerome Brunet						 <&clkc_audio AUD_CLKID_SPDIFIN_CLK>;
1651e3d3b132SJerome Brunet					clock-names = "pclk", "refclk";
1652e3d3b132SJerome Brunet					status = "disabled";
1653e3d3b132SJerome Brunet				};
1654e3d3b132SJerome Brunet
1655649675dbSJerome Brunet				spdifout: audio-controller@480 {
1656649675dbSJerome Brunet					compatible = "amlogic,g12a-spdifout",
1657649675dbSJerome Brunet						     "amlogic,axg-spdifout";
1658649675dbSJerome Brunet					reg = <0x0 0x480 0x0 0x50>;
1659649675dbSJerome Brunet					#sound-dai-cells = <0>;
1660649675dbSJerome Brunet					sound-name-prefix = "SPDIFOUT";
1661649675dbSJerome Brunet					clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
1662649675dbSJerome Brunet						 <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
1663649675dbSJerome Brunet					clock-names = "pclk", "mclk";
1664649675dbSJerome Brunet					status = "disabled";
1665649675dbSJerome Brunet				};
1666649675dbSJerome Brunet
16671ff38c86SJerome Brunet				tdmout_a: audio-controller@500 {
16681ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmout";
16691ff38c86SJerome Brunet					reg = <0x0 0x500 0x0 0x40>;
16701ff38c86SJerome Brunet					sound-name-prefix = "TDMOUT_A";
16711ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
16721ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
16731ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
16741ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
16751ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
16761ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16771ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16781ff38c86SJerome Brunet					status = "disabled";
16791ff38c86SJerome Brunet				};
16801ff38c86SJerome Brunet
16811ff38c86SJerome Brunet				tdmout_b: audio-controller@540 {
16821ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmout";
16831ff38c86SJerome Brunet					reg = <0x0 0x540 0x0 0x40>;
16841ff38c86SJerome Brunet					sound-name-prefix = "TDMOUT_B";
16851ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>,
16861ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>,
16871ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>,
16881ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>,
16891ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>;
16901ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
16911ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
16921ff38c86SJerome Brunet					status = "disabled";
16931ff38c86SJerome Brunet				};
16941ff38c86SJerome Brunet
16951ff38c86SJerome Brunet				tdmout_c: audio-controller@580 {
16961ff38c86SJerome Brunet					compatible = "amlogic,g12a-tdmout";
16971ff38c86SJerome Brunet					reg = <0x0 0x580 0x0 0x40>;
16981ff38c86SJerome Brunet					sound-name-prefix = "TDMOUT_C";
16991ff38c86SJerome Brunet					clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>,
17001ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>,
17011ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>,
17021ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>,
17031ff38c86SJerome Brunet						 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>;
17041ff38c86SJerome Brunet					clock-names = "pclk", "sclk", "sclk_sel",
17051ff38c86SJerome Brunet						      "lrclk", "lrclk_sel";
17061ff38c86SJerome Brunet					status = "disabled";
17071ff38c86SJerome Brunet				};
1708649675dbSJerome Brunet
1709649675dbSJerome Brunet				spdifout_b: audio-controller@680 {
1710649675dbSJerome Brunet					compatible = "amlogic,g12a-spdifout",
1711649675dbSJerome Brunet						     "amlogic,axg-spdifout";
1712649675dbSJerome Brunet					reg = <0x0 0x680 0x0 0x50>;
1713649675dbSJerome Brunet					#sound-dai-cells = <0>;
1714649675dbSJerome Brunet					sound-name-prefix = "SPDIFOUT_B";
1715649675dbSJerome Brunet					clocks = <&clkc_audio AUD_CLKID_SPDIFOUT_B>,
1716649675dbSJerome Brunet						 <&clkc_audio AUD_CLKID_SPDIFOUT_B_CLK>;
1717649675dbSJerome Brunet					clock-names = "pclk", "mclk";
1718649675dbSJerome Brunet					status = "disabled";
1719649675dbSJerome Brunet				};
1720d7556f49SJerome Brunet
1721d7556f49SJerome Brunet				tohdmitx: audio-controller@744 {
1722d7556f49SJerome Brunet					compatible = "amlogic,g12a-tohdmitx";
1723d7556f49SJerome Brunet					reg = <0x0 0x744 0x0 0x4>;
1724d7556f49SJerome Brunet					#sound-dai-cells = <1>;
1725d7556f49SJerome Brunet					sound-name-prefix = "TOHDMITX";
1726d7556f49SJerome Brunet					status = "disabled";
1727d7556f49SJerome Brunet				};
172803c3f08cSJerome Brunet			};
172903c3f08cSJerome Brunet
17309baf7d6bSNeil Armstrong			usb3_pcie_phy: phy@46000 {
17319baf7d6bSNeil Armstrong				compatible = "amlogic,g12a-usb3-pcie-phy";
17329baf7d6bSNeil Armstrong				reg = <0x0 0x46000 0x0 0x2000>;
17339baf7d6bSNeil Armstrong				clocks = <&clkc CLKID_PCIE_PLL>;
17349baf7d6bSNeil Armstrong				clock-names = "ref_clk";
17359baf7d6bSNeil Armstrong				resets = <&reset RESET_PCIE_PHY>;
17369baf7d6bSNeil Armstrong				reset-names = "phy";
17379baf7d6bSNeil Armstrong				assigned-clocks = <&clkc CLKID_PCIE_PLL>;
17389baf7d6bSNeil Armstrong				assigned-clock-rates = <100000000>;
17399baf7d6bSNeil Armstrong				#phy-cells = <1>;
17409baf7d6bSNeil Armstrong			};
1741280c17dfSJerome Brunet
1742280c17dfSJerome Brunet			eth_phy: mdio-multiplexer@4c000 {
1743280c17dfSJerome Brunet				compatible = "amlogic,g12a-mdio-mux";
1744280c17dfSJerome Brunet				reg = <0x0 0x4c000 0x0 0xa4>;
1745280c17dfSJerome Brunet				clocks = <&clkc CLKID_ETH_PHY>,
1746280c17dfSJerome Brunet					 <&xtal>,
1747280c17dfSJerome Brunet					 <&clkc CLKID_MPLL_50M>;
1748280c17dfSJerome Brunet				clock-names = "pclk", "clkin0", "clkin1";
1749280c17dfSJerome Brunet				mdio-parent-bus = <&mdio0>;
1750280c17dfSJerome Brunet				#address-cells = <1>;
1751280c17dfSJerome Brunet				#size-cells = <0>;
1752280c17dfSJerome Brunet
1753280c17dfSJerome Brunet				ext_mdio: mdio@0 {
1754280c17dfSJerome Brunet					reg = <0>;
1755280c17dfSJerome Brunet					#address-cells = <1>;
1756280c17dfSJerome Brunet					#size-cells = <0>;
1757280c17dfSJerome Brunet				};
1758280c17dfSJerome Brunet
1759280c17dfSJerome Brunet				int_mdio: mdio@1 {
1760280c17dfSJerome Brunet					reg = <1>;
1761280c17dfSJerome Brunet					#address-cells = <1>;
1762280c17dfSJerome Brunet					#size-cells = <0>;
1763280c17dfSJerome Brunet
1764280c17dfSJerome Brunet					internal_ephy: ethernet_phy@8 {
1765280c17dfSJerome Brunet						compatible = "ethernet-phy-id0180.3301",
1766280c17dfSJerome Brunet							     "ethernet-phy-ieee802.3-c22";
1767280c17dfSJerome Brunet						interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
1768280c17dfSJerome Brunet						reg = <8>;
1769280c17dfSJerome Brunet						max-speed = <100>;
1770280c17dfSJerome Brunet					};
1771280c17dfSJerome Brunet				};
1772280c17dfSJerome Brunet			};
17739c8c52f7SJianxin Pan		};
17749c8c52f7SJianxin Pan
17759c8c52f7SJianxin Pan		aobus: bus@ff800000 {
17769c8c52f7SJianxin Pan			compatible = "simple-bus";
17779c8c52f7SJianxin Pan			reg = <0x0 0xff800000 0x0 0x100000>;
17789c8c52f7SJianxin Pan			#address-cells = <2>;
17799c8c52f7SJianxin Pan			#size-cells = <2>;
17809c8c52f7SJianxin Pan			ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
17819c8c52f7SJianxin Pan
1782b019f4a4SNeil Armstrong			rti: sys-ctrl@0 {
1783b019f4a4SNeil Armstrong				compatible = "amlogic,meson-gx-ao-sysctrl",
1784b019f4a4SNeil Armstrong					     "simple-mfd", "syscon";
1785b019f4a4SNeil Armstrong				reg = <0x0 0x0 0x0 0x100>;
1786b019f4a4SNeil Armstrong				#address-cells = <2>;
1787b019f4a4SNeil Armstrong				#size-cells = <2>;
1788b019f4a4SNeil Armstrong				ranges = <0x0 0x0 0x0 0x0 0x0 0x100>;
1789b019f4a4SNeil Armstrong
1790b019f4a4SNeil Armstrong				clkc_AO: clock-controller {
1791b019f4a4SNeil Armstrong					compatible = "amlogic,meson-g12a-aoclkc";
1792b019f4a4SNeil Armstrong					#clock-cells = <1>;
1793b019f4a4SNeil Armstrong					#reset-cells = <1>;
1794b019f4a4SNeil Armstrong					clocks = <&xtal>, <&clkc CLKID_CLK81>;
1795b019f4a4SNeil Armstrong					clock-names = "xtal", "mpeg-clk";
1796b019f4a4SNeil Armstrong				};
179711a7bea1SJerome Brunet
1798083feecdSNeil Armstrong				pwrc_vpu: power-controller-vpu {
1799083feecdSNeil Armstrong					compatible = "amlogic,meson-g12a-pwrc-vpu";
1800083feecdSNeil Armstrong					#power-domain-cells = <0>;
1801083feecdSNeil Armstrong					amlogic,hhi-sysctrl = <&hhi>;
1802083feecdSNeil Armstrong					resets = <&reset RESET_VIU>,
1803083feecdSNeil Armstrong						 <&reset RESET_VENC>,
1804083feecdSNeil Armstrong						 <&reset RESET_VCBUS>,
1805083feecdSNeil Armstrong						 <&reset RESET_BT656>,
1806083feecdSNeil Armstrong						 <&reset RESET_RDMA>,
1807083feecdSNeil Armstrong						 <&reset RESET_VENCI>,
1808083feecdSNeil Armstrong						 <&reset RESET_VENCP>,
1809083feecdSNeil Armstrong						 <&reset RESET_VDAC>,
1810083feecdSNeil Armstrong						 <&reset RESET_VDI6>,
1811083feecdSNeil Armstrong						 <&reset RESET_VENCL>,
1812083feecdSNeil Armstrong						 <&reset RESET_VID_LOCK>;
1813083feecdSNeil Armstrong					clocks = <&clkc CLKID_VPU>,
1814083feecdSNeil Armstrong						 <&clkc CLKID_VAPB>;
1815083feecdSNeil Armstrong					clock-names = "vpu", "vapb";
1816083feecdSNeil Armstrong					/*
1817083feecdSNeil Armstrong					 * VPU clocking is provided by two identical clock paths
1818083feecdSNeil Armstrong					 * VPU_0 and VPU_1 muxed to a single clock by a glitch
1819083feecdSNeil Armstrong					 * free mux to safely change frequency while running.
1820083feecdSNeil Armstrong					 * Same for VAPB but with a final gate after the glitch free mux.
1821083feecdSNeil Armstrong					 */
1822083feecdSNeil Armstrong					assigned-clocks = <&clkc CLKID_VPU_0_SEL>,
1823083feecdSNeil Armstrong							  <&clkc CLKID_VPU_0>,
1824083feecdSNeil Armstrong							  <&clkc CLKID_VPU>, /* Glitch free mux */
1825083feecdSNeil Armstrong							  <&clkc CLKID_VAPB_0_SEL>,
1826083feecdSNeil Armstrong							  <&clkc CLKID_VAPB_0>,
1827083feecdSNeil Armstrong							  <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */
1828083feecdSNeil Armstrong					assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>,
1829083feecdSNeil Armstrong								 <0>, /* Do Nothing */
1830083feecdSNeil Armstrong								 <&clkc CLKID_VPU_0>,
1831083feecdSNeil Armstrong								 <&clkc CLKID_FCLK_DIV4>,
1832083feecdSNeil Armstrong								 <0>, /* Do Nothing */
1833083feecdSNeil Armstrong								 <&clkc CLKID_VAPB_0>;
1834083feecdSNeil Armstrong					assigned-clock-rates = <0>, /* Do Nothing */
1835083feecdSNeil Armstrong							       <666666666>,
1836083feecdSNeil Armstrong							       <0>, /* Do Nothing */
1837083feecdSNeil Armstrong							       <0>, /* Do Nothing */
1838083feecdSNeil Armstrong							       <250000000>,
1839083feecdSNeil Armstrong							       <0>; /* Do Nothing */
1840083feecdSNeil Armstrong				};
1841083feecdSNeil Armstrong
184211a7bea1SJerome Brunet				ao_pinctrl: pinctrl@14 {
184311a7bea1SJerome Brunet					compatible = "amlogic,meson-g12a-aobus-pinctrl";
184411a7bea1SJerome Brunet					#address-cells = <2>;
184511a7bea1SJerome Brunet					#size-cells = <2>;
184611a7bea1SJerome Brunet					ranges;
184711a7bea1SJerome Brunet
184811a7bea1SJerome Brunet					gpio_ao: bank@14 {
184911a7bea1SJerome Brunet						reg = <0x0 0x14 0x0 0x8>,
185011a7bea1SJerome Brunet						      <0x0 0x1c 0x0 0x8>,
185111a7bea1SJerome Brunet						      <0x0 0x24 0x0 0x14>;
185211a7bea1SJerome Brunet						reg-names = "mux",
185311a7bea1SJerome Brunet							    "ds",
185411a7bea1SJerome Brunet							    "gpio";
185511a7bea1SJerome Brunet						gpio-controller;
185611a7bea1SJerome Brunet						#gpio-cells = <2>;
185711a7bea1SJerome Brunet						gpio-ranges = <&ao_pinctrl 0 0 15>;
185811a7bea1SJerome Brunet					};
1859e92546c2SJerome Brunet
18609951aca6SGuillaume La Roque					i2c_ao_sck_pins: i2c_ao_sck_pins {
18619951aca6SGuillaume La Roque						mux {
18629951aca6SGuillaume La Roque							groups = "i2c_ao_sck";
18639951aca6SGuillaume La Roque							function = "i2c_ao";
18649951aca6SGuillaume La Roque							bias-disable;
18659951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18669951aca6SGuillaume La Roque						};
18679951aca6SGuillaume La Roque					};
18689951aca6SGuillaume La Roque
18699951aca6SGuillaume La Roque					i2c_ao_sda_pins: i2c_ao_sda {
18709951aca6SGuillaume La Roque						mux {
18719951aca6SGuillaume La Roque							groups = "i2c_ao_sda";
18729951aca6SGuillaume La Roque							function = "i2c_ao";
18739951aca6SGuillaume La Roque							bias-disable;
18749951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18759951aca6SGuillaume La Roque						};
18769951aca6SGuillaume La Roque					};
18779951aca6SGuillaume La Roque
18789951aca6SGuillaume La Roque					i2c_ao_sck_e_pins: i2c_ao_sck_e {
18799951aca6SGuillaume La Roque						mux {
18809951aca6SGuillaume La Roque							groups = "i2c_ao_sck_e";
18819951aca6SGuillaume La Roque							function = "i2c_ao";
18829951aca6SGuillaume La Roque							bias-disable;
18839951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18849951aca6SGuillaume La Roque						};
18859951aca6SGuillaume La Roque					};
18869951aca6SGuillaume La Roque
18879951aca6SGuillaume La Roque					i2c_ao_sda_e_pins: i2c_ao_sda_e {
18889951aca6SGuillaume La Roque						mux {
18899951aca6SGuillaume La Roque							groups = "i2c_ao_sda_e";
18909951aca6SGuillaume La Roque							function = "i2c_ao";
18919951aca6SGuillaume La Roque							bias-disable;
18929951aca6SGuillaume La Roque							drive-strength-microamp = <3000>;
18939951aca6SGuillaume La Roque						};
18949951aca6SGuillaume La Roque					};
18959951aca6SGuillaume La Roque
18961ff38c86SJerome Brunet					mclk0_ao_pins: mclk0-ao {
18971ff38c86SJerome Brunet						mux {
18981ff38c86SJerome Brunet							groups = "mclk0_ao";
18991ff38c86SJerome Brunet							function = "mclk0_ao";
19001ff38c86SJerome Brunet							bias-disable;
19011ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19021ff38c86SJerome Brunet						};
19031ff38c86SJerome Brunet					};
19041ff38c86SJerome Brunet
19051ff38c86SJerome Brunet					tdm_ao_b_din0_pins: tdm-ao-b-din0 {
19061ff38c86SJerome Brunet						mux {
19071ff38c86SJerome Brunet							groups = "tdm_ao_b_din0";
19081ff38c86SJerome Brunet							function = "tdm_ao_b";
19091ff38c86SJerome Brunet							bias-disable;
19101ff38c86SJerome Brunet						};
19111ff38c86SJerome Brunet					};
19121ff38c86SJerome Brunet
1913649675dbSJerome Brunet					spdif_ao_out_pins: spdif-ao-out {
1914649675dbSJerome Brunet						mux {
1915649675dbSJerome Brunet							groups = "spdif_ao_out";
1916649675dbSJerome Brunet							function = "spdif_ao_out";
1917649675dbSJerome Brunet							drive-strength-microamp = <500>;
1918649675dbSJerome Brunet							bias-disable;
1919649675dbSJerome Brunet						};
1920649675dbSJerome Brunet					};
1921649675dbSJerome Brunet
19221ff38c86SJerome Brunet					tdm_ao_b_din1_pins: tdm-ao-b-din1 {
19231ff38c86SJerome Brunet						mux {
19241ff38c86SJerome Brunet							groups = "tdm_ao_b_din1";
19251ff38c86SJerome Brunet							function = "tdm_ao_b";
19261ff38c86SJerome Brunet							bias-disable;
19271ff38c86SJerome Brunet						};
19281ff38c86SJerome Brunet					};
19291ff38c86SJerome Brunet
19301ff38c86SJerome Brunet					tdm_ao_b_din2_pins: tdm-ao-b-din2 {
19311ff38c86SJerome Brunet						mux {
19321ff38c86SJerome Brunet							groups = "tdm_ao_b_din2";
19331ff38c86SJerome Brunet							function = "tdm_ao_b";
19341ff38c86SJerome Brunet							bias-disable;
19351ff38c86SJerome Brunet						};
19361ff38c86SJerome Brunet					};
19371ff38c86SJerome Brunet
19381ff38c86SJerome Brunet					tdm_ao_b_dout0_pins: tdm-ao-b-dout0 {
19391ff38c86SJerome Brunet						mux {
19401ff38c86SJerome Brunet							groups = "tdm_ao_b_dout0";
19411ff38c86SJerome Brunet							function = "tdm_ao_b";
19421ff38c86SJerome Brunet							bias-disable;
19431ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19441ff38c86SJerome Brunet						};
19451ff38c86SJerome Brunet					};
19461ff38c86SJerome Brunet
19471ff38c86SJerome Brunet					tdm_ao_b_dout1_pins: tdm-ao-b-dout1 {
19481ff38c86SJerome Brunet						mux {
19491ff38c86SJerome Brunet							groups = "tdm_ao_b_dout1";
19501ff38c86SJerome Brunet							function = "tdm_ao_b";
19511ff38c86SJerome Brunet							bias-disable;
19521ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19531ff38c86SJerome Brunet						};
19541ff38c86SJerome Brunet					};
19551ff38c86SJerome Brunet
19561ff38c86SJerome Brunet					tdm_ao_b_dout2_pins: tdm-ao-b-dout2 {
19571ff38c86SJerome Brunet						mux {
19581ff38c86SJerome Brunet							groups = "tdm_ao_b_dout2";
19591ff38c86SJerome Brunet							function = "tdm_ao_b";
19601ff38c86SJerome Brunet							bias-disable;
19611ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19621ff38c86SJerome Brunet						};
19631ff38c86SJerome Brunet					};
19641ff38c86SJerome Brunet
19651ff38c86SJerome Brunet					tdm_ao_b_fs_pins: tdm-ao-b-fs {
19661ff38c86SJerome Brunet						mux {
19671ff38c86SJerome Brunet							groups = "tdm_ao_b_fs";
19681ff38c86SJerome Brunet							function = "tdm_ao_b";
19691ff38c86SJerome Brunet							bias-disable;
19701ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19711ff38c86SJerome Brunet						};
19721ff38c86SJerome Brunet					};
19731ff38c86SJerome Brunet
19741ff38c86SJerome Brunet					tdm_ao_b_sclk_pins: tdm-ao-b-sclk {
19751ff38c86SJerome Brunet						mux {
19761ff38c86SJerome Brunet							groups = "tdm_ao_b_sclk";
19771ff38c86SJerome Brunet							function = "tdm_ao_b";
19781ff38c86SJerome Brunet							bias-disable;
19791ff38c86SJerome Brunet							drive-strength-microamp = <3000>;
19801ff38c86SJerome Brunet						};
19811ff38c86SJerome Brunet					};
19821ff38c86SJerome Brunet
19831ff38c86SJerome Brunet					tdm_ao_b_slv_fs_pins: tdm-ao-b-slv-fs {
19841ff38c86SJerome Brunet						mux {
19851ff38c86SJerome Brunet							groups = "tdm_ao_b_slv_fs";
19861ff38c86SJerome Brunet							function = "tdm_ao_b";
19871ff38c86SJerome Brunet							bias-disable;
19881ff38c86SJerome Brunet						};
19891ff38c86SJerome Brunet					};
19901ff38c86SJerome Brunet
19911ff38c86SJerome Brunet					tdm_ao_b_slv_sclk_pins: tdm-ao-b-slv-sclk {
19921ff38c86SJerome Brunet						mux {
19931ff38c86SJerome Brunet							groups = "tdm_ao_b_slv_sclk";
19941ff38c86SJerome Brunet							function = "tdm_ao_b";
19951ff38c86SJerome Brunet							bias-disable;
19961ff38c86SJerome Brunet						};
19971ff38c86SJerome Brunet					};
19981ff38c86SJerome Brunet
1999e92546c2SJerome Brunet					uart_ao_a_pins: uart-a-ao {
2000e92546c2SJerome Brunet						mux {
2001e92546c2SJerome Brunet							groups = "uart_ao_a_tx",
2002e92546c2SJerome Brunet								 "uart_ao_a_rx";
2003e92546c2SJerome Brunet							function = "uart_ao_a";
2004e92546c2SJerome Brunet							bias-disable;
2005e92546c2SJerome Brunet						};
2006e92546c2SJerome Brunet					};
2007e92546c2SJerome Brunet
2008e92546c2SJerome Brunet					uart_ao_a_cts_rts_pins: uart-ao-a-cts-rts {
2009e92546c2SJerome Brunet						mux {
2010e92546c2SJerome Brunet							groups = "uart_ao_a_cts",
2011e92546c2SJerome Brunet								 "uart_ao_a_rts";
2012e92546c2SJerome Brunet							function = "uart_ao_a";
2013e92546c2SJerome Brunet							bias-disable;
2014e92546c2SJerome Brunet						};
2015e92546c2SJerome Brunet					};
2016bb23b125SNeil Armstrong
2017bb23b125SNeil Armstrong					pwm_ao_a_pins: pwm-ao-a {
2018bb23b125SNeil Armstrong						mux {
2019bb23b125SNeil Armstrong							groups = "pwm_ao_a";
2020bb23b125SNeil Armstrong							function = "pwm_ao_a";
2021bb23b125SNeil Armstrong							bias-disable;
2022bb23b125SNeil Armstrong						};
2023bb23b125SNeil Armstrong					};
2024bb23b125SNeil Armstrong
2025bb23b125SNeil Armstrong					pwm_ao_b_pins: pwm-ao-b {
2026bb23b125SNeil Armstrong						mux {
2027bb23b125SNeil Armstrong							groups = "pwm_ao_b";
2028bb23b125SNeil Armstrong							function = "pwm_ao_b";
2029bb23b125SNeil Armstrong							bias-disable;
2030bb23b125SNeil Armstrong						};
2031bb23b125SNeil Armstrong					};
2032bb23b125SNeil Armstrong
2033bb23b125SNeil Armstrong					pwm_ao_c_4_pins: pwm-ao-c-4 {
2034bb23b125SNeil Armstrong						mux {
2035bb23b125SNeil Armstrong							groups = "pwm_ao_c_4";
2036bb23b125SNeil Armstrong							function = "pwm_ao_c";
2037bb23b125SNeil Armstrong							bias-disable;
2038bb23b125SNeil Armstrong						};
2039bb23b125SNeil Armstrong					};
2040bb23b125SNeil Armstrong
2041bb23b125SNeil Armstrong					pwm_ao_c_6_pins: pwm-ao-c-6 {
2042bb23b125SNeil Armstrong						mux {
2043bb23b125SNeil Armstrong							groups = "pwm_ao_c_6";
2044bb23b125SNeil Armstrong							function = "pwm_ao_c";
2045bb23b125SNeil Armstrong							bias-disable;
2046bb23b125SNeil Armstrong						};
2047bb23b125SNeil Armstrong					};
2048bb23b125SNeil Armstrong
2049bb23b125SNeil Armstrong					pwm_ao_d_5_pins: pwm-ao-d-5 {
2050bb23b125SNeil Armstrong						mux {
2051bb23b125SNeil Armstrong							groups = "pwm_ao_d_5";
2052bb23b125SNeil Armstrong							function = "pwm_ao_d";
2053bb23b125SNeil Armstrong							bias-disable;
2054bb23b125SNeil Armstrong						};
2055bb23b125SNeil Armstrong					};
2056bb23b125SNeil Armstrong
2057bb23b125SNeil Armstrong					pwm_ao_d_10_pins: pwm-ao-d-10 {
2058bb23b125SNeil Armstrong						mux {
2059bb23b125SNeil Armstrong							groups = "pwm_ao_d_10";
2060bb23b125SNeil Armstrong							function = "pwm_ao_d";
2061bb23b125SNeil Armstrong							bias-disable;
2062bb23b125SNeil Armstrong						};
2063bb23b125SNeil Armstrong					};
2064bb23b125SNeil Armstrong
2065bb23b125SNeil Armstrong					pwm_ao_d_e_pins: pwm-ao-d-e {
2066bb23b125SNeil Armstrong						mux {
2067bb23b125SNeil Armstrong							groups = "pwm_ao_d_e";
2068bb23b125SNeil Armstrong							function = "pwm_ao_d";
20692bfe8412SNeil Armstrong						};
20702bfe8412SNeil Armstrong					};
20712bfe8412SNeil Armstrong
20722bfe8412SNeil Armstrong					remote_input_ao_pins: remote-input-ao {
20732bfe8412SNeil Armstrong						mux {
20742bfe8412SNeil Armstrong							groups = "remote_ao_input";
20752bfe8412SNeil Armstrong							function = "remote_ao_input";
2076bb23b125SNeil Armstrong							bias-disable;
2077bb23b125SNeil Armstrong						};
2078bb23b125SNeil Armstrong					};
207911a7bea1SJerome Brunet				};
2080b019f4a4SNeil Armstrong			};
2081b019f4a4SNeil Armstrong
208291516e54SNeil Armstrong			cec_AO: cec@100 {
208391516e54SNeil Armstrong				compatible = "amlogic,meson-gx-ao-cec";
208491516e54SNeil Armstrong				reg = <0x0 0x00100 0x0 0x14>;
208591516e54SNeil Armstrong				interrupts = <GIC_SPI 199 IRQ_TYPE_EDGE_RISING>;
208691516e54SNeil Armstrong				clocks = <&clkc_AO CLKID_AO_CEC>;
208791516e54SNeil Armstrong				clock-names = "core";
208891516e54SNeil Armstrong				status = "disabled";
208991516e54SNeil Armstrong			};
209091516e54SNeil Armstrong
20910fa724c5SNeil Armstrong			sec_AO: ao-secure@140 {
20920fa724c5SNeil Armstrong				compatible = "amlogic,meson-gx-ao-secure", "syscon";
20930fa724c5SNeil Armstrong				reg = <0x0 0x140 0x0 0x140>;
20940fa724c5SNeil Armstrong				amlogic,has-chip-id;
20950fa724c5SNeil Armstrong			};
20960fa724c5SNeil Armstrong
209791516e54SNeil Armstrong			cecb_AO: cec@280 {
209891516e54SNeil Armstrong				compatible = "amlogic,meson-g12a-ao-cec";
209991516e54SNeil Armstrong				reg = <0x0 0x00280 0x0 0x1c>;
210091516e54SNeil Armstrong				interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
210191516e54SNeil Armstrong				clocks = <&clkc_AO CLKID_AO_CTS_OSCIN>;
210291516e54SNeil Armstrong				clock-names = "oscin";
210391516e54SNeil Armstrong				status = "disabled";
210491516e54SNeil Armstrong			};
210591516e54SNeil Armstrong
2106bb23b125SNeil Armstrong			pwm_AO_cd: pwm@2000 {
2107bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ao-pwm-cd";
2108bb23b125SNeil Armstrong				reg = <0x0 0x2000 0x0 0x20>;
2109bb23b125SNeil Armstrong				#pwm-cells = <3>;
2110bb23b125SNeil Armstrong				status = "disabled";
2111bb23b125SNeil Armstrong			};
2112bb23b125SNeil Armstrong
21139c8c52f7SJianxin Pan			uart_AO: serial@3000 {
2114503f5fedSJerome Brunet				compatible = "amlogic,meson-gx-uart",
2115503f5fedSJerome Brunet					     "amlogic,meson-ao-uart";
21169c8c52f7SJianxin Pan				reg = <0x0 0x3000 0x0 0x18>;
21179c8c52f7SJianxin Pan				interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
21189a690907SJerome Brunet				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART>, <&xtal>;
21199c8c52f7SJianxin Pan				clock-names = "xtal", "pclk", "baud";
21209c8c52f7SJianxin Pan				status = "disabled";
21219c8c52f7SJianxin Pan			};
21229c8c52f7SJianxin Pan
21239c8c52f7SJianxin Pan			uart_AO_B: serial@4000 {
2124503f5fedSJerome Brunet				compatible = "amlogic,meson-gx-uart",
2125503f5fedSJerome Brunet					     "amlogic,meson-ao-uart";
21269c8c52f7SJianxin Pan				reg = <0x0 0x4000 0x0 0x18>;
21279c8c52f7SJianxin Pan				interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
21289a690907SJerome Brunet				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
21299c8c52f7SJianxin Pan				clock-names = "xtal", "pclk", "baud";
21309c8c52f7SJianxin Pan				status = "disabled";
21319c8c52f7SJianxin Pan			};
2132820873cfSNeil Armstrong
21339951aca6SGuillaume La Roque			i2c_AO: i2c@5000 {
21349951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
21359951aca6SGuillaume La Roque				status = "disabled";
21369951aca6SGuillaume La Roque				reg = <0x0 0x05000 0x0 0x20>;
21379951aca6SGuillaume La Roque				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
21389951aca6SGuillaume La Roque				#address-cells = <1>;
21399951aca6SGuillaume La Roque				#size-cells = <0>;
21409951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
21419951aca6SGuillaume La Roque			};
21429951aca6SGuillaume La Roque
2143bb23b125SNeil Armstrong			pwm_AO_ab: pwm@7000 {
2144bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ao-pwm-ab";
2145bb23b125SNeil Armstrong				reg = <0x0 0x7000 0x0 0x20>;
2146bb23b125SNeil Armstrong				#pwm-cells = <3>;
2147bb23b125SNeil Armstrong				status = "disabled";
2148bb23b125SNeil Armstrong			};
2149bb23b125SNeil Armstrong
21502bfe8412SNeil Armstrong			ir: ir@8000 {
21512bfe8412SNeil Armstrong				compatible = "amlogic,meson-gxbb-ir";
21522bfe8412SNeil Armstrong				reg = <0x0 0x8000 0x0 0x20>;
21532bfe8412SNeil Armstrong				interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
21542bfe8412SNeil Armstrong				status = "disabled";
21552bfe8412SNeil Armstrong			};
21562bfe8412SNeil Armstrong
2157820873cfSNeil Armstrong			saradc: adc@9000 {
2158820873cfSNeil Armstrong				compatible = "amlogic,meson-g12a-saradc",
2159820873cfSNeil Armstrong					     "amlogic,meson-saradc";
2160820873cfSNeil Armstrong				reg = <0x0 0x9000 0x0 0x48>;
2161820873cfSNeil Armstrong				#io-channel-cells = <1>;
2162820873cfSNeil Armstrong				interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>;
2163820873cfSNeil Armstrong				clocks = <&xtal>,
2164820873cfSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC>,
2165820873cfSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC_CLK>,
2166820873cfSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC_SEL>;
2167820873cfSNeil Armstrong				clock-names = "clkin", "core", "adc_clk", "adc_sel";
2168820873cfSNeil Armstrong				status = "disabled";
2169820873cfSNeil Armstrong			};
21709c8c52f7SJianxin Pan		};
21719c8c52f7SJianxin Pan
2172083feecdSNeil Armstrong		vpu: vpu@ff900000 {
2173083feecdSNeil Armstrong			compatible = "amlogic,meson-g12a-vpu";
2174083feecdSNeil Armstrong			reg = <0x0 0xff900000 0x0 0x100000>,
2175083feecdSNeil Armstrong			      <0x0 0xff63c000 0x0 0x1000>;
2176083feecdSNeil Armstrong			reg-names = "vpu", "hhi";
2177083feecdSNeil Armstrong			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
2178083feecdSNeil Armstrong			#address-cells = <1>;
2179083feecdSNeil Armstrong			#size-cells = <0>;
2180083feecdSNeil Armstrong			amlogic,canvas = <&canvas>;
2181083feecdSNeil Armstrong			power-domains = <&pwrc_vpu>;
2182083feecdSNeil Armstrong
2183083feecdSNeil Armstrong			/* CVBS VDAC output port */
2184083feecdSNeil Armstrong			cvbs_vdac_port: port@0 {
2185083feecdSNeil Armstrong				reg = <0>;
2186083feecdSNeil Armstrong			};
2187083feecdSNeil Armstrong
2188083feecdSNeil Armstrong			/* HDMI-TX output port */
2189083feecdSNeil Armstrong			hdmi_tx_port: port@1 {
2190083feecdSNeil Armstrong				reg = <1>;
2191083feecdSNeil Armstrong
2192083feecdSNeil Armstrong				hdmi_tx_out: endpoint {
2193083feecdSNeil Armstrong					remote-endpoint = <&hdmi_tx_in>;
2194083feecdSNeil Armstrong				};
2195083feecdSNeil Armstrong			};
2196083feecdSNeil Armstrong		};
2197083feecdSNeil Armstrong
21989c8c52f7SJianxin Pan		gic: interrupt-controller@ffc01000 {
21999c8c52f7SJianxin Pan			compatible = "arm,gic-400";
22009c8c52f7SJianxin Pan			reg = <0x0 0xffc01000 0 0x1000>,
22019c8c52f7SJianxin Pan			      <0x0 0xffc02000 0 0x2000>,
22029c8c52f7SJianxin Pan			      <0x0 0xffc04000 0 0x2000>,
22039c8c52f7SJianxin Pan			      <0x0 0xffc06000 0 0x2000>;
22049c8c52f7SJianxin Pan			interrupt-controller;
22059c8c52f7SJianxin Pan			interrupts = <GIC_PPI 9
22069c8c52f7SJianxin Pan				(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
22079c8c52f7SJianxin Pan			#interrupt-cells = <3>;
22089c8c52f7SJianxin Pan			#address-cells = <0>;
22099c8c52f7SJianxin Pan		};
22109c8c52f7SJianxin Pan
22119c8c52f7SJianxin Pan		cbus: bus@ffd00000 {
22129c8c52f7SJianxin Pan			compatible = "simple-bus";
2213503f5fedSJerome Brunet			reg = <0x0 0xffd00000 0x0 0x100000>;
22149c8c52f7SJianxin Pan			#address-cells = <2>;
22159c8c52f7SJianxin Pan			#size-cells = <2>;
2216503f5fedSJerome Brunet			ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x100000>;
22179c8c52f7SJianxin Pan
22187ab41c47SJerome Brunet			reset: reset-controller@1004 {
22197ab41c47SJerome Brunet				compatible = "amlogic,meson-g12a-reset",
22207ab41c47SJerome Brunet					     "amlogic,meson-axg-reset";
22217ab41c47SJerome Brunet				reg = <0x0 0x1004 0x0 0x9c>;
22227ab41c47SJerome Brunet				#reset-cells = <1>;
22237ab41c47SJerome Brunet			};
22247ab41c47SJerome Brunet
2225568465c3SMartin Blumenstingl			gpio_intc: interrupt-controller@f080 {
2226568465c3SMartin Blumenstingl				compatible = "amlogic,meson-g12a-gpio-intc",
2227568465c3SMartin Blumenstingl					     "amlogic,meson-gpio-intc";
2228568465c3SMartin Blumenstingl				reg = <0x0 0xf080 0x0 0x10>;
2229568465c3SMartin Blumenstingl				interrupt-controller;
2230568465c3SMartin Blumenstingl				#interrupt-cells = <2>;
2231568465c3SMartin Blumenstingl				amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
2232568465c3SMartin Blumenstingl			};
2233568465c3SMartin Blumenstingl
2234bb23b125SNeil Armstrong			pwm_ef: pwm@19000 {
2235bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
2236bb23b125SNeil Armstrong				reg = <0x0 0x19000 0x0 0x20>;
2237bb23b125SNeil Armstrong				#pwm-cells = <3>;
2238bb23b125SNeil Armstrong				status = "disabled";
2239bb23b125SNeil Armstrong			};
2240bb23b125SNeil Armstrong
2241bb23b125SNeil Armstrong			pwm_cd: pwm@1a000 {
2242bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
2243bb23b125SNeil Armstrong				reg = <0x0 0x1a000 0x0 0x20>;
2244bb23b125SNeil Armstrong				#pwm-cells = <3>;
2245bb23b125SNeil Armstrong				status = "disabled";
2246bb23b125SNeil Armstrong			};
2247bb23b125SNeil Armstrong
2248bb23b125SNeil Armstrong			pwm_ab: pwm@1b000 {
2249bb23b125SNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
2250bb23b125SNeil Armstrong				reg = <0x0 0x1b000 0x0 0x20>;
2251bb23b125SNeil Armstrong				#pwm-cells = <3>;
2252bb23b125SNeil Armstrong				status = "disabled";
2253bb23b125SNeil Armstrong			};
2254bb23b125SNeil Armstrong
22559951aca6SGuillaume La Roque			i2c3: i2c@1c000 {
22569951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22579951aca6SGuillaume La Roque				status = "disabled";
22589951aca6SGuillaume La Roque				reg = <0x0 0x1c000 0x0 0x20>;
22599951aca6SGuillaume La Roque				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
22609951aca6SGuillaume La Roque				#address-cells = <1>;
22619951aca6SGuillaume La Roque				#size-cells = <0>;
22629951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22639951aca6SGuillaume La Roque			};
22649951aca6SGuillaume La Roque
22659951aca6SGuillaume La Roque			i2c2: i2c@1d000 {
22669951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22679951aca6SGuillaume La Roque				status = "disabled";
22689951aca6SGuillaume La Roque				reg = <0x0 0x1d000 0x0 0x20>;
22699951aca6SGuillaume La Roque				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
22709951aca6SGuillaume La Roque				#address-cells = <1>;
22719951aca6SGuillaume La Roque				#size-cells = <0>;
22729951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22739951aca6SGuillaume La Roque			};
22749951aca6SGuillaume La Roque
22759951aca6SGuillaume La Roque			i2c1: i2c@1e000 {
22769951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22779951aca6SGuillaume La Roque				status = "disabled";
22789951aca6SGuillaume La Roque				reg = <0x0 0x1e000 0x0 0x20>;
22799951aca6SGuillaume La Roque				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
22809951aca6SGuillaume La Roque				#address-cells = <1>;
22819951aca6SGuillaume La Roque				#size-cells = <0>;
22829951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22839951aca6SGuillaume La Roque			};
22849951aca6SGuillaume La Roque
22859951aca6SGuillaume La Roque			i2c0: i2c@1f000 {
22869951aca6SGuillaume La Roque				compatible = "amlogic,meson-axg-i2c";
22879951aca6SGuillaume La Roque				status = "disabled";
22889951aca6SGuillaume La Roque				reg = <0x0 0x1f000 0x0 0x20>;
22899951aca6SGuillaume La Roque				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
22909951aca6SGuillaume La Roque				#address-cells = <1>;
22919951aca6SGuillaume La Roque				#size-cells = <0>;
22929951aca6SGuillaume La Roque				clocks = <&clkc CLKID_I2C>;
22939951aca6SGuillaume La Roque			};
22949951aca6SGuillaume La Roque
229560d4fdb8SJerome Brunet			clk_msr: clock-measure@18000 {
229660d4fdb8SJerome Brunet				compatible = "amlogic,meson-g12a-clk-measure";
229760d4fdb8SJerome Brunet				reg = <0x0 0x18000 0x0 0x10>;
229860d4fdb8SJerome Brunet			};
2299ff4f8b6cSNeil Armstrong
2300ff4f8b6cSNeil Armstrong			uart_C: serial@22000 {
2301ff4f8b6cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
2302ff4f8b6cSNeil Armstrong				reg = <0x0 0x22000 0x0 0x18>;
2303ff4f8b6cSNeil Armstrong				interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>;
2304ff4f8b6cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>;
2305ff4f8b6cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
2306ff4f8b6cSNeil Armstrong				status = "disabled";
2307ff4f8b6cSNeil Armstrong			};
2308ff4f8b6cSNeil Armstrong
2309ff4f8b6cSNeil Armstrong			uart_B: serial@23000 {
2310ff4f8b6cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
2311ff4f8b6cSNeil Armstrong				reg = <0x0 0x23000 0x0 0x18>;
2312ff4f8b6cSNeil Armstrong				interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
2313ff4f8b6cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
2314ff4f8b6cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
2315ff4f8b6cSNeil Armstrong				status = "disabled";
2316ff4f8b6cSNeil Armstrong			};
2317ff4f8b6cSNeil Armstrong
2318ff4f8b6cSNeil Armstrong			uart_A: serial@24000 {
2319ff4f8b6cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
2320ff4f8b6cSNeil Armstrong				reg = <0x0 0x24000 0x0 0x18>;
2321ff4f8b6cSNeil Armstrong				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
2322ff4f8b6cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
2323ff4f8b6cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
2324ff4f8b6cSNeil Armstrong				status = "disabled";
2325ff4f8b6cSNeil Armstrong			};
23269c8c52f7SJianxin Pan		};
23279baf7d6bSNeil Armstrong
23284759fd87SJerome Brunet		sd_emmc_b: sd@ffe05000 {
23294759fd87SJerome Brunet			compatible = "amlogic,meson-axg-mmc";
23304759fd87SJerome Brunet			reg = <0x0 0xffe05000 0x0 0x800>;
23314759fd87SJerome Brunet			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
23324759fd87SJerome Brunet			status = "disabled";
23334759fd87SJerome Brunet			clocks = <&clkc CLKID_SD_EMMC_B>,
23344759fd87SJerome Brunet				 <&clkc CLKID_SD_EMMC_B_CLK0>,
23354759fd87SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>;
23364759fd87SJerome Brunet			clock-names = "core", "clkin0", "clkin1";
23374759fd87SJerome Brunet			resets = <&reset RESET_SD_EMMC_B>;
23384759fd87SJerome Brunet		};
23394759fd87SJerome Brunet
23404759fd87SJerome Brunet		sd_emmc_c: mmc@ffe07000 {
23414759fd87SJerome Brunet			compatible = "amlogic,meson-axg-mmc";
23424759fd87SJerome Brunet			reg = <0x0 0xffe07000 0x0 0x800>;
23434759fd87SJerome Brunet			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
23444759fd87SJerome Brunet			status = "disabled";
23454759fd87SJerome Brunet			clocks = <&clkc CLKID_SD_EMMC_C>,
23464759fd87SJerome Brunet				 <&clkc CLKID_SD_EMMC_C_CLK0>,
23474759fd87SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>;
23484759fd87SJerome Brunet			clock-names = "core", "clkin0", "clkin1";
23494759fd87SJerome Brunet			resets = <&reset RESET_SD_EMMC_C>;
23504759fd87SJerome Brunet		};
23514759fd87SJerome Brunet
23528a6b3ca2SJerome Brunet		sd_emmc_a: sd@ffe03000 {
23538a6b3ca2SJerome Brunet			compatible = "amlogic,meson-axg-mmc";
23548a6b3ca2SJerome Brunet			reg = <0x0 0xffe03000 0x0 0x800>;
23558a6b3ca2SJerome Brunet			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
23568a6b3ca2SJerome Brunet			status = "disabled";
23578a6b3ca2SJerome Brunet			clocks = <&clkc CLKID_SD_EMMC_A>,
23588a6b3ca2SJerome Brunet				 <&clkc CLKID_SD_EMMC_A_CLK0>,
23598a6b3ca2SJerome Brunet				 <&clkc CLKID_FCLK_DIV2>;
23608a6b3ca2SJerome Brunet			clock-names = "core", "clkin0", "clkin1";
23618a6b3ca2SJerome Brunet			resets = <&reset RESET_SD_EMMC_A>;
23628a6b3ca2SJerome Brunet			amlogic,dram-access-quirk;
23638a6b3ca2SJerome Brunet		};
23648a6b3ca2SJerome Brunet
23659baf7d6bSNeil Armstrong		usb: usb@ffe09000 {
23669baf7d6bSNeil Armstrong			status = "disabled";
23679baf7d6bSNeil Armstrong			compatible = "amlogic,meson-g12a-usb-ctrl";
23689baf7d6bSNeil Armstrong			reg = <0x0 0xffe09000 0x0 0xa0>;
23699baf7d6bSNeil Armstrong			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
23709baf7d6bSNeil Armstrong			#address-cells = <2>;
23719baf7d6bSNeil Armstrong			#size-cells = <2>;
23729baf7d6bSNeil Armstrong			ranges;
23739baf7d6bSNeil Armstrong
23749baf7d6bSNeil Armstrong			clocks = <&clkc CLKID_USB>;
23759baf7d6bSNeil Armstrong			resets = <&reset RESET_USB>;
23769baf7d6bSNeil Armstrong
23779baf7d6bSNeil Armstrong			dr_mode = "otg";
23789baf7d6bSNeil Armstrong
23799baf7d6bSNeil Armstrong			phys = <&usb2_phy0>, <&usb2_phy1>,
23809baf7d6bSNeil Armstrong			       <&usb3_pcie_phy PHY_TYPE_USB3>;
23819baf7d6bSNeil Armstrong			phy-names = "usb2-phy0", "usb2-phy1", "usb3-phy0";
23829baf7d6bSNeil Armstrong
23839baf7d6bSNeil Armstrong			dwc2: usb@ff400000 {
23849baf7d6bSNeil Armstrong				compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
23859baf7d6bSNeil Armstrong				reg = <0x0 0xff400000 0x0 0x40000>;
23869baf7d6bSNeil Armstrong				interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
23879baf7d6bSNeil Armstrong				clocks = <&clkc CLKID_USB1_DDR_BRIDGE>;
23889baf7d6bSNeil Armstrong				clock-names = "ddr";
23899baf7d6bSNeil Armstrong				phys = <&usb2_phy1>;
23909baf7d6bSNeil Armstrong				dr_mode = "peripheral";
23919baf7d6bSNeil Armstrong				g-rx-fifo-size = <192>;
23929baf7d6bSNeil Armstrong				g-np-tx-fifo-size = <128>;
23939baf7d6bSNeil Armstrong				g-tx-fifo-size = <128 128 16 16 16>;
23949baf7d6bSNeil Armstrong			};
23959baf7d6bSNeil Armstrong
23969baf7d6bSNeil Armstrong			dwc3: usb@ff500000 {
23979baf7d6bSNeil Armstrong				compatible = "snps,dwc3";
23989baf7d6bSNeil Armstrong				reg = <0x0 0xff500000 0x0 0x100000>;
23999baf7d6bSNeil Armstrong				interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
24009baf7d6bSNeil Armstrong				dr_mode = "host";
24019baf7d6bSNeil Armstrong				snps,dis_u2_susphy_quirk;
24029baf7d6bSNeil Armstrong				snps,quirk-frame-length-adjustment;
24039baf7d6bSNeil Armstrong			};
24049baf7d6bSNeil Armstrong		};
24052607fd08SNeil Armstrong
24062607fd08SNeil Armstrong		mali: gpu@ffe40000 {
24072607fd08SNeil Armstrong			compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
24082607fd08SNeil Armstrong			reg = <0x0 0xffe40000 0x0 0x40000>;
24092607fd08SNeil Armstrong			interrupt-parent = <&gic>;
24102607fd08SNeil Armstrong			interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
24112607fd08SNeil Armstrong				     <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
24122607fd08SNeil Armstrong				     <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
24132607fd08SNeil Armstrong			interrupt-names = "gpu", "mmu", "job";
24142607fd08SNeil Armstrong			clocks = <&clkc CLKID_MALI>;
24152607fd08SNeil Armstrong			resets = <&reset RESET_DVALIN_CAPB3>, <&reset RESET_DVALIN>;
24162607fd08SNeil Armstrong
24172607fd08SNeil Armstrong			/*
24182607fd08SNeil Armstrong			 * Mali clocking is provided by two identical clock paths
24192607fd08SNeil Armstrong			 * MALI_0 and MALI_1 muxed to a single clock by a glitch
24202607fd08SNeil Armstrong			 * free mux to safely change frequency while running.
24212607fd08SNeil Armstrong			 */
24222607fd08SNeil Armstrong			assigned-clocks = <&clkc CLKID_MALI_0_SEL>,
24232607fd08SNeil Armstrong					  <&clkc CLKID_MALI_0>,
24242607fd08SNeil Armstrong					  <&clkc CLKID_MALI>; /* Glitch free mux */
24252607fd08SNeil Armstrong			assigned-clock-parents = <&clkc CLKID_FCLK_DIV2P5>,
24262607fd08SNeil Armstrong						 <0>, /* Do Nothing */
24272607fd08SNeil Armstrong						 <&clkc CLKID_MALI_0>;
24282607fd08SNeil Armstrong			assigned-clock-rates = <0>, /* Do Nothing */
24292607fd08SNeil Armstrong					       <800000000>,
24302607fd08SNeil Armstrong					       <0>; /* Do Nothing */
24312607fd08SNeil Armstrong		};
24329c8c52f7SJianxin Pan	};
24339c8c52f7SJianxin Pan
24349c8c52f7SJianxin Pan	timer {
24359c8c52f7SJianxin Pan		compatible = "arm,armv8-timer";
24369c8c52f7SJianxin Pan		interrupts = <GIC_PPI 13
24379c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24389c8c52f7SJianxin Pan			     <GIC_PPI 14
24399c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24409c8c52f7SJianxin Pan			     <GIC_PPI 11
24419c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24429c8c52f7SJianxin Pan			     <GIC_PPI 10
24439c8c52f7SJianxin Pan			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>;
24449c8c52f7SJianxin Pan	};
24459c8c52f7SJianxin Pan
24469c8c52f7SJianxin Pan	xtal: xtal-clk {
24479c8c52f7SJianxin Pan		compatible = "fixed-clock";
24489c8c52f7SJianxin Pan		clock-frequency = <24000000>;
24499c8c52f7SJianxin Pan		clock-output-names = "xtal";
24509c8c52f7SJianxin Pan		#clock-cells = <0>;
24519c8c52f7SJianxin Pan	};
24529c8c52f7SJianxin Pan
24539c8c52f7SJianxin Pan};
2454