1f12a463dSNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
29ed437d6SJerome Brunet/*
39ed437d6SJerome Brunet * Copyright (c) 2019 BayLibre, SAS
49ed437d6SJerome Brunet * Author: Jerome Brunet <jbrunet@baylibre.com>
59ed437d6SJerome Brunet */
69ed437d6SJerome Brunet
79ed437d6SJerome Brunet#include "meson-g12-common.dtsi"
89ed437d6SJerome Brunet#include <dt-bindings/clock/axg-audio-clkc.h>
90f674df0SJerome Brunet#include <dt-bindings/power/meson-g12a-power.h>
102871626bSJerome Brunet#include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
110f674df0SJerome Brunet#include <dt-bindings/reset/amlogic,meson-g12a-audio-reset.h>
120f674df0SJerome Brunet
130f674df0SJerome Brunet/ {
140f674df0SJerome Brunet	tdmif_a: audio-controller-0 {
150f674df0SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
160f674df0SJerome Brunet		#sound-dai-cells = <0>;
170f674df0SJerome Brunet		sound-name-prefix = "TDM_A";
180f674df0SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>,
190f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_A_SCLK>,
200f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_A_LRCLK>;
210f674df0SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
220f674df0SJerome Brunet		status = "disabled";
230f674df0SJerome Brunet	};
240f674df0SJerome Brunet
250f674df0SJerome Brunet	tdmif_b: audio-controller-1 {
260f674df0SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
270f674df0SJerome Brunet		#sound-dai-cells = <0>;
280f674df0SJerome Brunet		sound-name-prefix = "TDM_B";
290f674df0SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_B_MCLK>,
300f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_B_SCLK>,
310f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_B_LRCLK>;
320f674df0SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
330f674df0SJerome Brunet		status = "disabled";
340f674df0SJerome Brunet	};
350f674df0SJerome Brunet
360f674df0SJerome Brunet	tdmif_c: audio-controller-2 {
370f674df0SJerome Brunet		compatible = "amlogic,axg-tdm-iface";
380f674df0SJerome Brunet		#sound-dai-cells = <0>;
390f674df0SJerome Brunet		sound-name-prefix = "TDM_C";
400f674df0SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_MST_C_MCLK>,
410f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_C_SCLK>,
420f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_MST_C_LRCLK>;
430f674df0SJerome Brunet		clock-names = "mclk", "sclk", "lrclk";
440f674df0SJerome Brunet		status = "disabled";
450f674df0SJerome Brunet	};
460f674df0SJerome Brunet};
470f674df0SJerome Brunet
480f674df0SJerome Brunet&apb {
490f674df0SJerome Brunet	pdm: audio-controller@40000 {
500f674df0SJerome Brunet		compatible = "amlogic,g12a-pdm",
510f674df0SJerome Brunet			     "amlogic,axg-pdm";
520f674df0SJerome Brunet		reg = <0x0 0x40000 0x0 0x34>;
530f674df0SJerome Brunet		#sound-dai-cells = <0>;
540f674df0SJerome Brunet		sound-name-prefix = "PDM";
550f674df0SJerome Brunet		clocks = <&clkc_audio AUD_CLKID_PDM>,
560f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_PDM_DCLK>,
570f674df0SJerome Brunet			 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
580f674df0SJerome Brunet		clock-names = "pclk", "dclk", "sysclk";
590f674df0SJerome Brunet		resets = <&clkc_audio AUD_RESET_PDM>;
60ae5eed59SJerome Brunet		status = "disabled";
610f674df0SJerome Brunet	};
620f674df0SJerome Brunet
630f674df0SJerome Brunet	audio: bus@42000 {
640f674df0SJerome Brunet		compatible = "simple-bus";
650f674df0SJerome Brunet		reg = <0x0 0x42000 0x0 0x2000>;
660f674df0SJerome Brunet		#address-cells = <2>;
670f674df0SJerome Brunet		#size-cells = <2>;
680f674df0SJerome Brunet		ranges = <0x0 0x0 0x0 0x42000 0x0 0x2000>;
690f674df0SJerome Brunet
700f674df0SJerome Brunet		clkc_audio: clock-controller@0 {
710f674df0SJerome Brunet			status = "disabled";
720f674df0SJerome Brunet			compatible = "amlogic,g12a-audio-clkc";
730f674df0SJerome Brunet			reg = <0x0 0x0 0x0 0xb4>;
740f674df0SJerome Brunet			#clock-cells = <1>;
750f674df0SJerome Brunet			#reset-cells = <1>;
760f674df0SJerome Brunet
770f674df0SJerome Brunet			clocks = <&clkc CLKID_AUDIO>,
780f674df0SJerome Brunet				 <&clkc CLKID_MPLL0>,
790f674df0SJerome Brunet				 <&clkc CLKID_MPLL1>,
800f674df0SJerome Brunet				 <&clkc CLKID_MPLL2>,
810f674df0SJerome Brunet				 <&clkc CLKID_MPLL3>,
820f674df0SJerome Brunet				 <&clkc CLKID_HIFI_PLL>,
830f674df0SJerome Brunet				 <&clkc CLKID_FCLK_DIV3>,
840f674df0SJerome Brunet				 <&clkc CLKID_FCLK_DIV4>,
850f674df0SJerome Brunet				 <&clkc CLKID_GP0_PLL>;
860f674df0SJerome Brunet			clock-names = "pclk",
870f674df0SJerome Brunet				      "mst_in0",
880f674df0SJerome Brunet				      "mst_in1",
890f674df0SJerome Brunet				      "mst_in2",
900f674df0SJerome Brunet				      "mst_in3",
910f674df0SJerome Brunet				      "mst_in4",
920f674df0SJerome Brunet				      "mst_in5",
930f674df0SJerome Brunet				      "mst_in6",
940f674df0SJerome Brunet				      "mst_in7";
950f674df0SJerome Brunet
960f674df0SJerome Brunet			resets = <&reset RESET_AUDIO>;
970f674df0SJerome Brunet		};
980f674df0SJerome Brunet
990f674df0SJerome Brunet		toddr_a: audio-controller@100 {
1000f674df0SJerome Brunet			compatible = "amlogic,g12a-toddr",
1010f674df0SJerome Brunet				     "amlogic,axg-toddr";
1020f674df0SJerome Brunet			reg = <0x0 0x100 0x0 0x2c>;
1030f674df0SJerome Brunet			#sound-dai-cells = <0>;
1040f674df0SJerome Brunet			sound-name-prefix = "TODDR_A";
1050f674df0SJerome Brunet			interrupts = <GIC_SPI 148 IRQ_TYPE_EDGE_RISING>;
1060f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
1070f674df0SJerome Brunet			resets = <&arb AXG_ARB_TODDR_A>,
108c725fb00SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_A>;
109c725fb00SJerome Brunet			reset-names = "arb", "rst";
110c725fb00SJerome Brunet			amlogic,fifo-depth = <512>;
111be638075SJerome Brunet			status = "disabled";
1120f674df0SJerome Brunet		};
1130f674df0SJerome Brunet
1140f674df0SJerome Brunet		toddr_b: audio-controller@140 {
1150f674df0SJerome Brunet			compatible = "amlogic,g12a-toddr",
1160f674df0SJerome Brunet				     "amlogic,axg-toddr";
1170f674df0SJerome Brunet			reg = <0x0 0x140 0x0 0x2c>;
1180f674df0SJerome Brunet			#sound-dai-cells = <0>;
1190f674df0SJerome Brunet			sound-name-prefix = "TODDR_B";
1200f674df0SJerome Brunet			interrupts = <GIC_SPI 149 IRQ_TYPE_EDGE_RISING>;
1210f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
1220f674df0SJerome Brunet			resets = <&arb AXG_ARB_TODDR_B>,
123c725fb00SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_B>;
124c725fb00SJerome Brunet			reset-names = "arb", "rst";
125c725fb00SJerome Brunet			amlogic,fifo-depth = <256>;
126be638075SJerome Brunet			status = "disabled";
1270f674df0SJerome Brunet		};
1280f674df0SJerome Brunet
1290f674df0SJerome Brunet		toddr_c: audio-controller@180 {
1300f674df0SJerome Brunet			compatible = "amlogic,g12a-toddr",
1310f674df0SJerome Brunet				     "amlogic,axg-toddr";
1320f674df0SJerome Brunet			reg = <0x0 0x180 0x0 0x2c>;
1330f674df0SJerome Brunet			#sound-dai-cells = <0>;
1340f674df0SJerome Brunet			sound-name-prefix = "TODDR_C";
1350f674df0SJerome Brunet			interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>;
1360f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
1370f674df0SJerome Brunet			resets = <&arb AXG_ARB_TODDR_C>,
138c725fb00SJerome Brunet				 <&clkc_audio AUD_RESET_TODDR_C>;
139c725fb00SJerome Brunet			reset-names = "arb", "rst";
140c725fb00SJerome Brunet			amlogic,fifo-depth = <256>;
141be638075SJerome Brunet			status = "disabled";
1420f674df0SJerome Brunet		};
1430f674df0SJerome Brunet
1440f674df0SJerome Brunet		frddr_a: audio-controller@1c0 {
1450f674df0SJerome Brunet			compatible = "amlogic,g12a-frddr",
1460f674df0SJerome Brunet				     "amlogic,axg-frddr";
1470f674df0SJerome Brunet			reg = <0x0 0x1c0 0x0 0x2c>;
1480f674df0SJerome Brunet			#sound-dai-cells = <0>;
1490f674df0SJerome Brunet			sound-name-prefix = "FRDDR_A";
1500f674df0SJerome Brunet			interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>;
1510f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
1520f674df0SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_A>,
153c725fb00SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_A>;
154c725fb00SJerome Brunet			reset-names = "arb", "rst";
155c725fb00SJerome Brunet			amlogic,fifo-depth = <512>;
156be638075SJerome Brunet			status = "disabled";
1570f674df0SJerome Brunet		};
1580f674df0SJerome Brunet
1590f674df0SJerome Brunet		frddr_b: audio-controller@200 {
1600f674df0SJerome Brunet			compatible = "amlogic,g12a-frddr",
1610f674df0SJerome Brunet				     "amlogic,axg-frddr";
1620f674df0SJerome Brunet			reg = <0x0 0x200 0x0 0x2c>;
1630f674df0SJerome Brunet			#sound-dai-cells = <0>;
1640f674df0SJerome Brunet			sound-name-prefix = "FRDDR_B";
1650f674df0SJerome Brunet			interrupts = <GIC_SPI 153 IRQ_TYPE_EDGE_RISING>;
1660f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
1670f674df0SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_B>,
168c725fb00SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_B>;
169c725fb00SJerome Brunet			reset-names = "arb", "rst";
170c725fb00SJerome Brunet			amlogic,fifo-depth = <256>;
171be638075SJerome Brunet			status = "disabled";
1720f674df0SJerome Brunet		};
1730f674df0SJerome Brunet
1740f674df0SJerome Brunet		frddr_c: audio-controller@240 {
1750f674df0SJerome Brunet			compatible = "amlogic,g12a-frddr",
1760f674df0SJerome Brunet				     "amlogic,axg-frddr";
1770f674df0SJerome Brunet			reg = <0x0 0x240 0x0 0x2c>;
1780f674df0SJerome Brunet			#sound-dai-cells = <0>;
1790f674df0SJerome Brunet			sound-name-prefix = "FRDDR_C";
1800f674df0SJerome Brunet			interrupts = <GIC_SPI 154 IRQ_TYPE_EDGE_RISING>;
1810f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
1820f674df0SJerome Brunet			resets = <&arb AXG_ARB_FRDDR_C>,
183c725fb00SJerome Brunet				 <&clkc_audio AUD_RESET_FRDDR_C>;
184c725fb00SJerome Brunet			reset-names = "arb", "rst";
185c725fb00SJerome Brunet			amlogic,fifo-depth = <256>;
186be638075SJerome Brunet			status = "disabled";
1870f674df0SJerome Brunet		};
1880f674df0SJerome Brunet
1890f674df0SJerome Brunet		arb: reset-controller@280 {
1900f674df0SJerome Brunet			status = "disabled";
1910f674df0SJerome Brunet			compatible = "amlogic,meson-axg-audio-arb";
1920f674df0SJerome Brunet			reg = <0x0 0x280 0x0 0x4>;
1930f674df0SJerome Brunet			#reset-cells = <1>;
1940f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
1950f674df0SJerome Brunet		};
1960f674df0SJerome Brunet
1970f674df0SJerome Brunet		tdmin_a: audio-controller@300 {
1980f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmin",
1990f674df0SJerome Brunet				     "amlogic,axg-tdmin";
2000f674df0SJerome Brunet			reg = <0x0 0x300 0x0 0x40>;
2010f674df0SJerome Brunet			sound-name-prefix = "TDMIN_A";
2020f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_A>;
2030f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_A>,
2040f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>,
2050f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>,
2060f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>,
2070f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>;
2080f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
2090f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
2100f674df0SJerome Brunet			status = "disabled";
2110f674df0SJerome Brunet		};
2120f674df0SJerome Brunet
2130f674df0SJerome Brunet		tdmin_b: audio-controller@340 {
2140f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmin",
2150f674df0SJerome Brunet				     "amlogic,axg-tdmin";
2160f674df0SJerome Brunet			reg = <0x0 0x340 0x0 0x40>;
2170f674df0SJerome Brunet			sound-name-prefix = "TDMIN_B";
2180f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_B>;
2190f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_B>,
2200f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>,
2210f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>,
2220f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>,
2230f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>;
2240f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
2250f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
2260f674df0SJerome Brunet			status = "disabled";
2270f674df0SJerome Brunet		};
2280f674df0SJerome Brunet
2290f674df0SJerome Brunet		tdmin_c: audio-controller@380 {
2300f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmin",
2310f674df0SJerome Brunet				     "amlogic,axg-tdmin";
2320f674df0SJerome Brunet			reg = <0x0 0x380 0x0 0x40>;
2330f674df0SJerome Brunet			sound-name-prefix = "TDMIN_C";
2340f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_C>;
2350f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_C>,
2360f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>,
2370f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>,
2380f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>,
2390f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>;
2400f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
2410f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
2420f674df0SJerome Brunet			status = "disabled";
2430f674df0SJerome Brunet		};
2440f674df0SJerome Brunet
2450f674df0SJerome Brunet		tdmin_lb: audio-controller@3c0 {
2460f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmin",
2470f674df0SJerome Brunet				     "amlogic,axg-tdmin";
2480f674df0SJerome Brunet			reg = <0x0 0x3c0 0x0 0x40>;
2490f674df0SJerome Brunet			sound-name-prefix = "TDMIN_LB";
2500f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMIN_LB>;
2510f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>,
2520f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>,
2530f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>,
2540f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>,
2550f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>;
2560f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
2570f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
2580f674df0SJerome Brunet			status = "disabled";
2590f674df0SJerome Brunet		};
2600f674df0SJerome Brunet
2610f674df0SJerome Brunet		spdifin: audio-controller@400 {
2620f674df0SJerome Brunet			compatible = "amlogic,g12a-spdifin",
2630f674df0SJerome Brunet				     "amlogic,axg-spdifin";
2640f674df0SJerome Brunet			reg = <0x0 0x400 0x0 0x30>;
2650f674df0SJerome Brunet			#sound-dai-cells = <0>;
2660f674df0SJerome Brunet			sound-name-prefix = "SPDIFIN";
2670f674df0SJerome Brunet			interrupts = <GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
2680f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_SPDIFIN>,
2690f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_SPDIFIN_CLK>;
2700f674df0SJerome Brunet			clock-names = "pclk", "refclk";
2710f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_SPDIFIN>;
272c725fb00SJerome Brunet			status = "disabled";
2730f674df0SJerome Brunet		};
2740f674df0SJerome Brunet
2750f674df0SJerome Brunet		spdifout: audio-controller@480 {
2760f674df0SJerome Brunet			compatible = "amlogic,g12a-spdifout",
2770f674df0SJerome Brunet				     "amlogic,axg-spdifout";
2780f674df0SJerome Brunet			reg = <0x0 0x480 0x0 0x50>;
2790f674df0SJerome Brunet			#sound-dai-cells = <0>;
2800f674df0SJerome Brunet			sound-name-prefix = "SPDIFOUT";
2810f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
2820f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
2830f674df0SJerome Brunet			clock-names = "pclk", "mclk";
2840f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_SPDIFOUT>;
285c725fb00SJerome Brunet			status = "disabled";
2860f674df0SJerome Brunet		};
2870f674df0SJerome Brunet
2880f674df0SJerome Brunet		tdmout_a: audio-controller@500 {
2890f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmout";
2900f674df0SJerome Brunet			reg = <0x0 0x500 0x0 0x40>;
2910f674df0SJerome Brunet			sound-name-prefix = "TDMOUT_A";
2920f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMOUT_A>;
2930f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
2940f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
2950f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
2960f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
2970f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
2980f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
2990f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
3000f674df0SJerome Brunet			status = "disabled";
3010f674df0SJerome Brunet		};
3020f674df0SJerome Brunet
3030f674df0SJerome Brunet		tdmout_b: audio-controller@540 {
3040f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmout";
3050f674df0SJerome Brunet			reg = <0x0 0x540 0x0 0x40>;
3060f674df0SJerome Brunet			sound-name-prefix = "TDMOUT_B";
3070f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMOUT_B>;
3080f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>,
3090f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>,
3100f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>,
3110f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>,
3120f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>;
3130f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
3140f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
3150f674df0SJerome Brunet			status = "disabled";
3160f674df0SJerome Brunet		};
3170f674df0SJerome Brunet
3180f674df0SJerome Brunet		tdmout_c: audio-controller@580 {
3190f674df0SJerome Brunet			compatible = "amlogic,g12a-tdmout";
3200f674df0SJerome Brunet			reg = <0x0 0x580 0x0 0x40>;
3210f674df0SJerome Brunet			sound-name-prefix = "TDMOUT_C";
3220f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TDMOUT_C>;
3230f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>,
3240f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>,
3250f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>,
3260f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>,
3270f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>;
3280f674df0SJerome Brunet			clock-names = "pclk", "sclk", "sclk_sel",
3290f674df0SJerome Brunet				      "lrclk", "lrclk_sel";
3300f674df0SJerome Brunet			status = "disabled";
3310f674df0SJerome Brunet		};
3320f674df0SJerome Brunet
3330f674df0SJerome Brunet		spdifout_b: audio-controller@680 {
3340f674df0SJerome Brunet			compatible = "amlogic,g12a-spdifout",
3350f674df0SJerome Brunet				     "amlogic,axg-spdifout";
3360f674df0SJerome Brunet			reg = <0x0 0x680 0x0 0x50>;
3370f674df0SJerome Brunet			#sound-dai-cells = <0>;
3380f674df0SJerome Brunet			sound-name-prefix = "SPDIFOUT_B";
3390f674df0SJerome Brunet			clocks = <&clkc_audio AUD_CLKID_SPDIFOUT_B>,
3400f674df0SJerome Brunet				 <&clkc_audio AUD_CLKID_SPDIFOUT_B_CLK>;
3410f674df0SJerome Brunet			clock-names = "pclk", "mclk";
3420f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_SPDIFOUT_B>;
343c725fb00SJerome Brunet			status = "disabled";
3440f674df0SJerome Brunet		};
3450f674df0SJerome Brunet
3460f674df0SJerome Brunet		toacodec: audio-controller@740 {
347dbffd7f9SJerome Brunet			compatible = "amlogic,g12a-toacodec";
348dbffd7f9SJerome Brunet			reg = <0x0 0x740 0x0 0x4>;
349dbffd7f9SJerome Brunet			#sound-dai-cells = <1>;
350dbffd7f9SJerome Brunet			sound-name-prefix = "TOACODEC";
351dbffd7f9SJerome Brunet			resets = <&clkc_audio AUD_RESET_TOACODEC>;
352dbffd7f9SJerome Brunet			status = "disabled";
353dbffd7f9SJerome Brunet		};
354dbffd7f9SJerome Brunet
355dbffd7f9SJerome Brunet		tohdmitx: audio-controller@744 {
3560f674df0SJerome Brunet			compatible = "amlogic,g12a-tohdmitx";
3570f674df0SJerome Brunet			reg = <0x0 0x744 0x0 0x4>;
3580f674df0SJerome Brunet			#sound-dai-cells = <1>;
3590f674df0SJerome Brunet			sound-name-prefix = "TOHDMITX";
3600f674df0SJerome Brunet			resets = <&clkc_audio AUD_RESET_TOHDMITX>;
361c725fb00SJerome Brunet			status = "disabled";
3620f674df0SJerome Brunet		};
3630f674df0SJerome Brunet	};
3640f674df0SJerome Brunet};
3650f674df0SJerome Brunet
3662871626bSJerome Brunet&ethmac {
3672871626bSJerome Brunet	power-domains = <&pwrc PWRC_G12A_ETH_ID>;
3682871626bSJerome Brunet};
3692871626bSJerome Brunet
3702871626bSJerome Brunet&vpu {
3712871626bSJerome Brunet	power-domains = <&pwrc PWRC_G12A_VPU_ID>;
3722871626bSJerome Brunet};
3732871626bSJerome Brunet
3742871626bSJerome Brunet&sd_emmc_a {
3752871626bSJerome Brunet	amlogic,dram-access-quirk;
3762871626bSJerome Brunet};
3772871626bSJerome Brunet
37815767cfdSNeil Armstrong&simplefb_cvbs {
37915767cfdSNeil Armstrong	power-domains = <&pwrc PWRC_G12A_VPU_ID>;
38015767cfdSNeil Armstrong};
38115767cfdSNeil Armstrong
38215767cfdSNeil Armstrong&simplefb_hdmi {
38315767cfdSNeil Armstrong	power-domains = <&pwrc PWRC_G12A_VPU_ID>;
38415767cfdSNeil Armstrong};
38515767cfdSNeil Armstrong
386195f1403SGuillaume La Roque