10b928e4eSChristian Hewitt// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
20b928e4eSChristian Hewitt/*
30b928e4eSChristian Hewitt * Copyright (c) 2019 BayLibre, SAS
40b928e4eSChristian Hewitt * Author: Neil Armstrong <narmstrong@baylibre.com>
50b928e4eSChristian Hewitt * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
60b928e4eSChristian Hewitt */
70b928e4eSChristian Hewitt
80b928e4eSChristian Hewitt/dts-v1/;
90b928e4eSChristian Hewitt
100b928e4eSChristian Hewitt#include "meson-g12b-w400.dtsi"
110b928e4eSChristian Hewitt#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
120b928e4eSChristian Hewitt
130b928e4eSChristian Hewitt/ {
140b928e4eSChristian Hewitt	compatible = "azw,gtking", "amlogic,g12b";
150b928e4eSChristian Hewitt	model = "Beelink GT-King Pro";
160b928e4eSChristian Hewitt
17*7704b100SChristian Hewitt	aliases {
18*7704b100SChristian Hewitt		rtc0 = &rtc;
19*7704b100SChristian Hewitt		rtc1 = &vrtc;
20*7704b100SChristian Hewitt	};
21*7704b100SChristian Hewitt
220b928e4eSChristian Hewitt	gpio-keys-polled {
230b928e4eSChristian Hewitt		compatible = "gpio-keys-polled";
240b928e4eSChristian Hewitt		#address-cells = <1>;
250b928e4eSChristian Hewitt		#size-cells = <0>;
260b928e4eSChristian Hewitt		poll-interval = <100>;
270b928e4eSChristian Hewitt
280b928e4eSChristian Hewitt		power-button {
290b928e4eSChristian Hewitt			label = "power";
300b928e4eSChristian Hewitt			linux,code = <KEY_POWER>;
310b928e4eSChristian Hewitt			gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
320b928e4eSChristian Hewitt		};
330b928e4eSChristian Hewitt	};
340b928e4eSChristian Hewitt
350b928e4eSChristian Hewitt	leds {
360b928e4eSChristian Hewitt		compatible = "gpio-leds";
370b928e4eSChristian Hewitt
380b928e4eSChristian Hewitt		white {
390b928e4eSChristian Hewitt			label = "power:white";
400b928e4eSChristian Hewitt			gpios = <&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
410b928e4eSChristian Hewitt			default-state = "on";
420b928e4eSChristian Hewitt		};
430b928e4eSChristian Hewitt	};
440b928e4eSChristian Hewitt
450b928e4eSChristian Hewitt	sound {
460b928e4eSChristian Hewitt		compatible = "amlogic,axg-sound-card";
470b928e4eSChristian Hewitt		model = "G12B-GTKING-PRO";
480b928e4eSChristian Hewitt		audio-aux-devs = <&tdmout_b>;
490b928e4eSChristian Hewitt		audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
500b928e4eSChristian Hewitt				"TDMOUT_B IN 1", "FRDDR_B OUT 1",
510b928e4eSChristian Hewitt				"TDMOUT_B IN 2", "FRDDR_C OUT 1",
520b928e4eSChristian Hewitt				"TDM_B Playback", "TDMOUT_B OUT";
530b928e4eSChristian Hewitt
540b928e4eSChristian Hewitt		assigned-clocks = <&clkc CLKID_MPLL2>,
550b928e4eSChristian Hewitt				  <&clkc CLKID_MPLL0>,
560b928e4eSChristian Hewitt				  <&clkc CLKID_MPLL1>;
570b928e4eSChristian Hewitt		assigned-clock-parents = <0>, <0>, <0>;
580b928e4eSChristian Hewitt		assigned-clock-rates = <294912000>,
590b928e4eSChristian Hewitt				       <270950400>,
600b928e4eSChristian Hewitt				       <393216000>;
610b928e4eSChristian Hewitt		status = "okay";
620b928e4eSChristian Hewitt
630b928e4eSChristian Hewitt		dai-link-0 {
640b928e4eSChristian Hewitt			sound-dai = <&frddr_a>;
650b928e4eSChristian Hewitt		};
660b928e4eSChristian Hewitt
670b928e4eSChristian Hewitt		dai-link-1 {
680b928e4eSChristian Hewitt			sound-dai = <&frddr_b>;
690b928e4eSChristian Hewitt		};
700b928e4eSChristian Hewitt
710b928e4eSChristian Hewitt		dai-link-2 {
720b928e4eSChristian Hewitt			sound-dai = <&frddr_c>;
730b928e4eSChristian Hewitt		};
740b928e4eSChristian Hewitt
750b928e4eSChristian Hewitt		/* 8ch hdmi interface */
760b928e4eSChristian Hewitt		dai-link-3 {
770b928e4eSChristian Hewitt			sound-dai = <&tdmif_b>;
780b928e4eSChristian Hewitt			dai-format = "i2s";
790b928e4eSChristian Hewitt			dai-tdm-slot-tx-mask-0 = <1 1>;
800b928e4eSChristian Hewitt			dai-tdm-slot-tx-mask-1 = <1 1>;
810b928e4eSChristian Hewitt			dai-tdm-slot-tx-mask-2 = <1 1>;
820b928e4eSChristian Hewitt			dai-tdm-slot-tx-mask-3 = <1 1>;
830b928e4eSChristian Hewitt			mclk-fs = <256>;
840b928e4eSChristian Hewitt
850b928e4eSChristian Hewitt			codec {
860b928e4eSChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
870b928e4eSChristian Hewitt			};
880b928e4eSChristian Hewitt		};
890b928e4eSChristian Hewitt
900b928e4eSChristian Hewitt		dai-link-4 {
910b928e4eSChristian Hewitt			sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
920b928e4eSChristian Hewitt
930b928e4eSChristian Hewitt			codec {
940b928e4eSChristian Hewitt				sound-dai = <&hdmi_tx>;
950b928e4eSChristian Hewitt			};
960b928e4eSChristian Hewitt		};
970b928e4eSChristian Hewitt	};
980b928e4eSChristian Hewitt};
990b928e4eSChristian Hewitt
1000b928e4eSChristian Hewitt&arb {
1010b928e4eSChristian Hewitt	status = "okay";
1020b928e4eSChristian Hewitt};
1030b928e4eSChristian Hewitt
1040b928e4eSChristian Hewitt&clkc_audio {
1050b928e4eSChristian Hewitt	status = "okay";
1060b928e4eSChristian Hewitt};
1070b928e4eSChristian Hewitt
1080b928e4eSChristian Hewitt&frddr_a {
1090b928e4eSChristian Hewitt	status = "okay";
1100b928e4eSChristian Hewitt};
1110b928e4eSChristian Hewitt
1120b928e4eSChristian Hewitt&frddr_b {
1130b928e4eSChristian Hewitt	status = "okay";
1140b928e4eSChristian Hewitt};
1150b928e4eSChristian Hewitt
1160b928e4eSChristian Hewitt&frddr_c {
1170b928e4eSChristian Hewitt	status = "okay";
1180b928e4eSChristian Hewitt};
1190b928e4eSChristian Hewitt
120*7704b100SChristian Hewitt&i2c3 {
121*7704b100SChristian Hewitt	status = "okay";
122*7704b100SChristian Hewitt	pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
123*7704b100SChristian Hewitt	pinctrl-names = "default";
124*7704b100SChristian Hewitt
125*7704b100SChristian Hewitt	rtc: rtc@51 {
126*7704b100SChristian Hewitt		compatible = "nxp,pcf8563";
127*7704b100SChristian Hewitt		reg = <0x51>;
128*7704b100SChristian Hewitt		wakeup-source;
129*7704b100SChristian Hewitt	};
130*7704b100SChristian Hewitt};
131*7704b100SChristian Hewitt
1320b928e4eSChristian Hewitt&tdmif_b {
1330b928e4eSChristian Hewitt	status = "okay";
1340b928e4eSChristian Hewitt};
1350b928e4eSChristian Hewitt
1360b928e4eSChristian Hewitt&tdmout_b {
1370b928e4eSChristian Hewitt	status = "okay";
1380b928e4eSChristian Hewitt};
1390b928e4eSChristian Hewitt
1400b928e4eSChristian Hewitt&tohdmitx {
1410b928e4eSChristian Hewitt	status = "okay";
1420b928e4eSChristian Hewitt};
143