xref: /linux/scripts/dtc/include-prefixes/arm64/amlogic/meson-g12b-ugoos-am6.dts (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
12cd2310fSChristian Hewitt// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
22cd2310fSChristian Hewitt/*
32cd2310fSChristian Hewitt * Copyright (c) 2019 BayLibre, SAS
42cd2310fSChristian Hewitt * Author: Neil Armstrong <narmstrong@baylibre.com>
52cd2310fSChristian Hewitt * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
62cd2310fSChristian Hewitt */
72cd2310fSChristian Hewitt
82cd2310fSChristian Hewitt/dts-v1/;
92cd2310fSChristian Hewitt
103cb74db9SChristian Hewitt#include "meson-g12b-w400.dtsi"
112cd2310fSChristian Hewitt#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
122cd2310fSChristian Hewitt
132cd2310fSChristian Hewitt/ {
145c28dcbbSNeil Armstrong	compatible = "ugoos,am6", "amlogic,s922x", "amlogic,g12b";
152cd2310fSChristian Hewitt	model = "Ugoos AM6";
162cd2310fSChristian Hewitt
172cd2310fSChristian Hewitt	spdif_dit: audio-codec-1 {
182cd2310fSChristian Hewitt		#sound-dai-cells = <0>;
192cd2310fSChristian Hewitt		compatible = "linux,spdif-dit";
202cd2310fSChristian Hewitt		sound-name-prefix = "DIT";
212cd2310fSChristian Hewitt	};
222cd2310fSChristian Hewitt
232cd2310fSChristian Hewitt	sound {
242cd2310fSChristian Hewitt		compatible = "amlogic,axg-sound-card";
25933b80edSChristian Hewitt		model = "UGOOS-AM6";
262cd2310fSChristian Hewitt		audio-aux-devs = <&tdmout_b>;
272cd2310fSChristian Hewitt		audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
282cd2310fSChristian Hewitt				"TDMOUT_B IN 1", "FRDDR_B OUT 1",
292cd2310fSChristian Hewitt				"TDMOUT_B IN 2", "FRDDR_C OUT 1",
302cd2310fSChristian Hewitt				"TDM_B Playback", "TDMOUT_B OUT",
313f0b916fSJerome Brunet				"SPDIFOUT_A IN 0", "FRDDR_A OUT 3",
323f0b916fSJerome Brunet				"SPDIFOUT_A IN 1", "FRDDR_B OUT 3",
333f0b916fSJerome Brunet				"SPDIFOUT_A IN 2", "FRDDR_C OUT 3";
342cd2310fSChristian Hewitt
35*9b5d2511SNeil Armstrong		clocks = <&clkc CLKID_MPLL2>,
36*9b5d2511SNeil Armstrong			 <&clkc CLKID_MPLL0>,
37*9b5d2511SNeil Armstrong			 <&clkc CLKID_MPLL1>;
38*9b5d2511SNeil Armstrong
392cd2310fSChristian Hewitt		assigned-clocks = <&clkc CLKID_MPLL2>,
402cd2310fSChristian Hewitt				  <&clkc CLKID_MPLL0>,
412cd2310fSChristian Hewitt				  <&clkc CLKID_MPLL1>;
422cd2310fSChristian Hewitt		assigned-clock-parents = <0>, <0>, <0>;
432cd2310fSChristian Hewitt		assigned-clock-rates = <294912000>,
442cd2310fSChristian Hewitt				       <270950400>,
452cd2310fSChristian Hewitt				       <393216000>;
462cd2310fSChristian Hewitt
472cd2310fSChristian Hewitt		dai-link-0 {
482cd2310fSChristian Hewitt			sound-dai = <&frddr_a>;
492cd2310fSChristian Hewitt		};
502cd2310fSChristian Hewitt
512cd2310fSChristian Hewitt		dai-link-1 {
522cd2310fSChristian Hewitt			sound-dai = <&frddr_b>;
532cd2310fSChristian Hewitt		};
542cd2310fSChristian Hewitt
552cd2310fSChristian Hewitt		dai-link-2 {
562cd2310fSChristian Hewitt			sound-dai = <&frddr_c>;
572cd2310fSChristian Hewitt		};
582cd2310fSChristian Hewitt
592cd2310fSChristian Hewitt		/* 8ch hdmi interface */
602cd2310fSChristian Hewitt		dai-link-3 {
612cd2310fSChristian Hewitt			sound-dai = <&tdmif_b>;
622cd2310fSChristian Hewitt			dai-format = "i2s";
632cd2310fSChristian Hewitt			dai-tdm-slot-tx-mask-0 = <1 1>;
642cd2310fSChristian Hewitt			dai-tdm-slot-tx-mask-1 = <1 1>;
652cd2310fSChristian Hewitt			dai-tdm-slot-tx-mask-2 = <1 1>;
662cd2310fSChristian Hewitt			dai-tdm-slot-tx-mask-3 = <1 1>;
672cd2310fSChristian Hewitt			mclk-fs = <256>;
682cd2310fSChristian Hewitt
692cd2310fSChristian Hewitt			codec {
702cd2310fSChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
712cd2310fSChristian Hewitt			};
722cd2310fSChristian Hewitt		};
732cd2310fSChristian Hewitt
742cd2310fSChristian Hewitt		/* spdif hdmi or toslink interface */
752cd2310fSChristian Hewitt		dai-link-4 {
763f0b916fSJerome Brunet			sound-dai = <&spdifout_a>;
772cd2310fSChristian Hewitt
782cd2310fSChristian Hewitt			codec-0 {
792cd2310fSChristian Hewitt				sound-dai = <&spdif_dit>;
802cd2310fSChristian Hewitt			};
812cd2310fSChristian Hewitt
822cd2310fSChristian Hewitt			codec-1 {
832cd2310fSChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_SPDIF_IN_A>;
842cd2310fSChristian Hewitt			};
852cd2310fSChristian Hewitt		};
862cd2310fSChristian Hewitt
872cd2310fSChristian Hewitt		/* spdif hdmi interface */
882cd2310fSChristian Hewitt		dai-link-5 {
892cd2310fSChristian Hewitt			sound-dai = <&spdifout_b>;
902cd2310fSChristian Hewitt
912cd2310fSChristian Hewitt			codec {
922cd2310fSChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_SPDIF_IN_B>;
932cd2310fSChristian Hewitt			};
942cd2310fSChristian Hewitt		};
952cd2310fSChristian Hewitt
962cd2310fSChristian Hewitt		/* hdmi glue */
972cd2310fSChristian Hewitt		dai-link-6 {
982cd2310fSChristian Hewitt			sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
992cd2310fSChristian Hewitt
1002cd2310fSChristian Hewitt			codec {
1012cd2310fSChristian Hewitt				sound-dai = <&hdmi_tx>;
1022cd2310fSChristian Hewitt			};
1032cd2310fSChristian Hewitt		};
1042cd2310fSChristian Hewitt	};
1052cd2310fSChristian Hewitt};
1062cd2310fSChristian Hewitt
1072cd2310fSChristian Hewitt&arb {
1082cd2310fSChristian Hewitt	status = "okay";
1092cd2310fSChristian Hewitt};
1102cd2310fSChristian Hewitt
1112cd2310fSChristian Hewitt&clkc_audio {
1122cd2310fSChristian Hewitt	status = "okay";
1132cd2310fSChristian Hewitt};
1142cd2310fSChristian Hewitt
1152cd2310fSChristian Hewitt&frddr_a {
1162cd2310fSChristian Hewitt	status = "okay";
1172cd2310fSChristian Hewitt};
1182cd2310fSChristian Hewitt
1192cd2310fSChristian Hewitt&frddr_b {
1202cd2310fSChristian Hewitt	status = "okay";
1212cd2310fSChristian Hewitt};
1222cd2310fSChristian Hewitt
1232cd2310fSChristian Hewitt&frddr_c {
1242cd2310fSChristian Hewitt	status = "okay";
1252cd2310fSChristian Hewitt};
1262cd2310fSChristian Hewitt
1272cd2310fSChristian Hewitt&ir {
1282cd2310fSChristian Hewitt	linux,rc-map-name = "rc-khadas";
1292cd2310fSChristian Hewitt};
1302cd2310fSChristian Hewitt
1313f0b916fSJerome Brunet&spdifout_a {
1322cd2310fSChristian Hewitt	pinctrl-0 = <&spdif_out_h_pins>;
1332cd2310fSChristian Hewitt	pinctrl-names = "default";
1342cd2310fSChristian Hewitt	status = "okay";
1352cd2310fSChristian Hewitt};
1362cd2310fSChristian Hewitt
1372cd2310fSChristian Hewitt&spdifout_b {
1382cd2310fSChristian Hewitt	status = "okay";
1392cd2310fSChristian Hewitt};
1402cd2310fSChristian Hewitt
1412cd2310fSChristian Hewitt&tdmif_b {
1422cd2310fSChristian Hewitt	status = "okay";
1432cd2310fSChristian Hewitt};
1442cd2310fSChristian Hewitt
1452cd2310fSChristian Hewitt&tdmout_b {
1462cd2310fSChristian Hewitt	status = "okay";
1472cd2310fSChristian Hewitt};
1482cd2310fSChristian Hewitt
1492cd2310fSChristian Hewitt&tohdmitx {
1502cd2310fSChristian Hewitt	status = "okay";
1512cd2310fSChristian Hewitt};
1522cd2310fSChristian Hewitt
1532cd2310fSChristian Hewitt&uart_A {
1542cd2310fSChristian Hewitt	status = "okay";
1552cd2310fSChristian Hewitt	pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
1562cd2310fSChristian Hewitt	pinctrl-names = "default";
1572cd2310fSChristian Hewitt	uart-has-rtscts;
1582cd2310fSChristian Hewitt
1592cd2310fSChristian Hewitt	bluetooth {
1602cd2310fSChristian Hewitt		compatible = "brcm,bcm43438-bt";
1612cd2310fSChristian Hewitt		shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
1622cd2310fSChristian Hewitt		max-speed = <2000000>;
1632cd2310fSChristian Hewitt		clocks = <&wifi32k>;
1642cd2310fSChristian Hewitt	clock-names = "lpo";
1652cd2310fSChristian Hewitt	};
1662cd2310fSChristian Hewitt};
1672cd2310fSChristian Hewitt
1682cd2310fSChristian Hewitt&uart_AO {
1692cd2310fSChristian Hewitt	status = "okay";
1702cd2310fSChristian Hewitt	pinctrl-0 = <&uart_ao_a_pins>;
1712cd2310fSChristian Hewitt	pinctrl-names = "default";
1722cd2310fSChristian Hewitt};
1732cd2310fSChristian Hewitt
1742cd2310fSChristian Hewitt&usb {
1752cd2310fSChristian Hewitt	status = "okay";
1762cd2310fSChristian Hewitt	dr_mode = "host";
1774e025fd9SNeil Armstrong	vbus-supply = <&usb_pwr_en>;
1782cd2310fSChristian Hewitt};
1792cd2310fSChristian Hewitt
1802cd2310fSChristian Hewitt&usb2_phy0 {
1812cd2310fSChristian Hewitt	phy-supply = <&usb1_pow>;
1822cd2310fSChristian Hewitt};
1832cd2310fSChristian Hewitt
1842cd2310fSChristian Hewitt&usb2_phy1 {
1852cd2310fSChristian Hewitt	phy-supply = <&usb1_pow>;
1862cd2310fSChristian Hewitt};
187