11499218cSNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
21499218cSNeil Armstrong/*
31499218cSNeil Armstrong * Copyright (c) 2018 Amlogic, Inc. All rights reserved.
41499218cSNeil Armstrong */
51499218cSNeil Armstrong
61499218cSNeil Armstrong#include <dt-bindings/phy/phy.h>
71499218cSNeil Armstrong#include <dt-bindings/gpio/gpio.h>
81499218cSNeil Armstrong#include <dt-bindings/clock/g12a-clkc.h>
91499218cSNeil Armstrong#include <dt-bindings/clock/g12a-aoclkc.h>
101499218cSNeil Armstrong#include <dt-bindings/interrupt-controller/irq.h>
111499218cSNeil Armstrong#include <dt-bindings/interrupt-controller/arm-gic.h>
121499218cSNeil Armstrong#include <dt-bindings/reset/amlogic,meson-g12a-reset.h>
13e7251ed7SGuillaume La Roque#include <dt-bindings/thermal/thermal.h>
141499218cSNeil Armstrong
151499218cSNeil Armstrong/ {
161499218cSNeil Armstrong	interrupt-parent = <&gic>;
171499218cSNeil Armstrong	#address-cells = <2>;
181499218cSNeil Armstrong	#size-cells = <2>;
191499218cSNeil Armstrong
2015767cfdSNeil Armstrong	chosen {
2115767cfdSNeil Armstrong		#address-cells = <2>;
2215767cfdSNeil Armstrong		#size-cells = <2>;
2315767cfdSNeil Armstrong		ranges;
2415767cfdSNeil Armstrong
2515767cfdSNeil Armstrong		simplefb_cvbs: framebuffer-cvbs {
2615767cfdSNeil Armstrong			compatible = "amlogic,simple-framebuffer",
2715767cfdSNeil Armstrong				     "simple-framebuffer";
2815767cfdSNeil Armstrong			amlogic,pipeline = "vpu-cvbs";
2915767cfdSNeil Armstrong			clocks = <&clkc CLKID_HDMI>,
3015767cfdSNeil Armstrong				 <&clkc CLKID_HTX_PCLK>,
3115767cfdSNeil Armstrong				 <&clkc CLKID_VPU_INTR>;
3215767cfdSNeil Armstrong			status = "disabled";
3315767cfdSNeil Armstrong		};
3415767cfdSNeil Armstrong
3515767cfdSNeil Armstrong		simplefb_hdmi: framebuffer-hdmi {
3615767cfdSNeil Armstrong			compatible = "amlogic,simple-framebuffer",
3715767cfdSNeil Armstrong				    "simple-framebuffer";
3815767cfdSNeil Armstrong			amlogic,pipeline = "vpu-hdmi";
3915767cfdSNeil Armstrong			clocks = <&clkc CLKID_HDMI>,
4015767cfdSNeil Armstrong				 <&clkc CLKID_HTX_PCLK>,
4115767cfdSNeil Armstrong				 <&clkc CLKID_VPU_INTR>;
4215767cfdSNeil Armstrong			status = "disabled";
4315767cfdSNeil Armstrong		};
4415767cfdSNeil Armstrong	};
4515767cfdSNeil Armstrong
461499218cSNeil Armstrong	efuse: efuse {
471499218cSNeil Armstrong		compatible = "amlogic,meson-gxbb-efuse";
481499218cSNeil Armstrong		clocks = <&clkc CLKID_EFUSE>;
491499218cSNeil Armstrong		#address-cells = <1>;
501499218cSNeil Armstrong		#size-cells = <1>;
511499218cSNeil Armstrong		read-only;
52de82e74aSCarlo Caione		secure-monitor = <&sm>;
531499218cSNeil Armstrong	};
541499218cSNeil Armstrong
55916a0edcSMartin Blumenstingl	gpu_opp_table: gpu-opp-table {
56916a0edcSMartin Blumenstingl		compatible = "operating-points-v2";
57916a0edcSMartin Blumenstingl
58916a0edcSMartin Blumenstingl		opp-124999998 {
59916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <124999998>;
60916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
61916a0edcSMartin Blumenstingl		};
62916a0edcSMartin Blumenstingl		opp-249999996 {
63916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <249999996>;
64916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
65916a0edcSMartin Blumenstingl		};
66916a0edcSMartin Blumenstingl		opp-285714281 {
67916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <285714281>;
68916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
69916a0edcSMartin Blumenstingl		};
70916a0edcSMartin Blumenstingl		opp-399999994 {
71916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <399999994>;
72916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
73916a0edcSMartin Blumenstingl		};
74916a0edcSMartin Blumenstingl		opp-499999992 {
75916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <499999992>;
76916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
77916a0edcSMartin Blumenstingl		};
78916a0edcSMartin Blumenstingl		opp-666666656 {
79916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <666666656>;
80916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
81916a0edcSMartin Blumenstingl		};
82916a0edcSMartin Blumenstingl		opp-799999987 {
83916a0edcSMartin Blumenstingl			opp-hz = /bits/ 64 <799999987>;
84916a0edcSMartin Blumenstingl			opp-microvolt = <800000>;
85916a0edcSMartin Blumenstingl		};
86916a0edcSMartin Blumenstingl	};
87916a0edcSMartin Blumenstingl
881499218cSNeil Armstrong	psci {
891499218cSNeil Armstrong		compatible = "arm,psci-1.0";
901499218cSNeil Armstrong		method = "smc";
911499218cSNeil Armstrong	};
921499218cSNeil Armstrong
931499218cSNeil Armstrong	reserved-memory {
941499218cSNeil Armstrong		#address-cells = <2>;
951499218cSNeil Armstrong		#size-cells = <2>;
961499218cSNeil Armstrong		ranges;
971499218cSNeil Armstrong
981499218cSNeil Armstrong		/* 3 MiB reserved for ARM Trusted Firmware (BL31) */
991499218cSNeil Armstrong		secmon_reserved: secmon@5000000 {
1001499218cSNeil Armstrong			reg = <0x0 0x05000000 0x0 0x300000>;
1011499218cSNeil Armstrong			no-map;
1021499218cSNeil Armstrong		};
1031499218cSNeil Armstrong
1041499218cSNeil Armstrong		linux,cma {
1051499218cSNeil Armstrong			compatible = "shared-dma-pool";
1061499218cSNeil Armstrong			reusable;
1071499218cSNeil Armstrong			size = <0x0 0x10000000>;
1081499218cSNeil Armstrong			alignment = <0x0 0x400000>;
1091499218cSNeil Armstrong			linux,cma-default;
1101499218cSNeil Armstrong		};
1111499218cSNeil Armstrong	};
1121499218cSNeil Armstrong
1131499218cSNeil Armstrong	sm: secure-monitor {
1141499218cSNeil Armstrong		compatible = "amlogic,meson-gxbb-sm";
1151499218cSNeil Armstrong	};
1161499218cSNeil Armstrong
1171499218cSNeil Armstrong	soc {
1181499218cSNeil Armstrong		compatible = "simple-bus";
1191499218cSNeil Armstrong		#address-cells = <2>;
1201499218cSNeil Armstrong		#size-cells = <2>;
1211499218cSNeil Armstrong		ranges;
1221499218cSNeil Armstrong
1231f8607d5SNeil Armstrong		pcie: pcie@fc000000 {
1241f8607d5SNeil Armstrong			compatible = "amlogic,g12a-pcie", "snps,dw-pcie";
1251f8607d5SNeil Armstrong			reg = <0x0 0xfc000000 0x0 0x400000
1261f8607d5SNeil Armstrong			       0x0 0xff648000 0x0 0x2000
1271f8607d5SNeil Armstrong			       0x0 0xfc400000 0x0 0x200000>;
1281f8607d5SNeil Armstrong			reg-names = "elbi", "cfg", "config";
1291f8607d5SNeil Armstrong			interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
1301f8607d5SNeil Armstrong			#interrupt-cells = <1>;
1311f8607d5SNeil Armstrong			interrupt-map-mask = <0 0 0 0>;
1321f8607d5SNeil Armstrong			interrupt-map = <0 0 0 0 &gic GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
1331f8607d5SNeil Armstrong			bus-range = <0x0 0xff>;
1341f8607d5SNeil Armstrong			#address-cells = <3>;
1351f8607d5SNeil Armstrong			#size-cells = <2>;
1361f8607d5SNeil Armstrong			device_type = "pci";
1371f8607d5SNeil Armstrong			ranges = <0x81000000 0 0 0x0 0xfc600000 0 0x00100000
1381f8607d5SNeil Armstrong				  0x82000000 0 0xfc700000 0x0 0xfc700000 0 0x1900000>;
1391f8607d5SNeil Armstrong
1401f8607d5SNeil Armstrong			clocks = <&clkc CLKID_PCIE_PHY
1411f8607d5SNeil Armstrong				  &clkc CLKID_PCIE_COMB
1421f8607d5SNeil Armstrong				  &clkc CLKID_PCIE_PLL>;
1431f8607d5SNeil Armstrong			clock-names = "general",
1441f8607d5SNeil Armstrong				      "pclk",
1451f8607d5SNeil Armstrong				      "port";
1461f8607d5SNeil Armstrong			resets = <&reset RESET_PCIE_CTRL_A>,
1471f8607d5SNeil Armstrong				 <&reset RESET_PCIE_APB>;
1481f8607d5SNeil Armstrong			reset-names = "port",
1491f8607d5SNeil Armstrong				      "apb";
1501f8607d5SNeil Armstrong			num-lanes = <1>;
1511f8607d5SNeil Armstrong			phys = <&usb3_pcie_phy PHY_TYPE_PCIE>;
1521f8607d5SNeil Armstrong			phy-names = "pcie";
1531f8607d5SNeil Armstrong			status = "disabled";
1541f8607d5SNeil Armstrong		};
1551f8607d5SNeil Armstrong
156e7251ed7SGuillaume La Roque		thermal-zones {
157e7251ed7SGuillaume La Roque			cpu_thermal: cpu-thermal {
158e7251ed7SGuillaume La Roque				polling-delay = <1000>;
159e7251ed7SGuillaume La Roque				polling-delay-passive = <100>;
160e7251ed7SGuillaume La Roque				thermal-sensors = <&cpu_temp>;
161e7251ed7SGuillaume La Roque
162e7251ed7SGuillaume La Roque				trips {
163e7251ed7SGuillaume La Roque					cpu_passive: cpu-passive {
164e7251ed7SGuillaume La Roque						temperature = <85000>; /* millicelsius */
165e7251ed7SGuillaume La Roque						hysteresis = <2000>; /* millicelsius */
166e7251ed7SGuillaume La Roque						type = "passive";
167e7251ed7SGuillaume La Roque					};
168e7251ed7SGuillaume La Roque
169e7251ed7SGuillaume La Roque					cpu_hot: cpu-hot {
170e7251ed7SGuillaume La Roque						temperature = <95000>; /* millicelsius */
171e7251ed7SGuillaume La Roque						hysteresis = <2000>; /* millicelsius */
172e7251ed7SGuillaume La Roque						type = "hot";
173e7251ed7SGuillaume La Roque					};
174e7251ed7SGuillaume La Roque
175e7251ed7SGuillaume La Roque					cpu_critical: cpu-critical {
176e7251ed7SGuillaume La Roque						temperature = <110000>; /* millicelsius */
177e7251ed7SGuillaume La Roque						hysteresis = <2000>; /* millicelsius */
178e7251ed7SGuillaume La Roque						type = "critical";
179e7251ed7SGuillaume La Roque					};
180e7251ed7SGuillaume La Roque				};
181e7251ed7SGuillaume La Roque			};
182e7251ed7SGuillaume La Roque
183e7251ed7SGuillaume La Roque			ddr_thermal: ddr-thermal {
184e7251ed7SGuillaume La Roque				polling-delay = <1000>;
185e7251ed7SGuillaume La Roque				polling-delay-passive = <100>;
186e7251ed7SGuillaume La Roque				thermal-sensors = <&ddr_temp>;
187e7251ed7SGuillaume La Roque
188e7251ed7SGuillaume La Roque				trips {
189e7251ed7SGuillaume La Roque					ddr_passive: ddr-passive {
190e7251ed7SGuillaume La Roque						temperature = <85000>; /* millicelsius */
191e7251ed7SGuillaume La Roque						hysteresis = <2000>; /* millicelsius */
192e7251ed7SGuillaume La Roque						type = "passive";
193e7251ed7SGuillaume La Roque					};
194e7251ed7SGuillaume La Roque
195e7251ed7SGuillaume La Roque					ddr_critical: ddr-critical {
196e7251ed7SGuillaume La Roque						temperature = <110000>; /* millicelsius */
197e7251ed7SGuillaume La Roque						hysteresis = <2000>; /* millicelsius */
198e7251ed7SGuillaume La Roque						type = "critical";
199e7251ed7SGuillaume La Roque					};
200e7251ed7SGuillaume La Roque				};
201e7251ed7SGuillaume La Roque
202e7251ed7SGuillaume La Roque				cooling-maps {
203e7251ed7SGuillaume La Roque					map {
204e7251ed7SGuillaume La Roque						trip = <&ddr_passive>;
205e7251ed7SGuillaume La Roque						cooling-device = <&mali THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
206e7251ed7SGuillaume La Roque					};
207e7251ed7SGuillaume La Roque				};
208e7251ed7SGuillaume La Roque			};
209e7251ed7SGuillaume La Roque		};
210e7251ed7SGuillaume La Roque
2111499218cSNeil Armstrong		ethmac: ethernet@ff3f0000 {
2121499218cSNeil Armstrong			compatible = "amlogic,meson-axg-dwmac",
2131499218cSNeil Armstrong				     "snps,dwmac-3.70a",
2141499218cSNeil Armstrong				     "snps,dwmac";
2153ad6c9e3SNeil Armstrong			reg = <0x0 0xff3f0000 0x0 0x10000>,
2163ad6c9e3SNeil Armstrong			      <0x0 0xff634540 0x0 0x8>;
2171499218cSNeil Armstrong			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
2181499218cSNeil Armstrong			interrupt-names = "macirq";
2191499218cSNeil Armstrong			clocks = <&clkc CLKID_ETH>,
2201499218cSNeil Armstrong				 <&clkc CLKID_FCLK_DIV2>,
22132b5f4b6SMartin Blumenstingl				 <&clkc CLKID_MPLL2>,
22232b5f4b6SMartin Blumenstingl				 <&clkc CLKID_FCLK_DIV2>;
22332b5f4b6SMartin Blumenstingl			clock-names = "stmmaceth", "clkin0", "clkin1",
22432b5f4b6SMartin Blumenstingl				      "timing-adjustment";
225ef68984eSJerome Brunet			rx-fifo-depth = <4096>;
226ef68984eSJerome Brunet			tx-fifo-depth = <2048>;
2271499218cSNeil Armstrong			status = "disabled";
2281499218cSNeil Armstrong
2291499218cSNeil Armstrong			mdio0: mdio {
2301499218cSNeil Armstrong				#address-cells = <1>;
2311499218cSNeil Armstrong				#size-cells = <0>;
2321499218cSNeil Armstrong				compatible = "snps,dwmac-mdio";
2331499218cSNeil Armstrong			};
2341499218cSNeil Armstrong		};
2351499218cSNeil Armstrong
2361499218cSNeil Armstrong		apb: bus@ff600000 {
2371499218cSNeil Armstrong			compatible = "simple-bus";
2381499218cSNeil Armstrong			reg = <0x0 0xff600000 0x0 0x200000>;
2391499218cSNeil Armstrong			#address-cells = <2>;
2401499218cSNeil Armstrong			#size-cells = <2>;
2411499218cSNeil Armstrong			ranges = <0x0 0x0 0x0 0xff600000 0x0 0x200000>;
2421499218cSNeil Armstrong
2431499218cSNeil Armstrong			hdmi_tx: hdmi-tx@0 {
2441499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-dw-hdmi";
2451499218cSNeil Armstrong				reg = <0x0 0x0 0x0 0x10000>;
2461499218cSNeil Armstrong				interrupts = <GIC_SPI 57 IRQ_TYPE_EDGE_RISING>;
2471499218cSNeil Armstrong				resets = <&reset RESET_HDMITX_CAPB3>,
2481499218cSNeil Armstrong					 <&reset RESET_HDMITX_PHY>,
2491499218cSNeil Armstrong					 <&reset RESET_HDMITX>;
2501499218cSNeil Armstrong				reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy";
2511499218cSNeil Armstrong				clocks = <&clkc CLKID_HDMI>,
2521499218cSNeil Armstrong					 <&clkc CLKID_HTX_PCLK>,
2531499218cSNeil Armstrong					 <&clkc CLKID_VPU_INTR>;
2541499218cSNeil Armstrong				clock-names = "isfr", "iahb", "venci";
2551499218cSNeil Armstrong				#address-cells = <1>;
2561499218cSNeil Armstrong				#size-cells = <0>;
2571499218cSNeil Armstrong				#sound-dai-cells = <0>;
2581499218cSNeil Armstrong				status = "disabled";
2591499218cSNeil Armstrong
2601499218cSNeil Armstrong				/* VPU VENC Input */
2611499218cSNeil Armstrong				hdmi_tx_venc_port: port@0 {
2621499218cSNeil Armstrong					reg = <0>;
2631499218cSNeil Armstrong
2641499218cSNeil Armstrong					hdmi_tx_in: endpoint {
2651499218cSNeil Armstrong						remote-endpoint = <&hdmi_tx_out>;
2661499218cSNeil Armstrong					};
2671499218cSNeil Armstrong				};
2681499218cSNeil Armstrong
2691499218cSNeil Armstrong				/* TMDS Output */
2701499218cSNeil Armstrong				hdmi_tx_tmds_port: port@1 {
2711499218cSNeil Armstrong					reg = <1>;
2721499218cSNeil Armstrong				};
2731499218cSNeil Armstrong			};
2741499218cSNeil Armstrong
2751499218cSNeil Armstrong			apb_efuse: bus@30000 {
2761499218cSNeil Armstrong				compatible = "simple-bus";
2771499218cSNeil Armstrong				reg = <0x0 0x30000 0x0 0x2000>;
2781499218cSNeil Armstrong				#address-cells = <2>;
2791499218cSNeil Armstrong				#size-cells = <2>;
2801499218cSNeil Armstrong				ranges = <0x0 0x0 0x0 0x30000 0x0 0x2000>;
2811499218cSNeil Armstrong
2821499218cSNeil Armstrong				hwrng: rng@218 {
2831499218cSNeil Armstrong					compatible = "amlogic,meson-rng";
2841499218cSNeil Armstrong					reg = <0x0 0x218 0x0 0x4>;
2851499218cSNeil Armstrong				};
2861499218cSNeil Armstrong			};
2871499218cSNeil Armstrong
288457fa787SJerome Brunet			acodec: audio-controller@32000 {
289457fa787SJerome Brunet				compatible = "amlogic,t9015";
290457fa787SJerome Brunet				reg = <0x0 0x32000 0x0 0x14>;
291457fa787SJerome Brunet				#sound-dai-cells = <0>;
292457fa787SJerome Brunet				sound-name-prefix = "ACODEC";
293457fa787SJerome Brunet				clocks = <&clkc CLKID_AUDIO_CODEC>;
294457fa787SJerome Brunet				clock-names = "pclk";
295457fa787SJerome Brunet				resets = <&reset RESET_AUDIO_CODEC>;
296457fa787SJerome Brunet				status = "disabled";
297457fa787SJerome Brunet			};
298457fa787SJerome Brunet
2991499218cSNeil Armstrong			periphs: bus@34400 {
3001499218cSNeil Armstrong				compatible = "simple-bus";
3011499218cSNeil Armstrong				reg = <0x0 0x34400 0x0 0x400>;
3021499218cSNeil Armstrong				#address-cells = <2>;
3031499218cSNeil Armstrong				#size-cells = <2>;
3041499218cSNeil Armstrong				ranges = <0x0 0x0 0x0 0x34400 0x0 0x400>;
3051499218cSNeil Armstrong
3061499218cSNeil Armstrong				periphs_pinctrl: pinctrl@40 {
3071499218cSNeil Armstrong					compatible = "amlogic,meson-g12a-periphs-pinctrl";
3081499218cSNeil Armstrong					#address-cells = <2>;
3091499218cSNeil Armstrong					#size-cells = <2>;
3101499218cSNeil Armstrong					ranges;
3111499218cSNeil Armstrong
3121499218cSNeil Armstrong					gpio: bank@40 {
3131499218cSNeil Armstrong						reg = <0x0 0x40  0x0 0x4c>,
3141499218cSNeil Armstrong						      <0x0 0xe8  0x0 0x18>,
3151499218cSNeil Armstrong						      <0x0 0x120 0x0 0x18>,
3161499218cSNeil Armstrong						      <0x0 0x2c0 0x0 0x40>,
3171499218cSNeil Armstrong						      <0x0 0x340 0x0 0x1c>;
3181499218cSNeil Armstrong						reg-names = "gpio",
3191499218cSNeil Armstrong							    "pull",
3201499218cSNeil Armstrong							    "pull-enable",
3211499218cSNeil Armstrong							    "mux",
3221499218cSNeil Armstrong							    "ds";
3231499218cSNeil Armstrong						gpio-controller;
3241499218cSNeil Armstrong						#gpio-cells = <2>;
3251499218cSNeil Armstrong						gpio-ranges = <&periphs_pinctrl 0 0 86>;
3261499218cSNeil Armstrong					};
3271499218cSNeil Armstrong
3281499218cSNeil Armstrong					cec_ao_a_h_pins: cec_ao_a_h {
3291499218cSNeil Armstrong						mux {
3301499218cSNeil Armstrong							groups = "cec_ao_a_h";
3311499218cSNeil Armstrong							function = "cec_ao_a_h";
3321499218cSNeil Armstrong							bias-disable;
3331499218cSNeil Armstrong						};
3341499218cSNeil Armstrong					};
3351499218cSNeil Armstrong
3361499218cSNeil Armstrong					cec_ao_b_h_pins: cec_ao_b_h {
3371499218cSNeil Armstrong						mux {
3381499218cSNeil Armstrong							groups = "cec_ao_b_h";
3391499218cSNeil Armstrong							function = "cec_ao_b_h";
3401499218cSNeil Armstrong							bias-disable;
3411499218cSNeil Armstrong						};
3421499218cSNeil Armstrong					};
3431499218cSNeil Armstrong
3444d2cb376SNeil Armstrong					emmc_ctrl_pins: emmc-ctrl {
3451499218cSNeil Armstrong						mux-0 {
3464d2cb376SNeil Armstrong							groups = "emmc_cmd";
3471499218cSNeil Armstrong							function = "emmc";
3481499218cSNeil Armstrong							bias-pull-up;
3491499218cSNeil Armstrong							drive-strength-microamp = <4000>;
3501499218cSNeil Armstrong						};
3511499218cSNeil Armstrong
3521499218cSNeil Armstrong						mux-1 {
3531499218cSNeil Armstrong							groups = "emmc_clk";
3541499218cSNeil Armstrong							function = "emmc";
3551499218cSNeil Armstrong							bias-disable;
3561499218cSNeil Armstrong							drive-strength-microamp = <4000>;
3571499218cSNeil Armstrong						};
3581499218cSNeil Armstrong					};
3591499218cSNeil Armstrong
3604d2cb376SNeil Armstrong					emmc_data_4b_pins: emmc-data-4b {
3614d2cb376SNeil Armstrong						mux-0 {
3624d2cb376SNeil Armstrong							groups = "emmc_nand_d0",
3634d2cb376SNeil Armstrong								 "emmc_nand_d1",
3644d2cb376SNeil Armstrong								 "emmc_nand_d2",
3654d2cb376SNeil Armstrong								 "emmc_nand_d3";
3664d2cb376SNeil Armstrong							function = "emmc";
3674d2cb376SNeil Armstrong							bias-pull-up;
3684d2cb376SNeil Armstrong							drive-strength-microamp = <4000>;
3694d2cb376SNeil Armstrong						};
3704d2cb376SNeil Armstrong					};
3714d2cb376SNeil Armstrong
3724d2cb376SNeil Armstrong					emmc_data_8b_pins: emmc-data-8b {
3734d2cb376SNeil Armstrong						mux-0 {
3744d2cb376SNeil Armstrong							groups = "emmc_nand_d0",
3754d2cb376SNeil Armstrong								 "emmc_nand_d1",
3764d2cb376SNeil Armstrong								 "emmc_nand_d2",
3774d2cb376SNeil Armstrong								 "emmc_nand_d3",
3784d2cb376SNeil Armstrong								 "emmc_nand_d4",
3794d2cb376SNeil Armstrong								 "emmc_nand_d5",
3804d2cb376SNeil Armstrong								 "emmc_nand_d6",
3814d2cb376SNeil Armstrong								 "emmc_nand_d7";
3824d2cb376SNeil Armstrong							function = "emmc";
3834d2cb376SNeil Armstrong							bias-pull-up;
3844d2cb376SNeil Armstrong							drive-strength-microamp = <4000>;
3854d2cb376SNeil Armstrong						};
3864d2cb376SNeil Armstrong					};
3874d2cb376SNeil Armstrong
3881499218cSNeil Armstrong					emmc_ds_pins: emmc-ds {
3891499218cSNeil Armstrong						mux {
3901499218cSNeil Armstrong							groups = "emmc_nand_ds";
3911499218cSNeil Armstrong							function = "emmc";
3921499218cSNeil Armstrong							bias-pull-down;
3931499218cSNeil Armstrong							drive-strength-microamp = <4000>;
3941499218cSNeil Armstrong						};
3951499218cSNeil Armstrong					};
3961499218cSNeil Armstrong
3971499218cSNeil Armstrong					emmc_clk_gate_pins: emmc_clk_gate {
3981499218cSNeil Armstrong						mux {
3991499218cSNeil Armstrong							groups = "BOOT_8";
4001499218cSNeil Armstrong							function = "gpio_periphs";
4011499218cSNeil Armstrong							bias-pull-down;
4021499218cSNeil Armstrong							drive-strength-microamp = <4000>;
4031499218cSNeil Armstrong						};
4041499218cSNeil Armstrong					};
4051499218cSNeil Armstrong
4061499218cSNeil Armstrong					hdmitx_ddc_pins: hdmitx_ddc {
4071499218cSNeil Armstrong						mux {
4081499218cSNeil Armstrong							groups = "hdmitx_sda",
4091499218cSNeil Armstrong								 "hdmitx_sck";
4101499218cSNeil Armstrong							function = "hdmitx";
4111499218cSNeil Armstrong							bias-disable;
4121499218cSNeil Armstrong							drive-strength-microamp = <4000>;
4131499218cSNeil Armstrong						};
4141499218cSNeil Armstrong					};
4151499218cSNeil Armstrong
4161499218cSNeil Armstrong					hdmitx_hpd_pins: hdmitx_hpd {
4171499218cSNeil Armstrong						mux {
4181499218cSNeil Armstrong							groups = "hdmitx_hpd_in";
4191499218cSNeil Armstrong							function = "hdmitx";
4201499218cSNeil Armstrong							bias-disable;
4211499218cSNeil Armstrong						};
4221499218cSNeil Armstrong					};
4231499218cSNeil Armstrong
4241499218cSNeil Armstrong
4251499218cSNeil Armstrong					i2c0_sda_c_pins: i2c0-sda-c {
4261499218cSNeil Armstrong						mux {
4271499218cSNeil Armstrong							groups = "i2c0_sda_c";
4281499218cSNeil Armstrong							function = "i2c0";
4291499218cSNeil Armstrong							bias-disable;
4301499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4311499218cSNeil Armstrong
4321499218cSNeil Armstrong						};
4331499218cSNeil Armstrong					};
4341499218cSNeil Armstrong
4351499218cSNeil Armstrong					i2c0_sck_c_pins: i2c0-sck-c {
4361499218cSNeil Armstrong						mux {
4371499218cSNeil Armstrong							groups = "i2c0_sck_c";
4381499218cSNeil Armstrong							function = "i2c0";
4391499218cSNeil Armstrong							bias-disable;
4401499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4411499218cSNeil Armstrong						};
4421499218cSNeil Armstrong					};
4431499218cSNeil Armstrong
4441499218cSNeil Armstrong					i2c0_sda_z0_pins: i2c0-sda-z0 {
4451499218cSNeil Armstrong						mux {
4461499218cSNeil Armstrong							groups = "i2c0_sda_z0";
4471499218cSNeil Armstrong							function = "i2c0";
4481499218cSNeil Armstrong							bias-disable;
4491499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4501499218cSNeil Armstrong						};
4511499218cSNeil Armstrong					};
4521499218cSNeil Armstrong
4531499218cSNeil Armstrong					i2c0_sck_z1_pins: i2c0-sck-z1 {
4541499218cSNeil Armstrong						mux {
4551499218cSNeil Armstrong							groups = "i2c0_sck_z1";
4561499218cSNeil Armstrong							function = "i2c0";
4571499218cSNeil Armstrong							bias-disable;
4581499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4591499218cSNeil Armstrong						};
4601499218cSNeil Armstrong					};
4611499218cSNeil Armstrong
4621499218cSNeil Armstrong					i2c0_sda_z7_pins: i2c0-sda-z7 {
4631499218cSNeil Armstrong						mux {
4641499218cSNeil Armstrong							groups = "i2c0_sda_z7";
4651499218cSNeil Armstrong							function = "i2c0";
4661499218cSNeil Armstrong							bias-disable;
4671499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4681499218cSNeil Armstrong						};
4691499218cSNeil Armstrong					};
4701499218cSNeil Armstrong
4711499218cSNeil Armstrong					i2c0_sda_z8_pins: i2c0-sda-z8 {
4721499218cSNeil Armstrong						mux {
4731499218cSNeil Armstrong							groups = "i2c0_sda_z8";
4741499218cSNeil Armstrong							function = "i2c0";
4751499218cSNeil Armstrong							bias-disable;
4761499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4771499218cSNeil Armstrong						};
4781499218cSNeil Armstrong					};
4791499218cSNeil Armstrong
4801499218cSNeil Armstrong					i2c1_sda_x_pins: i2c1-sda-x {
4811499218cSNeil Armstrong						mux {
4821499218cSNeil Armstrong							groups = "i2c1_sda_x";
4831499218cSNeil Armstrong							function = "i2c1";
4841499218cSNeil Armstrong							bias-disable;
4851499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4861499218cSNeil Armstrong						};
4871499218cSNeil Armstrong					};
4881499218cSNeil Armstrong
4891499218cSNeil Armstrong					i2c1_sck_x_pins: i2c1-sck-x {
4901499218cSNeil Armstrong						mux {
4911499218cSNeil Armstrong							groups = "i2c1_sck_x";
4921499218cSNeil Armstrong							function = "i2c1";
4931499218cSNeil Armstrong							bias-disable;
4941499218cSNeil Armstrong							drive-strength-microamp = <3000>;
4951499218cSNeil Armstrong						};
4961499218cSNeil Armstrong					};
4971499218cSNeil Armstrong
4981499218cSNeil Armstrong					i2c1_sda_h2_pins: i2c1-sda-h2 {
4991499218cSNeil Armstrong						mux {
5001499218cSNeil Armstrong							groups = "i2c1_sda_h2";
5011499218cSNeil Armstrong							function = "i2c1";
5021499218cSNeil Armstrong							bias-disable;
5031499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5041499218cSNeil Armstrong						};
5051499218cSNeil Armstrong					};
5061499218cSNeil Armstrong
5071499218cSNeil Armstrong					i2c1_sck_h3_pins: i2c1-sck-h3 {
5081499218cSNeil Armstrong						mux {
5091499218cSNeil Armstrong							groups = "i2c1_sck_h3";
5101499218cSNeil Armstrong							function = "i2c1";
5111499218cSNeil Armstrong							bias-disable;
5121499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5131499218cSNeil Armstrong						};
5141499218cSNeil Armstrong					};
5151499218cSNeil Armstrong
5161499218cSNeil Armstrong					i2c1_sda_h6_pins: i2c1-sda-h6 {
5171499218cSNeil Armstrong						mux {
5181499218cSNeil Armstrong							groups = "i2c1_sda_h6";
5191499218cSNeil Armstrong							function = "i2c1";
5201499218cSNeil Armstrong							bias-disable;
5211499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5221499218cSNeil Armstrong						};
5231499218cSNeil Armstrong					};
5241499218cSNeil Armstrong
5251499218cSNeil Armstrong					i2c1_sck_h7_pins: i2c1-sck-h7 {
5261499218cSNeil Armstrong						mux {
5271499218cSNeil Armstrong							groups = "i2c1_sck_h7";
5281499218cSNeil Armstrong							function = "i2c1";
5291499218cSNeil Armstrong							bias-disable;
5301499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5311499218cSNeil Armstrong						};
5321499218cSNeil Armstrong					};
5331499218cSNeil Armstrong
5341499218cSNeil Armstrong					i2c2_sda_x_pins: i2c2-sda-x {
5351499218cSNeil Armstrong						mux {
5361499218cSNeil Armstrong							groups = "i2c2_sda_x";
5371499218cSNeil Armstrong							function = "i2c2";
5381499218cSNeil Armstrong							bias-disable;
5391499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5401499218cSNeil Armstrong						};
5411499218cSNeil Armstrong					};
5421499218cSNeil Armstrong
5431499218cSNeil Armstrong					i2c2_sck_x_pins: i2c2-sck-x {
5441499218cSNeil Armstrong						mux {
5451499218cSNeil Armstrong							groups = "i2c2_sck_x";
5461499218cSNeil Armstrong							function = "i2c2";
5471499218cSNeil Armstrong							bias-disable;
5481499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5491499218cSNeil Armstrong						};
5501499218cSNeil Armstrong					};
5511499218cSNeil Armstrong
5521499218cSNeil Armstrong					i2c2_sda_z_pins: i2c2-sda-z {
5531499218cSNeil Armstrong						mux {
5541499218cSNeil Armstrong							groups = "i2c2_sda_z";
5551499218cSNeil Armstrong							function = "i2c2";
5561499218cSNeil Armstrong							bias-disable;
5571499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5581499218cSNeil Armstrong						};
5591499218cSNeil Armstrong					};
5601499218cSNeil Armstrong
5611499218cSNeil Armstrong					i2c2_sck_z_pins: i2c2-sck-z {
5621499218cSNeil Armstrong						mux {
5631499218cSNeil Armstrong							groups = "i2c2_sck_z";
5641499218cSNeil Armstrong							function = "i2c2";
5651499218cSNeil Armstrong							bias-disable;
5661499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5671499218cSNeil Armstrong						};
5681499218cSNeil Armstrong					};
5691499218cSNeil Armstrong
5701499218cSNeil Armstrong					i2c3_sda_h_pins: i2c3-sda-h {
5711499218cSNeil Armstrong						mux {
5721499218cSNeil Armstrong							groups = "i2c3_sda_h";
5731499218cSNeil Armstrong							function = "i2c3";
5741499218cSNeil Armstrong							bias-disable;
5751499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5761499218cSNeil Armstrong						};
5771499218cSNeil Armstrong					};
5781499218cSNeil Armstrong
5791499218cSNeil Armstrong					i2c3_sck_h_pins: i2c3-sck-h {
5801499218cSNeil Armstrong						mux {
5811499218cSNeil Armstrong							groups = "i2c3_sck_h";
5821499218cSNeil Armstrong							function = "i2c3";
5831499218cSNeil Armstrong							bias-disable;
5841499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5851499218cSNeil Armstrong						};
5861499218cSNeil Armstrong					};
5871499218cSNeil Armstrong
5881499218cSNeil Armstrong					i2c3_sda_a_pins: i2c3-sda-a {
5891499218cSNeil Armstrong						mux {
5901499218cSNeil Armstrong							groups = "i2c3_sda_a";
5911499218cSNeil Armstrong							function = "i2c3";
5921499218cSNeil Armstrong							bias-disable;
5931499218cSNeil Armstrong							drive-strength-microamp = <3000>;
5941499218cSNeil Armstrong						};
5951499218cSNeil Armstrong					};
5961499218cSNeil Armstrong
5971499218cSNeil Armstrong					i2c3_sck_a_pins: i2c3-sck-a {
5981499218cSNeil Armstrong						mux {
5991499218cSNeil Armstrong							groups = "i2c3_sck_a";
6001499218cSNeil Armstrong							function = "i2c3";
6011499218cSNeil Armstrong							bias-disable;
6021499218cSNeil Armstrong							drive-strength-microamp = <3000>;
6031499218cSNeil Armstrong						};
6041499218cSNeil Armstrong					};
6051499218cSNeil Armstrong
6061499218cSNeil Armstrong					mclk0_a_pins: mclk0-a {
6071499218cSNeil Armstrong						mux {
6081499218cSNeil Armstrong							groups = "mclk0_a";
6091499218cSNeil Armstrong							function = "mclk0";
6101499218cSNeil Armstrong							bias-disable;
6111499218cSNeil Armstrong							drive-strength-microamp = <3000>;
6121499218cSNeil Armstrong						};
6131499218cSNeil Armstrong					};
6141499218cSNeil Armstrong
6151499218cSNeil Armstrong					mclk1_a_pins: mclk1-a {
6161499218cSNeil Armstrong						mux {
6171499218cSNeil Armstrong							groups = "mclk1_a";
6181499218cSNeil Armstrong							function = "mclk1";
6191499218cSNeil Armstrong							bias-disable;
6201499218cSNeil Armstrong							drive-strength-microamp = <3000>;
6211499218cSNeil Armstrong						};
6221499218cSNeil Armstrong					};
6231499218cSNeil Armstrong
6241499218cSNeil Armstrong					mclk1_x_pins: mclk1-x {
6251499218cSNeil Armstrong						mux {
6261499218cSNeil Armstrong							groups = "mclk1_x";
6271499218cSNeil Armstrong							function = "mclk1";
6281499218cSNeil Armstrong							bias-disable;
6291499218cSNeil Armstrong							drive-strength-microamp = <3000>;
6301499218cSNeil Armstrong						};
6311499218cSNeil Armstrong					};
6321499218cSNeil Armstrong
6331499218cSNeil Armstrong					mclk1_z_pins: mclk1-z {
6341499218cSNeil Armstrong						mux {
6351499218cSNeil Armstrong							groups = "mclk1_z";
6361499218cSNeil Armstrong							function = "mclk1";
6371499218cSNeil Armstrong							bias-disable;
6381499218cSNeil Armstrong							drive-strength-microamp = <3000>;
6391499218cSNeil Armstrong						};
6401499218cSNeil Armstrong					};
6411499218cSNeil Armstrong
642f12a463dSNeil Armstrong					nor_pins: nor {
643f12a463dSNeil Armstrong						mux {
644f12a463dSNeil Armstrong							groups = "nor_d",
645f12a463dSNeil Armstrong							       "nor_q",
646f12a463dSNeil Armstrong							       "nor_c",
647f12a463dSNeil Armstrong							       "nor_cs";
648f12a463dSNeil Armstrong							function = "nor";
649f12a463dSNeil Armstrong							bias-disable;
650f12a463dSNeil Armstrong						};
651f12a463dSNeil Armstrong					};
652f12a463dSNeil Armstrong
6531499218cSNeil Armstrong					pdm_din0_a_pins: pdm-din0-a {
6541499218cSNeil Armstrong						mux {
6551499218cSNeil Armstrong							groups = "pdm_din0_a";
6561499218cSNeil Armstrong							function = "pdm";
6571499218cSNeil Armstrong							bias-disable;
6581499218cSNeil Armstrong						};
6591499218cSNeil Armstrong					};
6601499218cSNeil Armstrong
6611499218cSNeil Armstrong					pdm_din0_c_pins: pdm-din0-c {
6621499218cSNeil Armstrong						mux {
6631499218cSNeil Armstrong							groups = "pdm_din0_c";
6641499218cSNeil Armstrong							function = "pdm";
6651499218cSNeil Armstrong							bias-disable;
6661499218cSNeil Armstrong						};
6671499218cSNeil Armstrong					};
6681499218cSNeil Armstrong
6691499218cSNeil Armstrong					pdm_din0_x_pins: pdm-din0-x {
6701499218cSNeil Armstrong						mux {
6711499218cSNeil Armstrong							groups = "pdm_din0_x";
6721499218cSNeil Armstrong							function = "pdm";
6731499218cSNeil Armstrong							bias-disable;
6741499218cSNeil Armstrong						};
6751499218cSNeil Armstrong					};
6761499218cSNeil Armstrong
6771499218cSNeil Armstrong					pdm_din0_z_pins: pdm-din0-z {
6781499218cSNeil Armstrong						mux {
6791499218cSNeil Armstrong							groups = "pdm_din0_z";
6801499218cSNeil Armstrong							function = "pdm";
6811499218cSNeil Armstrong							bias-disable;
6821499218cSNeil Armstrong						};
6831499218cSNeil Armstrong					};
6841499218cSNeil Armstrong
6851499218cSNeil Armstrong					pdm_din1_a_pins: pdm-din1-a {
6861499218cSNeil Armstrong						mux {
6871499218cSNeil Armstrong							groups = "pdm_din1_a";
6881499218cSNeil Armstrong							function = "pdm";
6891499218cSNeil Armstrong							bias-disable;
6901499218cSNeil Armstrong						};
6911499218cSNeil Armstrong					};
6921499218cSNeil Armstrong
6931499218cSNeil Armstrong					pdm_din1_c_pins: pdm-din1-c {
6941499218cSNeil Armstrong						mux {
6951499218cSNeil Armstrong							groups = "pdm_din1_c";
6961499218cSNeil Armstrong							function = "pdm";
6971499218cSNeil Armstrong							bias-disable;
6981499218cSNeil Armstrong						};
6991499218cSNeil Armstrong					};
7001499218cSNeil Armstrong
7011499218cSNeil Armstrong					pdm_din1_x_pins: pdm-din1-x {
7021499218cSNeil Armstrong						mux {
7031499218cSNeil Armstrong							groups = "pdm_din1_x";
7041499218cSNeil Armstrong							function = "pdm";
7051499218cSNeil Armstrong							bias-disable;
7061499218cSNeil Armstrong						};
7071499218cSNeil Armstrong					};
7081499218cSNeil Armstrong
7091499218cSNeil Armstrong					pdm_din1_z_pins: pdm-din1-z {
7101499218cSNeil Armstrong						mux {
7111499218cSNeil Armstrong							groups = "pdm_din1_z";
7121499218cSNeil Armstrong							function = "pdm";
7131499218cSNeil Armstrong							bias-disable;
7141499218cSNeil Armstrong						};
7151499218cSNeil Armstrong					};
7161499218cSNeil Armstrong
7171499218cSNeil Armstrong					pdm_din2_a_pins: pdm-din2-a {
7181499218cSNeil Armstrong						mux {
7191499218cSNeil Armstrong							groups = "pdm_din2_a";
7201499218cSNeil Armstrong							function = "pdm";
7211499218cSNeil Armstrong							bias-disable;
7221499218cSNeil Armstrong						};
7231499218cSNeil Armstrong					};
7241499218cSNeil Armstrong
7251499218cSNeil Armstrong					pdm_din2_c_pins: pdm-din2-c {
7261499218cSNeil Armstrong						mux {
7271499218cSNeil Armstrong							groups = "pdm_din2_c";
7281499218cSNeil Armstrong							function = "pdm";
7291499218cSNeil Armstrong							bias-disable;
7301499218cSNeil Armstrong						};
7311499218cSNeil Armstrong					};
7321499218cSNeil Armstrong
7331499218cSNeil Armstrong					pdm_din2_x_pins: pdm-din2-x {
7341499218cSNeil Armstrong						mux {
7351499218cSNeil Armstrong							groups = "pdm_din2_x";
7361499218cSNeil Armstrong							function = "pdm";
7371499218cSNeil Armstrong							bias-disable;
7381499218cSNeil Armstrong						};
7391499218cSNeil Armstrong					};
7401499218cSNeil Armstrong
7411499218cSNeil Armstrong					pdm_din2_z_pins: pdm-din2-z {
7421499218cSNeil Armstrong						mux {
7431499218cSNeil Armstrong							groups = "pdm_din2_z";
7441499218cSNeil Armstrong							function = "pdm";
7451499218cSNeil Armstrong							bias-disable;
7461499218cSNeil Armstrong						};
7471499218cSNeil Armstrong					};
7481499218cSNeil Armstrong
7491499218cSNeil Armstrong					pdm_din3_a_pins: pdm-din3-a {
7501499218cSNeil Armstrong						mux {
7511499218cSNeil Armstrong							groups = "pdm_din3_a";
7521499218cSNeil Armstrong							function = "pdm";
7531499218cSNeil Armstrong							bias-disable;
7541499218cSNeil Armstrong						};
7551499218cSNeil Armstrong					};
7561499218cSNeil Armstrong
7571499218cSNeil Armstrong					pdm_din3_c_pins: pdm-din3-c {
7581499218cSNeil Armstrong						mux {
7591499218cSNeil Armstrong							groups = "pdm_din3_c";
7601499218cSNeil Armstrong							function = "pdm";
7611499218cSNeil Armstrong							bias-disable;
7621499218cSNeil Armstrong						};
7631499218cSNeil Armstrong					};
7641499218cSNeil Armstrong
7651499218cSNeil Armstrong					pdm_din3_x_pins: pdm-din3-x {
7661499218cSNeil Armstrong						mux {
7671499218cSNeil Armstrong							groups = "pdm_din3_x";
7681499218cSNeil Armstrong							function = "pdm";
7691499218cSNeil Armstrong							bias-disable;
7701499218cSNeil Armstrong						};
7711499218cSNeil Armstrong					};
7721499218cSNeil Armstrong
7731499218cSNeil Armstrong					pdm_din3_z_pins: pdm-din3-z {
7741499218cSNeil Armstrong						mux {
7751499218cSNeil Armstrong							groups = "pdm_din3_z";
7761499218cSNeil Armstrong							function = "pdm";
7771499218cSNeil Armstrong							bias-disable;
7781499218cSNeil Armstrong						};
7791499218cSNeil Armstrong					};
7801499218cSNeil Armstrong
7811499218cSNeil Armstrong					pdm_dclk_a_pins: pdm-dclk-a {
7821499218cSNeil Armstrong						mux {
7831499218cSNeil Armstrong							groups = "pdm_dclk_a";
7841499218cSNeil Armstrong							function = "pdm";
7851499218cSNeil Armstrong							bias-disable;
7861499218cSNeil Armstrong							drive-strength-microamp = <500>;
7871499218cSNeil Armstrong						};
7881499218cSNeil Armstrong					};
7891499218cSNeil Armstrong
7901499218cSNeil Armstrong					pdm_dclk_c_pins: pdm-dclk-c {
7911499218cSNeil Armstrong						mux {
7921499218cSNeil Armstrong							groups = "pdm_dclk_c";
7931499218cSNeil Armstrong							function = "pdm";
7941499218cSNeil Armstrong							bias-disable;
7951499218cSNeil Armstrong							drive-strength-microamp = <500>;
7961499218cSNeil Armstrong						};
7971499218cSNeil Armstrong					};
7981499218cSNeil Armstrong
7991499218cSNeil Armstrong					pdm_dclk_x_pins: pdm-dclk-x {
8001499218cSNeil Armstrong						mux {
8011499218cSNeil Armstrong							groups = "pdm_dclk_x";
8021499218cSNeil Armstrong							function = "pdm";
8031499218cSNeil Armstrong							bias-disable;
8041499218cSNeil Armstrong							drive-strength-microamp = <500>;
8051499218cSNeil Armstrong						};
8061499218cSNeil Armstrong					};
8071499218cSNeil Armstrong
8081499218cSNeil Armstrong					pdm_dclk_z_pins: pdm-dclk-z {
8091499218cSNeil Armstrong						mux {
8101499218cSNeil Armstrong							groups = "pdm_dclk_z";
8111499218cSNeil Armstrong							function = "pdm";
8121499218cSNeil Armstrong							bias-disable;
8131499218cSNeil Armstrong							drive-strength-microamp = <500>;
8141499218cSNeil Armstrong						};
8151499218cSNeil Armstrong					};
8161499218cSNeil Armstrong
8171499218cSNeil Armstrong					pwm_a_pins: pwm-a {
8181499218cSNeil Armstrong						mux {
8191499218cSNeil Armstrong							groups = "pwm_a";
8201499218cSNeil Armstrong							function = "pwm_a";
8211499218cSNeil Armstrong							bias-disable;
8221499218cSNeil Armstrong						};
8231499218cSNeil Armstrong					};
8241499218cSNeil Armstrong
8251499218cSNeil Armstrong					pwm_b_x7_pins: pwm-b-x7 {
8261499218cSNeil Armstrong						mux {
8271499218cSNeil Armstrong							groups = "pwm_b_x7";
8281499218cSNeil Armstrong							function = "pwm_b";
8291499218cSNeil Armstrong							bias-disable;
8301499218cSNeil Armstrong						};
8311499218cSNeil Armstrong					};
8321499218cSNeil Armstrong
8331499218cSNeil Armstrong					pwm_b_x19_pins: pwm-b-x19 {
8341499218cSNeil Armstrong						mux {
8351499218cSNeil Armstrong							groups = "pwm_b_x19";
8361499218cSNeil Armstrong							function = "pwm_b";
8371499218cSNeil Armstrong							bias-disable;
8381499218cSNeil Armstrong						};
8391499218cSNeil Armstrong					};
8401499218cSNeil Armstrong
8411499218cSNeil Armstrong					pwm_c_c_pins: pwm-c-c {
8421499218cSNeil Armstrong						mux {
8431499218cSNeil Armstrong							groups = "pwm_c_c";
8441499218cSNeil Armstrong							function = "pwm_c";
8451499218cSNeil Armstrong							bias-disable;
8461499218cSNeil Armstrong						};
8471499218cSNeil Armstrong					};
8481499218cSNeil Armstrong
8491499218cSNeil Armstrong					pwm_c_x5_pins: pwm-c-x5 {
8501499218cSNeil Armstrong						mux {
8511499218cSNeil Armstrong							groups = "pwm_c_x5";
8521499218cSNeil Armstrong							function = "pwm_c";
8531499218cSNeil Armstrong							bias-disable;
8541499218cSNeil Armstrong						};
8551499218cSNeil Armstrong					};
8561499218cSNeil Armstrong
8571499218cSNeil Armstrong					pwm_c_x8_pins: pwm-c-x8 {
8581499218cSNeil Armstrong						mux {
8591499218cSNeil Armstrong							groups = "pwm_c_x8";
8601499218cSNeil Armstrong							function = "pwm_c";
8611499218cSNeil Armstrong							bias-disable;
8621499218cSNeil Armstrong						};
8631499218cSNeil Armstrong					};
8641499218cSNeil Armstrong
8651499218cSNeil Armstrong					pwm_d_x3_pins: pwm-d-x3 {
8661499218cSNeil Armstrong						mux {
8671499218cSNeil Armstrong							groups = "pwm_d_x3";
8681499218cSNeil Armstrong							function = "pwm_d";
8691499218cSNeil Armstrong							bias-disable;
8701499218cSNeil Armstrong						};
8711499218cSNeil Armstrong					};
8721499218cSNeil Armstrong
8731499218cSNeil Armstrong					pwm_d_x6_pins: pwm-d-x6 {
8741499218cSNeil Armstrong						mux {
8751499218cSNeil Armstrong							groups = "pwm_d_x6";
8761499218cSNeil Armstrong							function = "pwm_d";
8771499218cSNeil Armstrong							bias-disable;
8781499218cSNeil Armstrong						};
8791499218cSNeil Armstrong					};
8801499218cSNeil Armstrong
8811499218cSNeil Armstrong					pwm_e_pins: pwm-e {
8821499218cSNeil Armstrong						mux {
8831499218cSNeil Armstrong							groups = "pwm_e";
8841499218cSNeil Armstrong							function = "pwm_e";
8851499218cSNeil Armstrong							bias-disable;
8861499218cSNeil Armstrong						};
8871499218cSNeil Armstrong					};
8881499218cSNeil Armstrong
8891499218cSNeil Armstrong					pwm_f_x_pins: pwm-f-x {
8901499218cSNeil Armstrong						mux {
8911499218cSNeil Armstrong							groups = "pwm_f_x";
8921499218cSNeil Armstrong							function = "pwm_f";
8931499218cSNeil Armstrong							bias-disable;
8941499218cSNeil Armstrong						};
8951499218cSNeil Armstrong					};
8961499218cSNeil Armstrong
8971499218cSNeil Armstrong					pwm_f_h_pins: pwm-f-h {
8981499218cSNeil Armstrong						mux {
8991499218cSNeil Armstrong							groups = "pwm_f_h";
9001499218cSNeil Armstrong							function = "pwm_f";
9011499218cSNeil Armstrong							bias-disable;
9021499218cSNeil Armstrong						};
9031499218cSNeil Armstrong					};
9041499218cSNeil Armstrong
9051499218cSNeil Armstrong					sdcard_c_pins: sdcard_c {
9061499218cSNeil Armstrong						mux-0 {
9071499218cSNeil Armstrong							groups = "sdcard_d0_c",
9081499218cSNeil Armstrong								 "sdcard_d1_c",
9091499218cSNeil Armstrong								 "sdcard_d2_c",
9101499218cSNeil Armstrong								 "sdcard_d3_c",
9111499218cSNeil Armstrong								 "sdcard_cmd_c";
9121499218cSNeil Armstrong							function = "sdcard";
9131499218cSNeil Armstrong							bias-pull-up;
9141499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9151499218cSNeil Armstrong						};
9161499218cSNeil Armstrong
9171499218cSNeil Armstrong						mux-1 {
9181499218cSNeil Armstrong							groups = "sdcard_clk_c";
9191499218cSNeil Armstrong							function = "sdcard";
9201499218cSNeil Armstrong							bias-disable;
9211499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9221499218cSNeil Armstrong						};
9231499218cSNeil Armstrong					};
9241499218cSNeil Armstrong
9251499218cSNeil Armstrong					sdcard_clk_gate_c_pins: sdcard_clk_gate_c {
9261499218cSNeil Armstrong						mux {
9271499218cSNeil Armstrong							groups = "GPIOC_4";
9281499218cSNeil Armstrong							function = "gpio_periphs";
9291499218cSNeil Armstrong							bias-pull-down;
9301499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9311499218cSNeil Armstrong						};
9321499218cSNeil Armstrong					};
9331499218cSNeil Armstrong
9341499218cSNeil Armstrong					sdcard_z_pins: sdcard_z {
9351499218cSNeil Armstrong						mux-0 {
9361499218cSNeil Armstrong							groups = "sdcard_d0_z",
9371499218cSNeil Armstrong								 "sdcard_d1_z",
9381499218cSNeil Armstrong								 "sdcard_d2_z",
9391499218cSNeil Armstrong								 "sdcard_d3_z",
9401499218cSNeil Armstrong								 "sdcard_cmd_z";
9411499218cSNeil Armstrong							function = "sdcard";
9421499218cSNeil Armstrong							bias-pull-up;
9431499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9441499218cSNeil Armstrong						};
9451499218cSNeil Armstrong
9461499218cSNeil Armstrong						mux-1 {
9471499218cSNeil Armstrong							groups = "sdcard_clk_z";
9481499218cSNeil Armstrong							function = "sdcard";
9491499218cSNeil Armstrong							bias-disable;
9501499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9511499218cSNeil Armstrong						};
9521499218cSNeil Armstrong					};
9531499218cSNeil Armstrong
9541499218cSNeil Armstrong					sdcard_clk_gate_z_pins: sdcard_clk_gate_z {
9551499218cSNeil Armstrong						mux {
9561499218cSNeil Armstrong							groups = "GPIOZ_6";
9571499218cSNeil Armstrong							function = "gpio_periphs";
9581499218cSNeil Armstrong							bias-pull-down;
9591499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9601499218cSNeil Armstrong						};
9611499218cSNeil Armstrong					};
9621499218cSNeil Armstrong
9631499218cSNeil Armstrong					sdio_pins: sdio {
9641499218cSNeil Armstrong						mux {
9651499218cSNeil Armstrong							groups = "sdio_d0",
9661499218cSNeil Armstrong								 "sdio_d1",
9671499218cSNeil Armstrong								 "sdio_d2",
9681499218cSNeil Armstrong								 "sdio_d3",
9691499218cSNeil Armstrong								 "sdio_clk",
9701499218cSNeil Armstrong								 "sdio_cmd";
9711499218cSNeil Armstrong							function = "sdio";
9721499218cSNeil Armstrong							bias-disable;
9731499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9741499218cSNeil Armstrong						};
9751499218cSNeil Armstrong					};
9761499218cSNeil Armstrong
9771499218cSNeil Armstrong					sdio_clk_gate_pins: sdio_clk_gate {
9781499218cSNeil Armstrong						mux {
9791499218cSNeil Armstrong							groups = "GPIOX_4";
9801499218cSNeil Armstrong							function = "gpio_periphs";
9811499218cSNeil Armstrong							bias-pull-down;
9821499218cSNeil Armstrong							drive-strength-microamp = <4000>;
9831499218cSNeil Armstrong						};
9841499218cSNeil Armstrong					};
9851499218cSNeil Armstrong
9861499218cSNeil Armstrong					spdif_in_a10_pins: spdif-in-a10 {
9871499218cSNeil Armstrong						mux {
9881499218cSNeil Armstrong							groups = "spdif_in_a10";
9891499218cSNeil Armstrong							function = "spdif_in";
9901499218cSNeil Armstrong							bias-disable;
9911499218cSNeil Armstrong						};
9921499218cSNeil Armstrong					};
9931499218cSNeil Armstrong
9941499218cSNeil Armstrong					spdif_in_a12_pins: spdif-in-a12 {
9951499218cSNeil Armstrong						mux {
9961499218cSNeil Armstrong							groups = "spdif_in_a12";
9971499218cSNeil Armstrong							function = "spdif_in";
9981499218cSNeil Armstrong							bias-disable;
9991499218cSNeil Armstrong						};
10001499218cSNeil Armstrong					};
10011499218cSNeil Armstrong
10021499218cSNeil Armstrong					spdif_in_h_pins: spdif-in-h {
10031499218cSNeil Armstrong						mux {
10041499218cSNeil Armstrong							groups = "spdif_in_h";
10051499218cSNeil Armstrong							function = "spdif_in";
10061499218cSNeil Armstrong							bias-disable;
10071499218cSNeil Armstrong						};
10081499218cSNeil Armstrong					};
10091499218cSNeil Armstrong
10101499218cSNeil Armstrong					spdif_out_h_pins: spdif-out-h {
10111499218cSNeil Armstrong						mux {
10121499218cSNeil Armstrong							groups = "spdif_out_h";
10131499218cSNeil Armstrong							function = "spdif_out";
10141499218cSNeil Armstrong							drive-strength-microamp = <500>;
10151499218cSNeil Armstrong							bias-disable;
10161499218cSNeil Armstrong						};
10171499218cSNeil Armstrong					};
10181499218cSNeil Armstrong
10191499218cSNeil Armstrong					spdif_out_a11_pins: spdif-out-a11 {
10201499218cSNeil Armstrong						mux {
10211499218cSNeil Armstrong							groups = "spdif_out_a11";
10221499218cSNeil Armstrong							function = "spdif_out";
10231499218cSNeil Armstrong							drive-strength-microamp = <500>;
10241499218cSNeil Armstrong							bias-disable;
10251499218cSNeil Armstrong						};
10261499218cSNeil Armstrong					};
10271499218cSNeil Armstrong
10281499218cSNeil Armstrong					spdif_out_a13_pins: spdif-out-a13 {
10291499218cSNeil Armstrong						mux {
10301499218cSNeil Armstrong							groups = "spdif_out_a13";
10311499218cSNeil Armstrong							function = "spdif_out";
10321499218cSNeil Armstrong							drive-strength-microamp = <500>;
10331499218cSNeil Armstrong							bias-disable;
10341499218cSNeil Armstrong						};
10351499218cSNeil Armstrong					};
10361499218cSNeil Armstrong
10375fa86f4fSNeil Armstrong					spicc0_x_pins: spicc0-x {
10385fa86f4fSNeil Armstrong						mux {
10395fa86f4fSNeil Armstrong							groups = "spi0_mosi_x",
10405fa86f4fSNeil Armstrong							       "spi0_miso_x",
10415fa86f4fSNeil Armstrong							       "spi0_clk_x";
10425fa86f4fSNeil Armstrong							function = "spi0";
10435fa86f4fSNeil Armstrong							drive-strength-microamp = <4000>;
10445fa86f4fSNeil Armstrong							bias-disable;
10455fa86f4fSNeil Armstrong						};
10465fa86f4fSNeil Armstrong					};
10475fa86f4fSNeil Armstrong
10485fa86f4fSNeil Armstrong					spicc0_ss0_x_pins: spicc0-ss0-x {
10495fa86f4fSNeil Armstrong						mux {
10505fa86f4fSNeil Armstrong							groups = "spi0_ss0_x";
10515fa86f4fSNeil Armstrong							function = "spi0";
10525fa86f4fSNeil Armstrong							drive-strength-microamp = <4000>;
10535fa86f4fSNeil Armstrong							bias-disable;
10545fa86f4fSNeil Armstrong						};
10555fa86f4fSNeil Armstrong					};
10565fa86f4fSNeil Armstrong
10575fa86f4fSNeil Armstrong					spicc0_c_pins: spicc0-c {
10585fa86f4fSNeil Armstrong						mux {
10595fa86f4fSNeil Armstrong							groups = "spi0_mosi_c",
10605fa86f4fSNeil Armstrong							       "spi0_miso_c",
10615fa86f4fSNeil Armstrong							       "spi0_ss0_c",
10625fa86f4fSNeil Armstrong							       "spi0_clk_c";
10635fa86f4fSNeil Armstrong							function = "spi0";
10645fa86f4fSNeil Armstrong							drive-strength-microamp = <4000>;
10655fa86f4fSNeil Armstrong							bias-disable;
10665fa86f4fSNeil Armstrong						};
10675fa86f4fSNeil Armstrong					};
10685fa86f4fSNeil Armstrong
10695fa86f4fSNeil Armstrong					spicc1_pins: spicc1 {
10705fa86f4fSNeil Armstrong						mux {
10715fa86f4fSNeil Armstrong							groups = "spi1_mosi",
10725fa86f4fSNeil Armstrong							       "spi1_miso",
10735fa86f4fSNeil Armstrong							       "spi1_clk";
10745fa86f4fSNeil Armstrong							function = "spi1";
10755fa86f4fSNeil Armstrong							drive-strength-microamp = <4000>;
10765fa86f4fSNeil Armstrong						};
10775fa86f4fSNeil Armstrong					};
10785fa86f4fSNeil Armstrong
10795fa86f4fSNeil Armstrong					spicc1_ss0_pins: spicc1-ss0 {
10805fa86f4fSNeil Armstrong						mux {
10815fa86f4fSNeil Armstrong							groups = "spi1_ss0";
10825fa86f4fSNeil Armstrong							function = "spi1";
10835fa86f4fSNeil Armstrong							drive-strength-microamp = <4000>;
10845fa86f4fSNeil Armstrong							bias-disable;
10855fa86f4fSNeil Armstrong						};
10865fa86f4fSNeil Armstrong					};
10875fa86f4fSNeil Armstrong
10881499218cSNeil Armstrong					tdm_a_din0_pins: tdm-a-din0 {
10891499218cSNeil Armstrong						mux {
10901499218cSNeil Armstrong							groups = "tdm_a_din0";
10911499218cSNeil Armstrong							function = "tdm_a";
10921499218cSNeil Armstrong							bias-disable;
10931499218cSNeil Armstrong						};
10941499218cSNeil Armstrong					};
10951499218cSNeil Armstrong
10961499218cSNeil Armstrong
10971499218cSNeil Armstrong					tdm_a_din1_pins: tdm-a-din1 {
10981499218cSNeil Armstrong						mux {
10991499218cSNeil Armstrong							groups = "tdm_a_din1";
11001499218cSNeil Armstrong							function = "tdm_a";
11011499218cSNeil Armstrong							bias-disable;
11021499218cSNeil Armstrong						};
11031499218cSNeil Armstrong					};
11041499218cSNeil Armstrong
11051499218cSNeil Armstrong					tdm_a_dout0_pins: tdm-a-dout0 {
11061499218cSNeil Armstrong						mux {
11071499218cSNeil Armstrong							groups = "tdm_a_dout0";
11081499218cSNeil Armstrong							function = "tdm_a";
11091499218cSNeil Armstrong							bias-disable;
11101499218cSNeil Armstrong							drive-strength-microamp = <3000>;
11111499218cSNeil Armstrong						};
11121499218cSNeil Armstrong					};
11131499218cSNeil Armstrong
11141499218cSNeil Armstrong					tdm_a_dout1_pins: tdm-a-dout1 {
11151499218cSNeil Armstrong						mux {
11161499218cSNeil Armstrong							groups = "tdm_a_dout1";
11171499218cSNeil Armstrong							function = "tdm_a";
11181499218cSNeil Armstrong							bias-disable;
11191499218cSNeil Armstrong							drive-strength-microamp = <3000>;
11201499218cSNeil Armstrong						};
11211499218cSNeil Armstrong					};
11221499218cSNeil Armstrong
11231499218cSNeil Armstrong					tdm_a_fs_pins: tdm-a-fs {
11241499218cSNeil Armstrong						mux {
11251499218cSNeil Armstrong							groups = "tdm_a_fs";
11261499218cSNeil Armstrong							function = "tdm_a";
11271499218cSNeil Armstrong							bias-disable;
11281499218cSNeil Armstrong							drive-strength-microamp = <3000>;
11291499218cSNeil Armstrong						};
11301499218cSNeil Armstrong					};
11311499218cSNeil Armstrong
11321499218cSNeil Armstrong					tdm_a_sclk_pins: tdm-a-sclk {
11331499218cSNeil Armstrong						mux {
11341499218cSNeil Armstrong							groups = "tdm_a_sclk";
11351499218cSNeil Armstrong							function = "tdm_a";
11361499218cSNeil Armstrong							bias-disable;
11371499218cSNeil Armstrong							drive-strength-microamp = <3000>;
11381499218cSNeil Armstrong						};
11391499218cSNeil Armstrong					};
11401499218cSNeil Armstrong
11411499218cSNeil Armstrong					tdm_a_slv_fs_pins: tdm-a-slv-fs {
11421499218cSNeil Armstrong						mux {
11431499218cSNeil Armstrong							groups = "tdm_a_slv_fs";
11441499218cSNeil Armstrong							function = "tdm_a";
11451499218cSNeil Armstrong							bias-disable;
11461499218cSNeil Armstrong						};
11471499218cSNeil Armstrong					};
11481499218cSNeil Armstrong
11491499218cSNeil Armstrong
11501499218cSNeil Armstrong					tdm_a_slv_sclk_pins: tdm-a-slv-sclk {
11511499218cSNeil Armstrong						mux {
11521499218cSNeil Armstrong							groups = "tdm_a_slv_sclk";
11531499218cSNeil Armstrong							function = "tdm_a";
11541499218cSNeil Armstrong							bias-disable;
11551499218cSNeil Armstrong						};
11561499218cSNeil Armstrong					};
11571499218cSNeil Armstrong
11581499218cSNeil Armstrong					tdm_b_din0_pins: tdm-b-din0 {
11591499218cSNeil Armstrong						mux {
11601499218cSNeil Armstrong							groups = "tdm_b_din0";
11611499218cSNeil Armstrong							function = "tdm_b";
11621499218cSNeil Armstrong							bias-disable;
11631499218cSNeil Armstrong						};
11641499218cSNeil Armstrong					};
11651499218cSNeil Armstrong
11661499218cSNeil Armstrong					tdm_b_din1_pins: tdm-b-din1 {
11671499218cSNeil Armstrong						mux {
11681499218cSNeil Armstrong							groups = "tdm_b_din1";
11691499218cSNeil Armstrong							function = "tdm_b";
11701499218cSNeil Armstrong							bias-disable;
11711499218cSNeil Armstrong						};
11721499218cSNeil Armstrong					};
11731499218cSNeil Armstrong
11741499218cSNeil Armstrong					tdm_b_din2_pins: tdm-b-din2 {
11751499218cSNeil Armstrong						mux {
11761499218cSNeil Armstrong							groups = "tdm_b_din2";
11771499218cSNeil Armstrong							function = "tdm_b";
11781499218cSNeil Armstrong							bias-disable;
11791499218cSNeil Armstrong						};
11801499218cSNeil Armstrong					};
11811499218cSNeil Armstrong
11821499218cSNeil Armstrong					tdm_b_din3_a_pins: tdm-b-din3-a {
11831499218cSNeil Armstrong						mux {
11841499218cSNeil Armstrong							groups = "tdm_b_din3_a";
11851499218cSNeil Armstrong							function = "tdm_b";
11861499218cSNeil Armstrong							bias-disable;
11871499218cSNeil Armstrong						};
11881499218cSNeil Armstrong					};
11891499218cSNeil Armstrong
11901499218cSNeil Armstrong					tdm_b_din3_h_pins: tdm-b-din3-h {
11911499218cSNeil Armstrong						mux {
11921499218cSNeil Armstrong							groups = "tdm_b_din3_h";
11931499218cSNeil Armstrong							function = "tdm_b";
11941499218cSNeil Armstrong							bias-disable;
11951499218cSNeil Armstrong						};
11961499218cSNeil Armstrong					};
11971499218cSNeil Armstrong
11981499218cSNeil Armstrong					tdm_b_dout0_pins: tdm-b-dout0 {
11991499218cSNeil Armstrong						mux {
12001499218cSNeil Armstrong							groups = "tdm_b_dout0";
12011499218cSNeil Armstrong							function = "tdm_b";
12021499218cSNeil Armstrong							bias-disable;
12031499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12041499218cSNeil Armstrong						};
12051499218cSNeil Armstrong					};
12061499218cSNeil Armstrong
12071499218cSNeil Armstrong					tdm_b_dout1_pins: tdm-b-dout1 {
12081499218cSNeil Armstrong						mux {
12091499218cSNeil Armstrong							groups = "tdm_b_dout1";
12101499218cSNeil Armstrong							function = "tdm_b";
12111499218cSNeil Armstrong							bias-disable;
12121499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12131499218cSNeil Armstrong						};
12141499218cSNeil Armstrong					};
12151499218cSNeil Armstrong
12161499218cSNeil Armstrong					tdm_b_dout2_pins: tdm-b-dout2 {
12171499218cSNeil Armstrong						mux {
12181499218cSNeil Armstrong							groups = "tdm_b_dout2";
12191499218cSNeil Armstrong							function = "tdm_b";
12201499218cSNeil Armstrong							bias-disable;
12211499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12221499218cSNeil Armstrong						};
12231499218cSNeil Armstrong					};
12241499218cSNeil Armstrong
12251499218cSNeil Armstrong					tdm_b_dout3_a_pins: tdm-b-dout3-a {
12261499218cSNeil Armstrong						mux {
12271499218cSNeil Armstrong							groups = "tdm_b_dout3_a";
12281499218cSNeil Armstrong							function = "tdm_b";
12291499218cSNeil Armstrong							bias-disable;
12301499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12311499218cSNeil Armstrong						};
12321499218cSNeil Armstrong					};
12331499218cSNeil Armstrong
12341499218cSNeil Armstrong					tdm_b_dout3_h_pins: tdm-b-dout3-h {
12351499218cSNeil Armstrong						mux {
12361499218cSNeil Armstrong							groups = "tdm_b_dout3_h";
12371499218cSNeil Armstrong							function = "tdm_b";
12381499218cSNeil Armstrong							bias-disable;
12391499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12401499218cSNeil Armstrong						};
12411499218cSNeil Armstrong					};
12421499218cSNeil Armstrong
12431499218cSNeil Armstrong					tdm_b_fs_pins: tdm-b-fs {
12441499218cSNeil Armstrong						mux {
12451499218cSNeil Armstrong							groups = "tdm_b_fs";
12461499218cSNeil Armstrong							function = "tdm_b";
12471499218cSNeil Armstrong							bias-disable;
12481499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12491499218cSNeil Armstrong						};
12501499218cSNeil Armstrong					};
12511499218cSNeil Armstrong
12521499218cSNeil Armstrong					tdm_b_sclk_pins: tdm-b-sclk {
12531499218cSNeil Armstrong						mux {
12541499218cSNeil Armstrong							groups = "tdm_b_sclk";
12551499218cSNeil Armstrong							function = "tdm_b";
12561499218cSNeil Armstrong							bias-disable;
12571499218cSNeil Armstrong							drive-strength-microamp = <3000>;
12581499218cSNeil Armstrong						};
12591499218cSNeil Armstrong					};
12601499218cSNeil Armstrong
12611499218cSNeil Armstrong					tdm_b_slv_fs_pins: tdm-b-slv-fs {
12621499218cSNeil Armstrong						mux {
12631499218cSNeil Armstrong							groups = "tdm_b_slv_fs";
12641499218cSNeil Armstrong							function = "tdm_b";
12651499218cSNeil Armstrong							bias-disable;
12661499218cSNeil Armstrong						};
12671499218cSNeil Armstrong					};
12681499218cSNeil Armstrong
12691499218cSNeil Armstrong					tdm_b_slv_sclk_pins: tdm-b-slv-sclk {
12701499218cSNeil Armstrong						mux {
12711499218cSNeil Armstrong							groups = "tdm_b_slv_sclk";
12721499218cSNeil Armstrong							function = "tdm_b";
12731499218cSNeil Armstrong							bias-disable;
12741499218cSNeil Armstrong						};
12751499218cSNeil Armstrong					};
12761499218cSNeil Armstrong
12771499218cSNeil Armstrong					tdm_c_din0_a_pins: tdm-c-din0-a {
12781499218cSNeil Armstrong						mux {
12791499218cSNeil Armstrong							groups = "tdm_c_din0_a";
12801499218cSNeil Armstrong							function = "tdm_c";
12811499218cSNeil Armstrong							bias-disable;
12821499218cSNeil Armstrong						};
12831499218cSNeil Armstrong					};
12841499218cSNeil Armstrong
12851499218cSNeil Armstrong					tdm_c_din0_z_pins: tdm-c-din0-z {
12861499218cSNeil Armstrong						mux {
12871499218cSNeil Armstrong							groups = "tdm_c_din0_z";
12881499218cSNeil Armstrong							function = "tdm_c";
12891499218cSNeil Armstrong							bias-disable;
12901499218cSNeil Armstrong						};
12911499218cSNeil Armstrong					};
12921499218cSNeil Armstrong
12931499218cSNeil Armstrong					tdm_c_din1_a_pins: tdm-c-din1-a {
12941499218cSNeil Armstrong						mux {
12951499218cSNeil Armstrong							groups = "tdm_c_din1_a";
12961499218cSNeil Armstrong							function = "tdm_c";
12971499218cSNeil Armstrong							bias-disable;
12981499218cSNeil Armstrong						};
12991499218cSNeil Armstrong					};
13001499218cSNeil Armstrong
13011499218cSNeil Armstrong					tdm_c_din1_z_pins: tdm-c-din1-z {
13021499218cSNeil Armstrong						mux {
13031499218cSNeil Armstrong							groups = "tdm_c_din1_z";
13041499218cSNeil Armstrong							function = "tdm_c";
13051499218cSNeil Armstrong							bias-disable;
13061499218cSNeil Armstrong						};
13071499218cSNeil Armstrong					};
13081499218cSNeil Armstrong
13091499218cSNeil Armstrong					tdm_c_din2_a_pins: tdm-c-din2-a {
13101499218cSNeil Armstrong						mux {
13111499218cSNeil Armstrong							groups = "tdm_c_din2_a";
13121499218cSNeil Armstrong							function = "tdm_c";
13131499218cSNeil Armstrong							bias-disable;
13141499218cSNeil Armstrong						};
13151499218cSNeil Armstrong					};
13161499218cSNeil Armstrong
13171499218cSNeil Armstrong					eth_leds_pins: eth-leds {
13181499218cSNeil Armstrong						mux {
13191499218cSNeil Armstrong							groups = "eth_link_led",
13201499218cSNeil Armstrong								 "eth_act_led";
13211499218cSNeil Armstrong							function = "eth";
13221499218cSNeil Armstrong							bias-disable;
13231499218cSNeil Armstrong						};
13241499218cSNeil Armstrong					};
13251499218cSNeil Armstrong
13261499218cSNeil Armstrong					eth_pins: eth {
13271499218cSNeil Armstrong						mux {
13281499218cSNeil Armstrong							groups = "eth_mdio",
13291499218cSNeil Armstrong								 "eth_mdc",
13301499218cSNeil Armstrong								 "eth_rgmii_rx_clk",
13311499218cSNeil Armstrong								 "eth_rx_dv",
13321499218cSNeil Armstrong								 "eth_rxd0",
13331499218cSNeil Armstrong								 "eth_rxd1",
13341499218cSNeil Armstrong								 "eth_txen",
13351499218cSNeil Armstrong								 "eth_txd0",
13361499218cSNeil Armstrong								 "eth_txd1";
13371499218cSNeil Armstrong							function = "eth";
13381499218cSNeil Armstrong							drive-strength-microamp = <4000>;
13391499218cSNeil Armstrong							bias-disable;
13401499218cSNeil Armstrong						};
13411499218cSNeil Armstrong					};
13421499218cSNeil Armstrong
13431499218cSNeil Armstrong					eth_rgmii_pins: eth-rgmii {
13441499218cSNeil Armstrong						mux {
13451499218cSNeil Armstrong							groups = "eth_rxd2_rgmii",
13461499218cSNeil Armstrong								 "eth_rxd3_rgmii",
13471499218cSNeil Armstrong								 "eth_rgmii_tx_clk",
13481499218cSNeil Armstrong								 "eth_txd2_rgmii",
13491499218cSNeil Armstrong								 "eth_txd3_rgmii";
13501499218cSNeil Armstrong							function = "eth";
13511499218cSNeil Armstrong							drive-strength-microamp = <4000>;
13521499218cSNeil Armstrong							bias-disable;
13531499218cSNeil Armstrong						};
13541499218cSNeil Armstrong					};
13551499218cSNeil Armstrong
13561499218cSNeil Armstrong					tdm_c_din2_z_pins: tdm-c-din2-z {
13571499218cSNeil Armstrong						mux {
13581499218cSNeil Armstrong							groups = "tdm_c_din2_z";
13591499218cSNeil Armstrong							function = "tdm_c";
13601499218cSNeil Armstrong							bias-disable;
13611499218cSNeil Armstrong						};
13621499218cSNeil Armstrong					};
13631499218cSNeil Armstrong
13641499218cSNeil Armstrong					tdm_c_din3_a_pins: tdm-c-din3-a {
13651499218cSNeil Armstrong						mux {
13661499218cSNeil Armstrong							groups = "tdm_c_din3_a";
13671499218cSNeil Armstrong							function = "tdm_c";
13681499218cSNeil Armstrong							bias-disable;
13691499218cSNeil Armstrong						};
13701499218cSNeil Armstrong					};
13711499218cSNeil Armstrong
13721499218cSNeil Armstrong					tdm_c_din3_z_pins: tdm-c-din3-z {
13731499218cSNeil Armstrong						mux {
13741499218cSNeil Armstrong							groups = "tdm_c_din3_z";
13751499218cSNeil Armstrong							function = "tdm_c";
13761499218cSNeil Armstrong							bias-disable;
13771499218cSNeil Armstrong						};
13781499218cSNeil Armstrong					};
13791499218cSNeil Armstrong
13801499218cSNeil Armstrong					tdm_c_dout0_a_pins: tdm-c-dout0-a {
13811499218cSNeil Armstrong						mux {
13821499218cSNeil Armstrong							groups = "tdm_c_dout0_a";
13831499218cSNeil Armstrong							function = "tdm_c";
13841499218cSNeil Armstrong							bias-disable;
13851499218cSNeil Armstrong							drive-strength-microamp = <3000>;
13861499218cSNeil Armstrong						};
13871499218cSNeil Armstrong					};
13881499218cSNeil Armstrong
13891499218cSNeil Armstrong					tdm_c_dout0_z_pins: tdm-c-dout0-z {
13901499218cSNeil Armstrong						mux {
13911499218cSNeil Armstrong							groups = "tdm_c_dout0_z";
13921499218cSNeil Armstrong							function = "tdm_c";
13931499218cSNeil Armstrong							bias-disable;
13941499218cSNeil Armstrong							drive-strength-microamp = <3000>;
13951499218cSNeil Armstrong						};
13961499218cSNeil Armstrong					};
13971499218cSNeil Armstrong
13981499218cSNeil Armstrong					tdm_c_dout1_a_pins: tdm-c-dout1-a {
13991499218cSNeil Armstrong						mux {
14001499218cSNeil Armstrong							groups = "tdm_c_dout1_a";
14011499218cSNeil Armstrong							function = "tdm_c";
14021499218cSNeil Armstrong							bias-disable;
14031499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14041499218cSNeil Armstrong						};
14051499218cSNeil Armstrong					};
14061499218cSNeil Armstrong
14071499218cSNeil Armstrong					tdm_c_dout1_z_pins: tdm-c-dout1-z {
14081499218cSNeil Armstrong						mux {
14091499218cSNeil Armstrong							groups = "tdm_c_dout1_z";
14101499218cSNeil Armstrong							function = "tdm_c";
14111499218cSNeil Armstrong							bias-disable;
14121499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14131499218cSNeil Armstrong						};
14141499218cSNeil Armstrong					};
14151499218cSNeil Armstrong
14161499218cSNeil Armstrong					tdm_c_dout2_a_pins: tdm-c-dout2-a {
14171499218cSNeil Armstrong						mux {
14181499218cSNeil Armstrong							groups = "tdm_c_dout2_a";
14191499218cSNeil Armstrong							function = "tdm_c";
14201499218cSNeil Armstrong							bias-disable;
14211499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14221499218cSNeil Armstrong						};
14231499218cSNeil Armstrong					};
14241499218cSNeil Armstrong
14251499218cSNeil Armstrong					tdm_c_dout2_z_pins: tdm-c-dout2-z {
14261499218cSNeil Armstrong						mux {
14271499218cSNeil Armstrong							groups = "tdm_c_dout2_z";
14281499218cSNeil Armstrong							function = "tdm_c";
14291499218cSNeil Armstrong							bias-disable;
14301499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14311499218cSNeil Armstrong						};
14321499218cSNeil Armstrong					};
14331499218cSNeil Armstrong
14341499218cSNeil Armstrong					tdm_c_dout3_a_pins: tdm-c-dout3-a {
14351499218cSNeil Armstrong						mux {
14361499218cSNeil Armstrong							groups = "tdm_c_dout3_a";
14371499218cSNeil Armstrong							function = "tdm_c";
14381499218cSNeil Armstrong							bias-disable;
14391499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14401499218cSNeil Armstrong						};
14411499218cSNeil Armstrong					};
14421499218cSNeil Armstrong
14431499218cSNeil Armstrong					tdm_c_dout3_z_pins: tdm-c-dout3-z {
14441499218cSNeil Armstrong						mux {
14451499218cSNeil Armstrong							groups = "tdm_c_dout3_z";
14461499218cSNeil Armstrong							function = "tdm_c";
14471499218cSNeil Armstrong							bias-disable;
14481499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14491499218cSNeil Armstrong						};
14501499218cSNeil Armstrong					};
14511499218cSNeil Armstrong
14521499218cSNeil Armstrong					tdm_c_fs_a_pins: tdm-c-fs-a {
14531499218cSNeil Armstrong						mux {
14541499218cSNeil Armstrong							groups = "tdm_c_fs_a";
14551499218cSNeil Armstrong							function = "tdm_c";
14561499218cSNeil Armstrong							bias-disable;
14571499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14581499218cSNeil Armstrong						};
14591499218cSNeil Armstrong					};
14601499218cSNeil Armstrong
14611499218cSNeil Armstrong					tdm_c_fs_z_pins: tdm-c-fs-z {
14621499218cSNeil Armstrong						mux {
14631499218cSNeil Armstrong							groups = "tdm_c_fs_z";
14641499218cSNeil Armstrong							function = "tdm_c";
14651499218cSNeil Armstrong							bias-disable;
14661499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14671499218cSNeil Armstrong						};
14681499218cSNeil Armstrong					};
14691499218cSNeil Armstrong
14701499218cSNeil Armstrong					tdm_c_sclk_a_pins: tdm-c-sclk-a {
14711499218cSNeil Armstrong						mux {
14721499218cSNeil Armstrong							groups = "tdm_c_sclk_a";
14731499218cSNeil Armstrong							function = "tdm_c";
14741499218cSNeil Armstrong							bias-disable;
14751499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14761499218cSNeil Armstrong						};
14771499218cSNeil Armstrong					};
14781499218cSNeil Armstrong
14791499218cSNeil Armstrong					tdm_c_sclk_z_pins: tdm-c-sclk-z {
14801499218cSNeil Armstrong						mux {
14811499218cSNeil Armstrong							groups = "tdm_c_sclk_z";
14821499218cSNeil Armstrong							function = "tdm_c";
14831499218cSNeil Armstrong							bias-disable;
14841499218cSNeil Armstrong							drive-strength-microamp = <3000>;
14851499218cSNeil Armstrong						};
14861499218cSNeil Armstrong					};
14871499218cSNeil Armstrong
14881499218cSNeil Armstrong					tdm_c_slv_fs_a_pins: tdm-c-slv-fs-a {
14891499218cSNeil Armstrong						mux {
14901499218cSNeil Armstrong							groups = "tdm_c_slv_fs_a";
14911499218cSNeil Armstrong							function = "tdm_c";
14921499218cSNeil Armstrong							bias-disable;
14931499218cSNeil Armstrong						};
14941499218cSNeil Armstrong					};
14951499218cSNeil Armstrong
14961499218cSNeil Armstrong					tdm_c_slv_fs_z_pins: tdm-c-slv-fs-z {
14971499218cSNeil Armstrong						mux {
14981499218cSNeil Armstrong							groups = "tdm_c_slv_fs_z";
14991499218cSNeil Armstrong							function = "tdm_c";
15001499218cSNeil Armstrong							bias-disable;
15011499218cSNeil Armstrong						};
15021499218cSNeil Armstrong					};
15031499218cSNeil Armstrong
15041499218cSNeil Armstrong					tdm_c_slv_sclk_a_pins: tdm-c-slv-sclk-a {
15051499218cSNeil Armstrong						mux {
15061499218cSNeil Armstrong							groups = "tdm_c_slv_sclk_a";
15071499218cSNeil Armstrong							function = "tdm_c";
15081499218cSNeil Armstrong							bias-disable;
15091499218cSNeil Armstrong						};
15101499218cSNeil Armstrong					};
15111499218cSNeil Armstrong
15121499218cSNeil Armstrong					tdm_c_slv_sclk_z_pins: tdm-c-slv-sclk-z {
15131499218cSNeil Armstrong						mux {
15141499218cSNeil Armstrong							groups = "tdm_c_slv_sclk_z";
15151499218cSNeil Armstrong							function = "tdm_c";
15161499218cSNeil Armstrong							bias-disable;
15171499218cSNeil Armstrong						};
15181499218cSNeil Armstrong					};
15191499218cSNeil Armstrong
15201499218cSNeil Armstrong					uart_a_pins: uart-a {
15211499218cSNeil Armstrong						mux {
15221499218cSNeil Armstrong							groups = "uart_a_tx",
15231499218cSNeil Armstrong								 "uart_a_rx";
15241499218cSNeil Armstrong							function = "uart_a";
15251499218cSNeil Armstrong							bias-disable;
15261499218cSNeil Armstrong						};
15271499218cSNeil Armstrong					};
15281499218cSNeil Armstrong
15291499218cSNeil Armstrong					uart_a_cts_rts_pins: uart-a-cts-rts {
15301499218cSNeil Armstrong						mux {
15311499218cSNeil Armstrong							groups = "uart_a_cts",
15321499218cSNeil Armstrong								 "uart_a_rts";
15331499218cSNeil Armstrong							function = "uart_a";
15341499218cSNeil Armstrong							bias-disable;
15351499218cSNeil Armstrong						};
15361499218cSNeil Armstrong					};
15371499218cSNeil Armstrong
15381499218cSNeil Armstrong					uart_b_pins: uart-b {
15391499218cSNeil Armstrong						mux {
15401499218cSNeil Armstrong							groups = "uart_b_tx",
15411499218cSNeil Armstrong								 "uart_b_rx";
15421499218cSNeil Armstrong							function = "uart_b";
15431499218cSNeil Armstrong							bias-disable;
15441499218cSNeil Armstrong						};
15451499218cSNeil Armstrong					};
15461499218cSNeil Armstrong
15471499218cSNeil Armstrong					uart_c_pins: uart-c {
15481499218cSNeil Armstrong						mux {
15491499218cSNeil Armstrong							groups = "uart_c_tx",
15501499218cSNeil Armstrong								 "uart_c_rx";
15511499218cSNeil Armstrong							function = "uart_c";
15521499218cSNeil Armstrong							bias-disable;
15531499218cSNeil Armstrong						};
15541499218cSNeil Armstrong					};
15551499218cSNeil Armstrong
15561499218cSNeil Armstrong					uart_c_cts_rts_pins: uart-c-cts-rts {
15571499218cSNeil Armstrong						mux {
15581499218cSNeil Armstrong							groups = "uart_c_cts",
15591499218cSNeil Armstrong								 "uart_c_rts";
15601499218cSNeil Armstrong							function = "uart_c";
15611499218cSNeil Armstrong							bias-disable;
15621499218cSNeil Armstrong						};
15631499218cSNeil Armstrong					};
15641499218cSNeil Armstrong				};
15651499218cSNeil Armstrong			};
15661499218cSNeil Armstrong
15678656783fSGuillaume La Roque			cpu_temp: temperature-sensor@34800 {
15688656783fSGuillaume La Roque				compatible = "amlogic,g12a-cpu-thermal",
15698656783fSGuillaume La Roque					     "amlogic,g12a-thermal";
15708656783fSGuillaume La Roque				reg = <0x0 0x34800 0x0 0x50>;
15718656783fSGuillaume La Roque				interrupts = <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>;
15728656783fSGuillaume La Roque				clocks = <&clkc CLKID_TS>;
15738656783fSGuillaume La Roque				#thermal-sensor-cells = <0>;
15748656783fSGuillaume La Roque				amlogic,ao-secure = <&sec_AO>;
15758656783fSGuillaume La Roque			};
15768656783fSGuillaume La Roque
15778656783fSGuillaume La Roque			ddr_temp: temperature-sensor@34c00 {
15788656783fSGuillaume La Roque				compatible = "amlogic,g12a-ddr-thermal",
15798656783fSGuillaume La Roque					     "amlogic,g12a-thermal";
15808656783fSGuillaume La Roque				reg = <0x0 0x34c00 0x0 0x50>;
15818656783fSGuillaume La Roque				interrupts = <GIC_SPI 36 IRQ_TYPE_EDGE_RISING>;
15828656783fSGuillaume La Roque				clocks = <&clkc CLKID_TS>;
15838656783fSGuillaume La Roque				#thermal-sensor-cells = <0>;
15848656783fSGuillaume La Roque				amlogic,ao-secure = <&sec_AO>;
15858656783fSGuillaume La Roque			};
15868656783fSGuillaume La Roque
15871499218cSNeil Armstrong			usb2_phy0: phy@36000 {
15881499218cSNeil Armstrong				compatible = "amlogic,g12a-usb2-phy";
15891499218cSNeil Armstrong				reg = <0x0 0x36000 0x0 0x2000>;
15901499218cSNeil Armstrong				clocks = <&xtal>;
15911499218cSNeil Armstrong				clock-names = "xtal";
15921499218cSNeil Armstrong				resets = <&reset RESET_USB_PHY20>;
15931499218cSNeil Armstrong				reset-names = "phy";
15941499218cSNeil Armstrong				#phy-cells = <0>;
15951499218cSNeil Armstrong			};
15961499218cSNeil Armstrong
15971499218cSNeil Armstrong			dmc: bus@38000 {
15981499218cSNeil Armstrong				compatible = "simple-bus";
15991499218cSNeil Armstrong				reg = <0x0 0x38000 0x0 0x400>;
16001499218cSNeil Armstrong				#address-cells = <2>;
16011499218cSNeil Armstrong				#size-cells = <2>;
16021499218cSNeil Armstrong				ranges = <0x0 0x0 0x0 0x38000 0x0 0x400>;
16031499218cSNeil Armstrong
16041499218cSNeil Armstrong				canvas: video-lut@48 {
16051499218cSNeil Armstrong					compatible = "amlogic,canvas";
16061499218cSNeil Armstrong					reg = <0x0 0x48 0x0 0x14>;
16071499218cSNeil Armstrong				};
16081499218cSNeil Armstrong			};
16091499218cSNeil Armstrong
16101499218cSNeil Armstrong			usb2_phy1: phy@3a000 {
16111499218cSNeil Armstrong				compatible = "amlogic,g12a-usb2-phy";
16121499218cSNeil Armstrong				reg = <0x0 0x3a000 0x0 0x2000>;
16131499218cSNeil Armstrong				clocks = <&xtal>;
16141499218cSNeil Armstrong				clock-names = "xtal";
16151499218cSNeil Armstrong				resets = <&reset RESET_USB_PHY21>;
16161499218cSNeil Armstrong				reset-names = "phy";
16171499218cSNeil Armstrong				#phy-cells = <0>;
16181499218cSNeil Armstrong			};
16191499218cSNeil Armstrong
16201499218cSNeil Armstrong			hiu: bus@3c000 {
16211499218cSNeil Armstrong				compatible = "simple-bus";
16221499218cSNeil Armstrong				reg = <0x0 0x3c000 0x0 0x1400>;
16231499218cSNeil Armstrong				#address-cells = <2>;
16241499218cSNeil Armstrong				#size-cells = <2>;
16251499218cSNeil Armstrong				ranges = <0x0 0x0 0x0 0x3c000 0x0 0x1400>;
16261499218cSNeil Armstrong
16271499218cSNeil Armstrong				hhi: system-controller@0 {
16281499218cSNeil Armstrong					compatible = "amlogic,meson-gx-hhi-sysctrl",
16291499218cSNeil Armstrong						     "simple-mfd", "syscon";
16301499218cSNeil Armstrong					reg = <0 0 0 0x400>;
16311499218cSNeil Armstrong
16321499218cSNeil Armstrong					clkc: clock-controller {
16331499218cSNeil Armstrong						compatible = "amlogic,g12a-clkc";
16341499218cSNeil Armstrong						#clock-cells = <1>;
16351499218cSNeil Armstrong						clocks = <&xtal>;
16361499218cSNeil Armstrong						clock-names = "xtal";
16371499218cSNeil Armstrong					};
1638f4f1c8d9SNeil Armstrong
1639f4f1c8d9SNeil Armstrong					pwrc: power-controller {
1640f4f1c8d9SNeil Armstrong						compatible = "amlogic,meson-g12a-pwrc";
1641f4f1c8d9SNeil Armstrong						#power-domain-cells = <1>;
1642f4f1c8d9SNeil Armstrong						amlogic,ao-sysctrl = <&rti>;
1643f4f1c8d9SNeil Armstrong						resets = <&reset RESET_VIU>,
1644f4f1c8d9SNeil Armstrong							 <&reset RESET_VENC>,
1645f4f1c8d9SNeil Armstrong							 <&reset RESET_VCBUS>,
1646f4f1c8d9SNeil Armstrong							 <&reset RESET_BT656>,
1647f4f1c8d9SNeil Armstrong							 <&reset RESET_RDMA>,
1648f4f1c8d9SNeil Armstrong							 <&reset RESET_VENCI>,
1649f4f1c8d9SNeil Armstrong							 <&reset RESET_VENCP>,
1650f4f1c8d9SNeil Armstrong							 <&reset RESET_VDAC>,
1651f4f1c8d9SNeil Armstrong							 <&reset RESET_VDI6>,
1652f4f1c8d9SNeil Armstrong							 <&reset RESET_VENCL>,
1653f4f1c8d9SNeil Armstrong							 <&reset RESET_VID_LOCK>;
1654f4f1c8d9SNeil Armstrong						reset-names = "viu", "venc", "vcbus", "bt656",
1655f4f1c8d9SNeil Armstrong							      "rdma", "venci", "vencp", "vdac",
1656f4f1c8d9SNeil Armstrong							      "vdi6", "vencl", "vid_lock";
1657f4f1c8d9SNeil Armstrong						clocks = <&clkc CLKID_VPU>,
1658f4f1c8d9SNeil Armstrong							 <&clkc CLKID_VAPB>;
1659f4f1c8d9SNeil Armstrong						clock-names = "vpu", "vapb";
1660f4f1c8d9SNeil Armstrong						/*
1661f4f1c8d9SNeil Armstrong						 * VPU clocking is provided by two identical clock paths
1662f4f1c8d9SNeil Armstrong						 * VPU_0 and VPU_1 muxed to a single clock by a glitch
1663f4f1c8d9SNeil Armstrong						 * free mux to safely change frequency while running.
1664f4f1c8d9SNeil Armstrong						 * Same for VAPB but with a final gate after the glitch free mux.
1665f4f1c8d9SNeil Armstrong						 */
1666f4f1c8d9SNeil Armstrong						assigned-clocks = <&clkc CLKID_VPU_0_SEL>,
1667f4f1c8d9SNeil Armstrong								  <&clkc CLKID_VPU_0>,
1668f4f1c8d9SNeil Armstrong								  <&clkc CLKID_VPU>, /* Glitch free mux */
1669f4f1c8d9SNeil Armstrong								  <&clkc CLKID_VAPB_0_SEL>,
1670f4f1c8d9SNeil Armstrong								  <&clkc CLKID_VAPB_0>,
1671f4f1c8d9SNeil Armstrong								  <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */
1672f4f1c8d9SNeil Armstrong						assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>,
1673f4f1c8d9SNeil Armstrong									 <0>, /* Do Nothing */
1674f4f1c8d9SNeil Armstrong									 <&clkc CLKID_VPU_0>,
1675f4f1c8d9SNeil Armstrong									 <&clkc CLKID_FCLK_DIV4>,
1676f4f1c8d9SNeil Armstrong									 <0>, /* Do Nothing */
1677f4f1c8d9SNeil Armstrong									 <&clkc CLKID_VAPB_0>;
1678f4f1c8d9SNeil Armstrong						assigned-clock-rates = <0>, /* Do Nothing */
1679f4f1c8d9SNeil Armstrong								       <666666666>,
1680f4f1c8d9SNeil Armstrong								       <0>, /* Do Nothing */
1681f4f1c8d9SNeil Armstrong								       <0>, /* Do Nothing */
1682f4f1c8d9SNeil Armstrong								       <250000000>,
1683f4f1c8d9SNeil Armstrong								       <0>; /* Do Nothing */
1684f4f1c8d9SNeil Armstrong					};
16851499218cSNeil Armstrong				};
16861499218cSNeil Armstrong			};
16871499218cSNeil Armstrong
16881499218cSNeil Armstrong			usb3_pcie_phy: phy@46000 {
16891499218cSNeil Armstrong				compatible = "amlogic,g12a-usb3-pcie-phy";
16901499218cSNeil Armstrong				reg = <0x0 0x46000 0x0 0x2000>;
16911499218cSNeil Armstrong				clocks = <&clkc CLKID_PCIE_PLL>;
16921499218cSNeil Armstrong				clock-names = "ref_clk";
16931499218cSNeil Armstrong				resets = <&reset RESET_PCIE_PHY>;
16941499218cSNeil Armstrong				reset-names = "phy";
16951499218cSNeil Armstrong				assigned-clocks = <&clkc CLKID_PCIE_PLL>;
16961499218cSNeil Armstrong				assigned-clock-rates = <100000000>;
16971499218cSNeil Armstrong				#phy-cells = <1>;
16981499218cSNeil Armstrong			};
16991499218cSNeil Armstrong
17001499218cSNeil Armstrong			eth_phy: mdio-multiplexer@4c000 {
17011499218cSNeil Armstrong				compatible = "amlogic,g12a-mdio-mux";
17021499218cSNeil Armstrong				reg = <0x0 0x4c000 0x0 0xa4>;
17031499218cSNeil Armstrong				clocks = <&clkc CLKID_ETH_PHY>,
17041499218cSNeil Armstrong					 <&xtal>,
17051499218cSNeil Armstrong					 <&clkc CLKID_MPLL_50M>;
17061499218cSNeil Armstrong				clock-names = "pclk", "clkin0", "clkin1";
17071499218cSNeil Armstrong				mdio-parent-bus = <&mdio0>;
17081499218cSNeil Armstrong				#address-cells = <1>;
17091499218cSNeil Armstrong				#size-cells = <0>;
17101499218cSNeil Armstrong
17111499218cSNeil Armstrong				ext_mdio: mdio@0 {
17121499218cSNeil Armstrong					reg = <0>;
17131499218cSNeil Armstrong					#address-cells = <1>;
17141499218cSNeil Armstrong					#size-cells = <0>;
17151499218cSNeil Armstrong				};
17161499218cSNeil Armstrong
17171499218cSNeil Armstrong				int_mdio: mdio@1 {
17181499218cSNeil Armstrong					reg = <1>;
17191499218cSNeil Armstrong					#address-cells = <1>;
17201499218cSNeil Armstrong					#size-cells = <0>;
17211499218cSNeil Armstrong
17221499218cSNeil Armstrong					internal_ephy: ethernet_phy@8 {
17231499218cSNeil Armstrong						compatible = "ethernet-phy-id0180.3301",
17241499218cSNeil Armstrong							     "ethernet-phy-ieee802.3-c22";
17251499218cSNeil Armstrong						interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
17261499218cSNeil Armstrong						reg = <8>;
17271499218cSNeil Armstrong						max-speed = <100>;
17281499218cSNeil Armstrong					};
17291499218cSNeil Armstrong				};
17301499218cSNeil Armstrong			};
17311499218cSNeil Armstrong		};
17321499218cSNeil Armstrong
17331499218cSNeil Armstrong		aobus: bus@ff800000 {
17341499218cSNeil Armstrong			compatible = "simple-bus";
17351499218cSNeil Armstrong			reg = <0x0 0xff800000 0x0 0x100000>;
17361499218cSNeil Armstrong			#address-cells = <2>;
17371499218cSNeil Armstrong			#size-cells = <2>;
17381499218cSNeil Armstrong			ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
17391499218cSNeil Armstrong
17401499218cSNeil Armstrong			rti: sys-ctrl@0 {
17411499218cSNeil Armstrong				compatible = "amlogic,meson-gx-ao-sysctrl",
17421499218cSNeil Armstrong					     "simple-mfd", "syscon";
17431499218cSNeil Armstrong				reg = <0x0 0x0 0x0 0x100>;
17441499218cSNeil Armstrong				#address-cells = <2>;
17451499218cSNeil Armstrong				#size-cells = <2>;
17461499218cSNeil Armstrong				ranges = <0x0 0x0 0x0 0x0 0x0 0x100>;
17471499218cSNeil Armstrong
17481499218cSNeil Armstrong				clkc_AO: clock-controller {
17491499218cSNeil Armstrong					compatible = "amlogic,meson-g12a-aoclkc";
17501499218cSNeil Armstrong					#clock-cells = <1>;
17511499218cSNeil Armstrong					#reset-cells = <1>;
17521499218cSNeil Armstrong					clocks = <&xtal>, <&clkc CLKID_CLK81>;
17531499218cSNeil Armstrong					clock-names = "xtal", "mpeg-clk";
17541499218cSNeil Armstrong				};
17551499218cSNeil Armstrong
17561499218cSNeil Armstrong				ao_pinctrl: pinctrl@14 {
17571499218cSNeil Armstrong					compatible = "amlogic,meson-g12a-aobus-pinctrl";
17581499218cSNeil Armstrong					#address-cells = <2>;
17591499218cSNeil Armstrong					#size-cells = <2>;
17601499218cSNeil Armstrong					ranges;
17611499218cSNeil Armstrong
17621499218cSNeil Armstrong					gpio_ao: bank@14 {
17631499218cSNeil Armstrong						reg = <0x0 0x14 0x0 0x8>,
17641499218cSNeil Armstrong						      <0x0 0x1c 0x0 0x8>,
17651499218cSNeil Armstrong						      <0x0 0x24 0x0 0x14>;
17661499218cSNeil Armstrong						reg-names = "mux",
17671499218cSNeil Armstrong							    "ds",
17681499218cSNeil Armstrong							    "gpio";
17691499218cSNeil Armstrong						gpio-controller;
17701499218cSNeil Armstrong						#gpio-cells = <2>;
17711499218cSNeil Armstrong						gpio-ranges = <&ao_pinctrl 0 0 15>;
17721499218cSNeil Armstrong					};
17731499218cSNeil Armstrong
17741499218cSNeil Armstrong					i2c_ao_sck_pins: i2c_ao_sck_pins {
17751499218cSNeil Armstrong						mux {
17761499218cSNeil Armstrong							groups = "i2c_ao_sck";
17771499218cSNeil Armstrong							function = "i2c_ao";
17781499218cSNeil Armstrong							bias-disable;
17791499218cSNeil Armstrong							drive-strength-microamp = <3000>;
17801499218cSNeil Armstrong						};
17811499218cSNeil Armstrong					};
17821499218cSNeil Armstrong
17831499218cSNeil Armstrong					i2c_ao_sda_pins: i2c_ao_sda {
17841499218cSNeil Armstrong						mux {
17851499218cSNeil Armstrong							groups = "i2c_ao_sda";
17861499218cSNeil Armstrong							function = "i2c_ao";
17871499218cSNeil Armstrong							bias-disable;
17881499218cSNeil Armstrong							drive-strength-microamp = <3000>;
17891499218cSNeil Armstrong						};
17901499218cSNeil Armstrong					};
17911499218cSNeil Armstrong
17921499218cSNeil Armstrong					i2c_ao_sck_e_pins: i2c_ao_sck_e {
17931499218cSNeil Armstrong						mux {
17941499218cSNeil Armstrong							groups = "i2c_ao_sck_e";
17951499218cSNeil Armstrong							function = "i2c_ao";
17961499218cSNeil Armstrong							bias-disable;
17971499218cSNeil Armstrong							drive-strength-microamp = <3000>;
17981499218cSNeil Armstrong						};
17991499218cSNeil Armstrong					};
18001499218cSNeil Armstrong
18011499218cSNeil Armstrong					i2c_ao_sda_e_pins: i2c_ao_sda_e {
18021499218cSNeil Armstrong						mux {
18031499218cSNeil Armstrong							groups = "i2c_ao_sda_e";
18041499218cSNeil Armstrong							function = "i2c_ao";
18051499218cSNeil Armstrong							bias-disable;
18061499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18071499218cSNeil Armstrong						};
18081499218cSNeil Armstrong					};
18091499218cSNeil Armstrong
18101499218cSNeil Armstrong					mclk0_ao_pins: mclk0-ao {
18111499218cSNeil Armstrong						mux {
18121499218cSNeil Armstrong							groups = "mclk0_ao";
18131499218cSNeil Armstrong							function = "mclk0_ao";
18141499218cSNeil Armstrong							bias-disable;
18151499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18161499218cSNeil Armstrong						};
18171499218cSNeil Armstrong					};
18181499218cSNeil Armstrong
18191499218cSNeil Armstrong					tdm_ao_b_din0_pins: tdm-ao-b-din0 {
18201499218cSNeil Armstrong						mux {
18211499218cSNeil Armstrong							groups = "tdm_ao_b_din0";
18221499218cSNeil Armstrong							function = "tdm_ao_b";
18231499218cSNeil Armstrong							bias-disable;
18241499218cSNeil Armstrong						};
18251499218cSNeil Armstrong					};
18261499218cSNeil Armstrong
18271499218cSNeil Armstrong					spdif_ao_out_pins: spdif-ao-out {
18281499218cSNeil Armstrong						mux {
18291499218cSNeil Armstrong							groups = "spdif_ao_out";
18301499218cSNeil Armstrong							function = "spdif_ao_out";
18311499218cSNeil Armstrong							drive-strength-microamp = <500>;
18321499218cSNeil Armstrong							bias-disable;
18331499218cSNeil Armstrong						};
18341499218cSNeil Armstrong					};
18351499218cSNeil Armstrong
18361499218cSNeil Armstrong					tdm_ao_b_din1_pins: tdm-ao-b-din1 {
18371499218cSNeil Armstrong						mux {
18381499218cSNeil Armstrong							groups = "tdm_ao_b_din1";
18391499218cSNeil Armstrong							function = "tdm_ao_b";
18401499218cSNeil Armstrong							bias-disable;
18411499218cSNeil Armstrong						};
18421499218cSNeil Armstrong					};
18431499218cSNeil Armstrong
18441499218cSNeil Armstrong					tdm_ao_b_din2_pins: tdm-ao-b-din2 {
18451499218cSNeil Armstrong						mux {
18461499218cSNeil Armstrong							groups = "tdm_ao_b_din2";
18471499218cSNeil Armstrong							function = "tdm_ao_b";
18481499218cSNeil Armstrong							bias-disable;
18491499218cSNeil Armstrong						};
18501499218cSNeil Armstrong					};
18511499218cSNeil Armstrong
18521499218cSNeil Armstrong					tdm_ao_b_dout0_pins: tdm-ao-b-dout0 {
18531499218cSNeil Armstrong						mux {
18541499218cSNeil Armstrong							groups = "tdm_ao_b_dout0";
18551499218cSNeil Armstrong							function = "tdm_ao_b";
18561499218cSNeil Armstrong							bias-disable;
18571499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18581499218cSNeil Armstrong						};
18591499218cSNeil Armstrong					};
18601499218cSNeil Armstrong
18611499218cSNeil Armstrong					tdm_ao_b_dout1_pins: tdm-ao-b-dout1 {
18621499218cSNeil Armstrong						mux {
18631499218cSNeil Armstrong							groups = "tdm_ao_b_dout1";
18641499218cSNeil Armstrong							function = "tdm_ao_b";
18651499218cSNeil Armstrong							bias-disable;
18661499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18671499218cSNeil Armstrong						};
18681499218cSNeil Armstrong					};
18691499218cSNeil Armstrong
18701499218cSNeil Armstrong					tdm_ao_b_dout2_pins: tdm-ao-b-dout2 {
18711499218cSNeil Armstrong						mux {
18721499218cSNeil Armstrong							groups = "tdm_ao_b_dout2";
18731499218cSNeil Armstrong							function = "tdm_ao_b";
18741499218cSNeil Armstrong							bias-disable;
18751499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18761499218cSNeil Armstrong						};
18771499218cSNeil Armstrong					};
18781499218cSNeil Armstrong
18791499218cSNeil Armstrong					tdm_ao_b_fs_pins: tdm-ao-b-fs {
18801499218cSNeil Armstrong						mux {
18811499218cSNeil Armstrong							groups = "tdm_ao_b_fs";
18821499218cSNeil Armstrong							function = "tdm_ao_b";
18831499218cSNeil Armstrong							bias-disable;
18841499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18851499218cSNeil Armstrong						};
18861499218cSNeil Armstrong					};
18871499218cSNeil Armstrong
18881499218cSNeil Armstrong					tdm_ao_b_sclk_pins: tdm-ao-b-sclk {
18891499218cSNeil Armstrong						mux {
18901499218cSNeil Armstrong							groups = "tdm_ao_b_sclk";
18911499218cSNeil Armstrong							function = "tdm_ao_b";
18921499218cSNeil Armstrong							bias-disable;
18931499218cSNeil Armstrong							drive-strength-microamp = <3000>;
18941499218cSNeil Armstrong						};
18951499218cSNeil Armstrong					};
18961499218cSNeil Armstrong
18971499218cSNeil Armstrong					tdm_ao_b_slv_fs_pins: tdm-ao-b-slv-fs {
18981499218cSNeil Armstrong						mux {
18991499218cSNeil Armstrong							groups = "tdm_ao_b_slv_fs";
19001499218cSNeil Armstrong							function = "tdm_ao_b";
19011499218cSNeil Armstrong							bias-disable;
19021499218cSNeil Armstrong						};
19031499218cSNeil Armstrong					};
19041499218cSNeil Armstrong
19051499218cSNeil Armstrong					tdm_ao_b_slv_sclk_pins: tdm-ao-b-slv-sclk {
19061499218cSNeil Armstrong						mux {
19071499218cSNeil Armstrong							groups = "tdm_ao_b_slv_sclk";
19081499218cSNeil Armstrong							function = "tdm_ao_b";
19091499218cSNeil Armstrong							bias-disable;
19101499218cSNeil Armstrong						};
19111499218cSNeil Armstrong					};
19121499218cSNeil Armstrong
19131499218cSNeil Armstrong					uart_ao_a_pins: uart-a-ao {
19141499218cSNeil Armstrong						mux {
19151499218cSNeil Armstrong							groups = "uart_ao_a_tx",
19161499218cSNeil Armstrong								 "uart_ao_a_rx";
19171499218cSNeil Armstrong							function = "uart_ao_a";
19181499218cSNeil Armstrong							bias-disable;
19191499218cSNeil Armstrong						};
19201499218cSNeil Armstrong					};
19211499218cSNeil Armstrong
19221499218cSNeil Armstrong					uart_ao_a_cts_rts_pins: uart-ao-a-cts-rts {
19231499218cSNeil Armstrong						mux {
19241499218cSNeil Armstrong							groups = "uart_ao_a_cts",
19251499218cSNeil Armstrong								 "uart_ao_a_rts";
19261499218cSNeil Armstrong							function = "uart_ao_a";
19271499218cSNeil Armstrong							bias-disable;
19281499218cSNeil Armstrong						};
19291499218cSNeil Armstrong					};
19301499218cSNeil Armstrong
1931cca30c89SNeil Armstrong					pwm_a_e_pins: pwm-a-e {
1932cca30c89SNeil Armstrong						mux {
1933cca30c89SNeil Armstrong							groups = "pwm_a_e";
1934cca30c89SNeil Armstrong							function = "pwm_a_e";
1935cca30c89SNeil Armstrong							bias-disable;
1936cca30c89SNeil Armstrong						};
1937cca30c89SNeil Armstrong					};
1938cca30c89SNeil Armstrong
19391499218cSNeil Armstrong					pwm_ao_a_pins: pwm-ao-a {
19401499218cSNeil Armstrong						mux {
19411499218cSNeil Armstrong							groups = "pwm_ao_a";
19421499218cSNeil Armstrong							function = "pwm_ao_a";
19431499218cSNeil Armstrong							bias-disable;
19441499218cSNeil Armstrong						};
19451499218cSNeil Armstrong					};
19461499218cSNeil Armstrong
19471499218cSNeil Armstrong					pwm_ao_b_pins: pwm-ao-b {
19481499218cSNeil Armstrong						mux {
19491499218cSNeil Armstrong							groups = "pwm_ao_b";
19501499218cSNeil Armstrong							function = "pwm_ao_b";
19511499218cSNeil Armstrong							bias-disable;
19521499218cSNeil Armstrong						};
19531499218cSNeil Armstrong					};
19541499218cSNeil Armstrong
19551499218cSNeil Armstrong					pwm_ao_c_4_pins: pwm-ao-c-4 {
19561499218cSNeil Armstrong						mux {
19571499218cSNeil Armstrong							groups = "pwm_ao_c_4";
19581499218cSNeil Armstrong							function = "pwm_ao_c";
19591499218cSNeil Armstrong							bias-disable;
19601499218cSNeil Armstrong						};
19611499218cSNeil Armstrong					};
19621499218cSNeil Armstrong
19631499218cSNeil Armstrong					pwm_ao_c_6_pins: pwm-ao-c-6 {
19641499218cSNeil Armstrong						mux {
19651499218cSNeil Armstrong							groups = "pwm_ao_c_6";
19661499218cSNeil Armstrong							function = "pwm_ao_c";
19671499218cSNeil Armstrong							bias-disable;
19681499218cSNeil Armstrong						};
19691499218cSNeil Armstrong					};
19701499218cSNeil Armstrong
19711499218cSNeil Armstrong					pwm_ao_d_5_pins: pwm-ao-d-5 {
19721499218cSNeil Armstrong						mux {
19731499218cSNeil Armstrong							groups = "pwm_ao_d_5";
19741499218cSNeil Armstrong							function = "pwm_ao_d";
19751499218cSNeil Armstrong							bias-disable;
19761499218cSNeil Armstrong						};
19771499218cSNeil Armstrong					};
19781499218cSNeil Armstrong
19791499218cSNeil Armstrong					pwm_ao_d_10_pins: pwm-ao-d-10 {
19801499218cSNeil Armstrong						mux {
19811499218cSNeil Armstrong							groups = "pwm_ao_d_10";
19821499218cSNeil Armstrong							function = "pwm_ao_d";
19831499218cSNeil Armstrong							bias-disable;
19841499218cSNeil Armstrong						};
19851499218cSNeil Armstrong					};
19861499218cSNeil Armstrong
19871499218cSNeil Armstrong					pwm_ao_d_e_pins: pwm-ao-d-e {
19881499218cSNeil Armstrong						mux {
19891499218cSNeil Armstrong							groups = "pwm_ao_d_e";
19901499218cSNeil Armstrong							function = "pwm_ao_d";
19911499218cSNeil Armstrong						};
19921499218cSNeil Armstrong					};
19931499218cSNeil Armstrong
19941499218cSNeil Armstrong					remote_input_ao_pins: remote-input-ao {
19951499218cSNeil Armstrong						mux {
19961499218cSNeil Armstrong							groups = "remote_ao_input";
19971499218cSNeil Armstrong							function = "remote_ao_input";
19981499218cSNeil Armstrong							bias-disable;
19991499218cSNeil Armstrong						};
20001499218cSNeil Armstrong					};
20011499218cSNeil Armstrong				};
20021499218cSNeil Armstrong			};
20031499218cSNeil Armstrong
2004a833a15eSKevin Hilman			vrtc: rtc@0a8 {
2005a833a15eSKevin Hilman				compatible = "amlogic,meson-vrtc";
2006a833a15eSKevin Hilman				reg = <0x0 0x000a8 0x0 0x4>;
2007a833a15eSKevin Hilman			};
2008a833a15eSKevin Hilman
20091499218cSNeil Armstrong			cec_AO: cec@100 {
20101499218cSNeil Armstrong				compatible = "amlogic,meson-gx-ao-cec";
20111499218cSNeil Armstrong				reg = <0x0 0x00100 0x0 0x14>;
20121499218cSNeil Armstrong				interrupts = <GIC_SPI 199 IRQ_TYPE_EDGE_RISING>;
20131499218cSNeil Armstrong				clocks = <&clkc_AO CLKID_AO_CEC>;
20141499218cSNeil Armstrong				clock-names = "core";
20151499218cSNeil Armstrong				status = "disabled";
20161499218cSNeil Armstrong			};
20171499218cSNeil Armstrong
20181499218cSNeil Armstrong			sec_AO: ao-secure@140 {
20191499218cSNeil Armstrong				compatible = "amlogic,meson-gx-ao-secure", "syscon";
20201499218cSNeil Armstrong				reg = <0x0 0x140 0x0 0x140>;
20211499218cSNeil Armstrong				amlogic,has-chip-id;
20221499218cSNeil Armstrong			};
20231499218cSNeil Armstrong
20241499218cSNeil Armstrong			cecb_AO: cec@280 {
20251499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-ao-cec";
20261499218cSNeil Armstrong				reg = <0x0 0x00280 0x0 0x1c>;
20271499218cSNeil Armstrong				interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
20281499218cSNeil Armstrong				clocks = <&clkc_AO CLKID_AO_CTS_OSCIN>;
20291499218cSNeil Armstrong				clock-names = "oscin";
20301499218cSNeil Armstrong				status = "disabled";
20311499218cSNeil Armstrong			};
20321499218cSNeil Armstrong
20331499218cSNeil Armstrong			pwm_AO_cd: pwm@2000 {
20341499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-ao-pwm-cd";
20351499218cSNeil Armstrong				reg = <0x0 0x2000 0x0 0x20>;
20361499218cSNeil Armstrong				#pwm-cells = <3>;
20371499218cSNeil Armstrong				status = "disabled";
20381499218cSNeil Armstrong			};
20391499218cSNeil Armstrong
20401499218cSNeil Armstrong			uart_AO: serial@3000 {
20411499218cSNeil Armstrong				compatible = "amlogic,meson-gx-uart",
20421499218cSNeil Armstrong					     "amlogic,meson-ao-uart";
20431499218cSNeil Armstrong				reg = <0x0 0x3000 0x0 0x18>;
20441499218cSNeil Armstrong				interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
20451499218cSNeil Armstrong				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART>, <&xtal>;
20461499218cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
20471499218cSNeil Armstrong				status = "disabled";
20481499218cSNeil Armstrong			};
20491499218cSNeil Armstrong
20501499218cSNeil Armstrong			uart_AO_B: serial@4000 {
20511499218cSNeil Armstrong				compatible = "amlogic,meson-gx-uart",
20521499218cSNeil Armstrong					     "amlogic,meson-ao-uart";
20531499218cSNeil Armstrong				reg = <0x0 0x4000 0x0 0x18>;
20541499218cSNeil Armstrong				interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
20551499218cSNeil Armstrong				clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
20561499218cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
20571499218cSNeil Armstrong				status = "disabled";
20581499218cSNeil Armstrong			};
20591499218cSNeil Armstrong
20601499218cSNeil Armstrong			i2c_AO: i2c@5000 {
20611499218cSNeil Armstrong				compatible = "amlogic,meson-axg-i2c";
20621499218cSNeil Armstrong				status = "disabled";
20631499218cSNeil Armstrong				reg = <0x0 0x05000 0x0 0x20>;
20641499218cSNeil Armstrong				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
20651499218cSNeil Armstrong				#address-cells = <1>;
20661499218cSNeil Armstrong				#size-cells = <0>;
20671499218cSNeil Armstrong				clocks = <&clkc CLKID_I2C>;
20681499218cSNeil Armstrong			};
20691499218cSNeil Armstrong
20701499218cSNeil Armstrong			pwm_AO_ab: pwm@7000 {
20711499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-ao-pwm-ab";
20721499218cSNeil Armstrong				reg = <0x0 0x7000 0x0 0x20>;
20731499218cSNeil Armstrong				#pwm-cells = <3>;
20741499218cSNeil Armstrong				status = "disabled";
20751499218cSNeil Armstrong			};
20761499218cSNeil Armstrong
20771499218cSNeil Armstrong			ir: ir@8000 {
20781499218cSNeil Armstrong				compatible = "amlogic,meson-gxbb-ir";
20791499218cSNeil Armstrong				reg = <0x0 0x8000 0x0 0x20>;
20801499218cSNeil Armstrong				interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
20811499218cSNeil Armstrong				status = "disabled";
20821499218cSNeil Armstrong			};
20831499218cSNeil Armstrong
20841499218cSNeil Armstrong			saradc: adc@9000 {
20851499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-saradc",
20861499218cSNeil Armstrong					     "amlogic,meson-saradc";
20871499218cSNeil Armstrong				reg = <0x0 0x9000 0x0 0x48>;
20881499218cSNeil Armstrong				#io-channel-cells = <1>;
20891499218cSNeil Armstrong				interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>;
20901499218cSNeil Armstrong				clocks = <&xtal>,
20911499218cSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC>,
20921499218cSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC_CLK>,
20931499218cSNeil Armstrong					 <&clkc_AO CLKID_AO_SAR_ADC_SEL>;
20941499218cSNeil Armstrong				clock-names = "clkin", "core", "adc_clk", "adc_sel";
20951499218cSNeil Armstrong				status = "disabled";
20961499218cSNeil Armstrong			};
20971499218cSNeil Armstrong		};
20981499218cSNeil Armstrong
2099fbceee82SMaxime Jourdan		vdec: video-decoder@ff620000 {
2100fbceee82SMaxime Jourdan			compatible = "amlogic,g12a-vdec";
2101fbceee82SMaxime Jourdan			reg = <0x0 0xff620000 0x0 0x10000>,
2102fbceee82SMaxime Jourdan			      <0x0 0xffd0e180 0x0 0xe4>;
2103fbceee82SMaxime Jourdan			reg-names = "dos", "esparser";
2104fbceee82SMaxime Jourdan			interrupts = <GIC_SPI 44 IRQ_TYPE_EDGE_RISING>,
2105fbceee82SMaxime Jourdan				     <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
2106fbceee82SMaxime Jourdan			interrupt-names = "vdec", "esparser";
2107fbceee82SMaxime Jourdan
2108fbceee82SMaxime Jourdan			amlogic,ao-sysctrl = <&rti>;
2109fbceee82SMaxime Jourdan			amlogic,canvas = <&canvas>;
2110fbceee82SMaxime Jourdan
2111fbceee82SMaxime Jourdan			clocks = <&clkc CLKID_PARSER>,
2112fbceee82SMaxime Jourdan				 <&clkc CLKID_DOS>,
2113fbceee82SMaxime Jourdan				 <&clkc CLKID_VDEC_1>,
2114fbceee82SMaxime Jourdan				 <&clkc CLKID_VDEC_HEVC>,
2115fbceee82SMaxime Jourdan				 <&clkc CLKID_VDEC_HEVCF>;
2116fbceee82SMaxime Jourdan			clock-names = "dos_parser", "dos", "vdec_1",
2117fbceee82SMaxime Jourdan				      "vdec_hevc", "vdec_hevcf";
2118fbceee82SMaxime Jourdan			resets = <&reset RESET_PARSER>;
2119fbceee82SMaxime Jourdan			reset-names = "esparser";
2120fbceee82SMaxime Jourdan		};
2121fbceee82SMaxime Jourdan
21221499218cSNeil Armstrong		vpu: vpu@ff900000 {
21231499218cSNeil Armstrong			compatible = "amlogic,meson-g12a-vpu";
21241499218cSNeil Armstrong			reg = <0x0 0xff900000 0x0 0x100000>,
21251499218cSNeil Armstrong			      <0x0 0xff63c000 0x0 0x1000>;
21261499218cSNeil Armstrong			reg-names = "vpu", "hhi";
21271499218cSNeil Armstrong			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
21281499218cSNeil Armstrong			#address-cells = <1>;
21291499218cSNeil Armstrong			#size-cells = <0>;
21301499218cSNeil Armstrong			amlogic,canvas = <&canvas>;
21311499218cSNeil Armstrong
21321499218cSNeil Armstrong			/* CVBS VDAC output port */
21331499218cSNeil Armstrong			cvbs_vdac_port: port@0 {
21341499218cSNeil Armstrong				reg = <0>;
21351499218cSNeil Armstrong			};
21361499218cSNeil Armstrong
21371499218cSNeil Armstrong			/* HDMI-TX output port */
21381499218cSNeil Armstrong			hdmi_tx_port: port@1 {
21391499218cSNeil Armstrong				reg = <1>;
21401499218cSNeil Armstrong
21411499218cSNeil Armstrong				hdmi_tx_out: endpoint {
21421499218cSNeil Armstrong					remote-endpoint = <&hdmi_tx_in>;
21431499218cSNeil Armstrong				};
21441499218cSNeil Armstrong			};
21451499218cSNeil Armstrong		};
21461499218cSNeil Armstrong
21471499218cSNeil Armstrong		gic: interrupt-controller@ffc01000 {
21481499218cSNeil Armstrong			compatible = "arm,gic-400";
21491499218cSNeil Armstrong			reg = <0x0 0xffc01000 0 0x1000>,
21501499218cSNeil Armstrong			      <0x0 0xffc02000 0 0x2000>,
21511499218cSNeil Armstrong			      <0x0 0xffc04000 0 0x2000>,
21521499218cSNeil Armstrong			      <0x0 0xffc06000 0 0x2000>;
21531499218cSNeil Armstrong			interrupt-controller;
21541499218cSNeil Armstrong			interrupts = <GIC_PPI 9
21551499218cSNeil Armstrong				(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
21561499218cSNeil Armstrong			#interrupt-cells = <3>;
21571499218cSNeil Armstrong			#address-cells = <0>;
21581499218cSNeil Armstrong		};
21591499218cSNeil Armstrong
21601499218cSNeil Armstrong		cbus: bus@ffd00000 {
21611499218cSNeil Armstrong			compatible = "simple-bus";
21621499218cSNeil Armstrong			reg = <0x0 0xffd00000 0x0 0x100000>;
21631499218cSNeil Armstrong			#address-cells = <2>;
21641499218cSNeil Armstrong			#size-cells = <2>;
21651499218cSNeil Armstrong			ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x100000>;
21661499218cSNeil Armstrong
21671499218cSNeil Armstrong			reset: reset-controller@1004 {
2168795e7de8SNeil Armstrong				compatible = "amlogic,meson-axg-reset";
21691499218cSNeil Armstrong				reg = <0x0 0x1004 0x0 0x9c>;
21701499218cSNeil Armstrong				#reset-cells = <1>;
21711499218cSNeil Armstrong			};
21721499218cSNeil Armstrong
21731499218cSNeil Armstrong			gpio_intc: interrupt-controller@f080 {
21741499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-gpio-intc",
21751499218cSNeil Armstrong					     "amlogic,meson-gpio-intc";
21761499218cSNeil Armstrong				reg = <0x0 0xf080 0x0 0x10>;
21771499218cSNeil Armstrong				interrupt-controller;
21781499218cSNeil Armstrong				#interrupt-cells = <2>;
21791499218cSNeil Armstrong				amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
21801499218cSNeil Armstrong			};
21811499218cSNeil Armstrong
2182*7bd51759SChristian Hewitt			watchdog: wdt@f0d0 {
2183*7bd51759SChristian Hewitt				compatible = "amlogic,meson-gxbb-wdt";
2184*7bd51759SChristian Hewitt				reg = <0x0 0xf0d0 0x0 0x10>;
2185*7bd51759SChristian Hewitt				clocks = <&xtal>;
2186*7bd51759SChristian Hewitt			};
2187*7bd51759SChristian Hewitt
21885fa86f4fSNeil Armstrong			spicc0: spi@13000 {
21895fa86f4fSNeil Armstrong				compatible = "amlogic,meson-g12a-spicc";
21905fa86f4fSNeil Armstrong				reg = <0x0 0x13000 0x0 0x44>;
21915fa86f4fSNeil Armstrong				interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
21925fa86f4fSNeil Armstrong				clocks = <&clkc CLKID_SPICC0>,
21935fa86f4fSNeil Armstrong					 <&clkc CLKID_SPICC0_SCLK>;
21945fa86f4fSNeil Armstrong				clock-names = "core", "pclk";
21955fa86f4fSNeil Armstrong				#address-cells = <1>;
21965fa86f4fSNeil Armstrong				#size-cells = <0>;
21975fa86f4fSNeil Armstrong				status = "disabled";
21985fa86f4fSNeil Armstrong			};
21995fa86f4fSNeil Armstrong
22005fa86f4fSNeil Armstrong			spicc1: spi@15000 {
22015fa86f4fSNeil Armstrong				compatible = "amlogic,meson-g12a-spicc";
22025fa86f4fSNeil Armstrong				reg = <0x0 0x15000 0x0 0x44>;
22035fa86f4fSNeil Armstrong				interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
22045fa86f4fSNeil Armstrong				clocks = <&clkc CLKID_SPICC1>,
22055fa86f4fSNeil Armstrong					 <&clkc CLKID_SPICC1_SCLK>;
22065fa86f4fSNeil Armstrong				clock-names = "core", "pclk";
22075fa86f4fSNeil Armstrong				#address-cells = <1>;
22085fa86f4fSNeil Armstrong				#size-cells = <0>;
22095fa86f4fSNeil Armstrong				status = "disabled";
22105fa86f4fSNeil Armstrong			};
22115fa86f4fSNeil Armstrong
2212f12a463dSNeil Armstrong			spifc: spi@14000 {
2213f12a463dSNeil Armstrong				compatible = "amlogic,meson-gxbb-spifc";
2214f12a463dSNeil Armstrong				status = "disabled";
2215f12a463dSNeil Armstrong				reg = <0x0 0x14000 0x0 0x80>;
2216f12a463dSNeil Armstrong				#address-cells = <1>;
2217f12a463dSNeil Armstrong				#size-cells = <0>;
2218f12a463dSNeil Armstrong				clocks = <&clkc CLKID_CLK81>;
2219f12a463dSNeil Armstrong			};
2220f12a463dSNeil Armstrong
22211499218cSNeil Armstrong			pwm_ef: pwm@19000 {
22221499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
22231499218cSNeil Armstrong				reg = <0x0 0x19000 0x0 0x20>;
22241499218cSNeil Armstrong				#pwm-cells = <3>;
22251499218cSNeil Armstrong				status = "disabled";
22261499218cSNeil Armstrong			};
22271499218cSNeil Armstrong
22281499218cSNeil Armstrong			pwm_cd: pwm@1a000 {
22291499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
22301499218cSNeil Armstrong				reg = <0x0 0x1a000 0x0 0x20>;
22311499218cSNeil Armstrong				#pwm-cells = <3>;
22321499218cSNeil Armstrong				status = "disabled";
22331499218cSNeil Armstrong			};
22341499218cSNeil Armstrong
22351499218cSNeil Armstrong			pwm_ab: pwm@1b000 {
22361499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-ee-pwm";
22371499218cSNeil Armstrong				reg = <0x0 0x1b000 0x0 0x20>;
22381499218cSNeil Armstrong				#pwm-cells = <3>;
22391499218cSNeil Armstrong				status = "disabled";
22401499218cSNeil Armstrong			};
22411499218cSNeil Armstrong
22421499218cSNeil Armstrong			i2c3: i2c@1c000 {
22431499218cSNeil Armstrong				compatible = "amlogic,meson-axg-i2c";
22441499218cSNeil Armstrong				status = "disabled";
22451499218cSNeil Armstrong				reg = <0x0 0x1c000 0x0 0x20>;
22461499218cSNeil Armstrong				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
22471499218cSNeil Armstrong				#address-cells = <1>;
22481499218cSNeil Armstrong				#size-cells = <0>;
22491499218cSNeil Armstrong				clocks = <&clkc CLKID_I2C>;
22501499218cSNeil Armstrong			};
22511499218cSNeil Armstrong
22521499218cSNeil Armstrong			i2c2: i2c@1d000 {
22531499218cSNeil Armstrong				compatible = "amlogic,meson-axg-i2c";
22541499218cSNeil Armstrong				status = "disabled";
22551499218cSNeil Armstrong				reg = <0x0 0x1d000 0x0 0x20>;
22561499218cSNeil Armstrong				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
22571499218cSNeil Armstrong				#address-cells = <1>;
22581499218cSNeil Armstrong				#size-cells = <0>;
22591499218cSNeil Armstrong				clocks = <&clkc CLKID_I2C>;
22601499218cSNeil Armstrong			};
22611499218cSNeil Armstrong
22621499218cSNeil Armstrong			i2c1: i2c@1e000 {
22631499218cSNeil Armstrong				compatible = "amlogic,meson-axg-i2c";
22641499218cSNeil Armstrong				status = "disabled";
22651499218cSNeil Armstrong				reg = <0x0 0x1e000 0x0 0x20>;
22661499218cSNeil Armstrong				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
22671499218cSNeil Armstrong				#address-cells = <1>;
22681499218cSNeil Armstrong				#size-cells = <0>;
22691499218cSNeil Armstrong				clocks = <&clkc CLKID_I2C>;
22701499218cSNeil Armstrong			};
22711499218cSNeil Armstrong
22721499218cSNeil Armstrong			i2c0: i2c@1f000 {
22731499218cSNeil Armstrong				compatible = "amlogic,meson-axg-i2c";
22741499218cSNeil Armstrong				status = "disabled";
22751499218cSNeil Armstrong				reg = <0x0 0x1f000 0x0 0x20>;
22761499218cSNeil Armstrong				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
22771499218cSNeil Armstrong				#address-cells = <1>;
22781499218cSNeil Armstrong				#size-cells = <0>;
22791499218cSNeil Armstrong				clocks = <&clkc CLKID_I2C>;
22801499218cSNeil Armstrong			};
22811499218cSNeil Armstrong
22821499218cSNeil Armstrong			clk_msr: clock-measure@18000 {
22831499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-clk-measure";
22841499218cSNeil Armstrong				reg = <0x0 0x18000 0x0 0x10>;
22851499218cSNeil Armstrong			};
22861499218cSNeil Armstrong
22871499218cSNeil Armstrong			uart_C: serial@22000 {
22881499218cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
22891499218cSNeil Armstrong				reg = <0x0 0x22000 0x0 0x18>;
22901499218cSNeil Armstrong				interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>;
22911499218cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>;
22921499218cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
22931499218cSNeil Armstrong				status = "disabled";
22941499218cSNeil Armstrong			};
22951499218cSNeil Armstrong
22961499218cSNeil Armstrong			uart_B: serial@23000 {
22971499218cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
22981499218cSNeil Armstrong				reg = <0x0 0x23000 0x0 0x18>;
22991499218cSNeil Armstrong				interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
23001499218cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
23011499218cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
23021499218cSNeil Armstrong				status = "disabled";
23031499218cSNeil Armstrong			};
23041499218cSNeil Armstrong
23051499218cSNeil Armstrong			uart_A: serial@24000 {
23061499218cSNeil Armstrong				compatible = "amlogic,meson-gx-uart";
23071499218cSNeil Armstrong				reg = <0x0 0x24000 0x0 0x18>;
23081499218cSNeil Armstrong				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
23091499218cSNeil Armstrong				clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
23101499218cSNeil Armstrong				clock-names = "xtal", "pclk", "baud";
23111499218cSNeil Armstrong				status = "disabled";
23121499218cSNeil Armstrong			};
23131499218cSNeil Armstrong		};
23141499218cSNeil Armstrong
23151499218cSNeil Armstrong		sd_emmc_a: sd@ffe03000 {
23161499218cSNeil Armstrong			compatible = "amlogic,meson-axg-mmc";
23171499218cSNeil Armstrong			reg = <0x0 0xffe03000 0x0 0x800>;
23181499218cSNeil Armstrong			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
23191499218cSNeil Armstrong			status = "disabled";
23201499218cSNeil Armstrong			clocks = <&clkc CLKID_SD_EMMC_A>,
23211499218cSNeil Armstrong				 <&clkc CLKID_SD_EMMC_A_CLK0>,
23221499218cSNeil Armstrong				 <&clkc CLKID_FCLK_DIV2>;
23231499218cSNeil Armstrong			clock-names = "core", "clkin0", "clkin1";
23241499218cSNeil Armstrong			resets = <&reset RESET_SD_EMMC_A>;
23251499218cSNeil Armstrong		};
23261499218cSNeil Armstrong
23271499218cSNeil Armstrong		sd_emmc_b: sd@ffe05000 {
23281499218cSNeil Armstrong			compatible = "amlogic,meson-axg-mmc";
23291499218cSNeil Armstrong			reg = <0x0 0xffe05000 0x0 0x800>;
23301499218cSNeil Armstrong			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
23311499218cSNeil Armstrong			status = "disabled";
23321499218cSNeil Armstrong			clocks = <&clkc CLKID_SD_EMMC_B>,
23331499218cSNeil Armstrong				 <&clkc CLKID_SD_EMMC_B_CLK0>,
23341499218cSNeil Armstrong				 <&clkc CLKID_FCLK_DIV2>;
23351499218cSNeil Armstrong			clock-names = "core", "clkin0", "clkin1";
23361499218cSNeil Armstrong			resets = <&reset RESET_SD_EMMC_B>;
23371499218cSNeil Armstrong		};
23381499218cSNeil Armstrong
23391499218cSNeil Armstrong		sd_emmc_c: mmc@ffe07000 {
23401499218cSNeil Armstrong			compatible = "amlogic,meson-axg-mmc";
23411499218cSNeil Armstrong			reg = <0x0 0xffe07000 0x0 0x800>;
23421499218cSNeil Armstrong			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
23431499218cSNeil Armstrong			status = "disabled";
23441499218cSNeil Armstrong			clocks = <&clkc CLKID_SD_EMMC_C>,
23451499218cSNeil Armstrong				 <&clkc CLKID_SD_EMMC_C_CLK0>,
23461499218cSNeil Armstrong				 <&clkc CLKID_FCLK_DIV2>;
23471499218cSNeil Armstrong			clock-names = "core", "clkin0", "clkin1";
23481499218cSNeil Armstrong			resets = <&reset RESET_SD_EMMC_C>;
23491499218cSNeil Armstrong		};
23501499218cSNeil Armstrong
23511499218cSNeil Armstrong		usb: usb@ffe09000 {
23521499218cSNeil Armstrong			status = "disabled";
23531499218cSNeil Armstrong			compatible = "amlogic,meson-g12a-usb-ctrl";
23541499218cSNeil Armstrong			reg = <0x0 0xffe09000 0x0 0xa0>;
23551499218cSNeil Armstrong			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
23561499218cSNeil Armstrong			#address-cells = <2>;
23571499218cSNeil Armstrong			#size-cells = <2>;
23581499218cSNeil Armstrong			ranges;
23591499218cSNeil Armstrong
23601499218cSNeil Armstrong			clocks = <&clkc CLKID_USB>;
23611499218cSNeil Armstrong			resets = <&reset RESET_USB>;
23621499218cSNeil Armstrong
23631499218cSNeil Armstrong			dr_mode = "otg";
23641499218cSNeil Armstrong
23651499218cSNeil Armstrong			phys = <&usb2_phy0>, <&usb2_phy1>,
23661499218cSNeil Armstrong			       <&usb3_pcie_phy PHY_TYPE_USB3>;
23671499218cSNeil Armstrong			phy-names = "usb2-phy0", "usb2-phy1", "usb3-phy0";
23681499218cSNeil Armstrong
23691499218cSNeil Armstrong			dwc2: usb@ff400000 {
23701499218cSNeil Armstrong				compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
23711499218cSNeil Armstrong				reg = <0x0 0xff400000 0x0 0x40000>;
23721499218cSNeil Armstrong				interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
23731499218cSNeil Armstrong				clocks = <&clkc CLKID_USB1_DDR_BRIDGE>;
2374e4f634d8SNeil Armstrong				clock-names = "otg";
23751499218cSNeil Armstrong				phys = <&usb2_phy1>;
23761499218cSNeil Armstrong				phy-names = "usb2-phy";
23771499218cSNeil Armstrong				dr_mode = "peripheral";
23781499218cSNeil Armstrong				g-rx-fifo-size = <192>;
23791499218cSNeil Armstrong				g-np-tx-fifo-size = <128>;
23801499218cSNeil Armstrong				g-tx-fifo-size = <128 128 16 16 16>;
23811499218cSNeil Armstrong			};
23821499218cSNeil Armstrong
23831499218cSNeil Armstrong			dwc3: usb@ff500000 {
23841499218cSNeil Armstrong				compatible = "snps,dwc3";
23851499218cSNeil Armstrong				reg = <0x0 0xff500000 0x0 0x100000>;
23861499218cSNeil Armstrong				interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
23871499218cSNeil Armstrong				dr_mode = "host";
23881499218cSNeil Armstrong				snps,dis_u2_susphy_quirk;
23891499218cSNeil Armstrong				snps,quirk-frame-length-adjustment;
2390a81bcfb6SNeil Armstrong				snps,parkmode-disable-ss-quirk;
23911499218cSNeil Armstrong			};
23921499218cSNeil Armstrong		};
23931499218cSNeil Armstrong
23941499218cSNeil Armstrong		mali: gpu@ffe40000 {
23951499218cSNeil Armstrong			compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
23961499218cSNeil Armstrong			reg = <0x0 0xffe40000 0x0 0x40000>;
23971499218cSNeil Armstrong			interrupt-parent = <&gic>;
2398711f9cb1SNeil Armstrong			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
23991499218cSNeil Armstrong				     <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
2400711f9cb1SNeil Armstrong				     <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
2401711f9cb1SNeil Armstrong			interrupt-names = "job", "mmu", "gpu";
24021499218cSNeil Armstrong			clocks = <&clkc CLKID_MALI>;
24031499218cSNeil Armstrong			resets = <&reset RESET_DVALIN_CAPB3>, <&reset RESET_DVALIN>;
2404916a0edcSMartin Blumenstingl			operating-points-v2 = <&gpu_opp_table>;
2405e7251ed7SGuillaume La Roque			#cooling-cells = <2>;
24061499218cSNeil Armstrong		};
24071499218cSNeil Armstrong	};
24081499218cSNeil Armstrong
24091499218cSNeil Armstrong	timer {
24101499218cSNeil Armstrong		compatible = "arm,armv8-timer";
24111499218cSNeil Armstrong		interrupts = <GIC_PPI 13
24121499218cSNeil Armstrong			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24131499218cSNeil Armstrong			     <GIC_PPI 14
24141499218cSNeil Armstrong			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24151499218cSNeil Armstrong			     <GIC_PPI 11
24161499218cSNeil Armstrong			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
24171499218cSNeil Armstrong			     <GIC_PPI 10
24181499218cSNeil Armstrong			(GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>;
2419a5502270SKevin Hilman		arm,no-tick-in-suspend;
24201499218cSNeil Armstrong	};
24211499218cSNeil Armstrong
24221499218cSNeil Armstrong	xtal: xtal-clk {
24231499218cSNeil Armstrong		compatible = "fixed-clock";
24241499218cSNeil Armstrong		clock-frequency = <24000000>;
24251499218cSNeil Armstrong		clock-output-names = "xtal";
24261499218cSNeil Armstrong		#clock-cells = <0>;
24271499218cSNeil Armstrong	};
24281499218cSNeil Armstrong
24291499218cSNeil Armstrong};
2430