xref: /openbmc/linux/arch/arm64/boot/dts/amlogic/meson-g12b-gtking.dts (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1c5522ff9SChristian Hewitt// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2c5522ff9SChristian Hewitt/*
3c5522ff9SChristian Hewitt * Copyright (c) 2019 BayLibre, SAS
4c5522ff9SChristian Hewitt * Author: Neil Armstrong <narmstrong@baylibre.com>
5c5522ff9SChristian Hewitt * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
6c5522ff9SChristian Hewitt */
7c5522ff9SChristian Hewitt
8c5522ff9SChristian Hewitt/dts-v1/;
9c5522ff9SChristian Hewitt
10c5522ff9SChristian Hewitt#include "meson-g12b-w400.dtsi"
11c5522ff9SChristian Hewitt#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
12c5522ff9SChristian Hewitt
13c5522ff9SChristian Hewitt/ {
14*d9421d6cSKevin Hilman	compatible = "azw,gtking", "amlogic,s922x", "amlogic,g12b";
15c5522ff9SChristian Hewitt	model = "Beelink GT-King";
16c5522ff9SChristian Hewitt
177704b100SChristian Hewitt	aliases {
187704b100SChristian Hewitt		rtc0 = &rtc;
197704b100SChristian Hewitt		rtc1 = &vrtc;
207704b100SChristian Hewitt	};
217704b100SChristian Hewitt
22c5522ff9SChristian Hewitt	spdif_dit: audio-codec-1 {
23c5522ff9SChristian Hewitt		#sound-dai-cells = <0>;
24c5522ff9SChristian Hewitt		compatible = "linux,spdif-dit";
25c5522ff9SChristian Hewitt		status = "okay";
26c5522ff9SChristian Hewitt		sound-name-prefix = "DIT";
27c5522ff9SChristian Hewitt	};
28c5522ff9SChristian Hewitt
29c5522ff9SChristian Hewitt	sound {
30c5522ff9SChristian Hewitt		compatible = "amlogic,axg-sound-card";
31933b80edSChristian Hewitt		model = "GTKING";
32c5522ff9SChristian Hewitt		audio-aux-devs = <&tdmout_b>;
33c5522ff9SChristian Hewitt		audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
34c5522ff9SChristian Hewitt				"TDMOUT_B IN 1", "FRDDR_B OUT 1",
35c5522ff9SChristian Hewitt				"TDMOUT_B IN 2", "FRDDR_C OUT 1",
36c5522ff9SChristian Hewitt				"TDM_B Playback", "TDMOUT_B OUT",
37c5522ff9SChristian Hewitt				"SPDIFOUT IN 0", "FRDDR_A OUT 3",
38c5522ff9SChristian Hewitt				"SPDIFOUT IN 1", "FRDDR_B OUT 3",
39c5522ff9SChristian Hewitt				"SPDIFOUT IN 2", "FRDDR_C OUT 3";
40c5522ff9SChristian Hewitt
41c5522ff9SChristian Hewitt		assigned-clocks = <&clkc CLKID_MPLL2>,
42c5522ff9SChristian Hewitt				  <&clkc CLKID_MPLL0>,
43c5522ff9SChristian Hewitt				  <&clkc CLKID_MPLL1>;
44c5522ff9SChristian Hewitt		assigned-clock-parents = <0>, <0>, <0>;
45c5522ff9SChristian Hewitt		assigned-clock-rates = <294912000>,
46c5522ff9SChristian Hewitt				       <270950400>,
47c5522ff9SChristian Hewitt				       <393216000>;
48c5522ff9SChristian Hewitt
49c5522ff9SChristian Hewitt		dai-link-0 {
50c5522ff9SChristian Hewitt			sound-dai = <&frddr_a>;
51c5522ff9SChristian Hewitt		};
52c5522ff9SChristian Hewitt
53c5522ff9SChristian Hewitt		dai-link-1 {
54c5522ff9SChristian Hewitt			sound-dai = <&frddr_b>;
55c5522ff9SChristian Hewitt		};
56c5522ff9SChristian Hewitt
57c5522ff9SChristian Hewitt		dai-link-2 {
58c5522ff9SChristian Hewitt			sound-dai = <&frddr_c>;
59c5522ff9SChristian Hewitt		};
60c5522ff9SChristian Hewitt
61c5522ff9SChristian Hewitt		/* 8ch hdmi interface */
62c5522ff9SChristian Hewitt		dai-link-3 {
63c5522ff9SChristian Hewitt			sound-dai = <&tdmif_b>;
64c5522ff9SChristian Hewitt			dai-format = "i2s";
65c5522ff9SChristian Hewitt			dai-tdm-slot-tx-mask-0 = <1 1>;
66c5522ff9SChristian Hewitt			dai-tdm-slot-tx-mask-1 = <1 1>;
67c5522ff9SChristian Hewitt			dai-tdm-slot-tx-mask-2 = <1 1>;
68c5522ff9SChristian Hewitt			dai-tdm-slot-tx-mask-3 = <1 1>;
69c5522ff9SChristian Hewitt			mclk-fs = <256>;
70c5522ff9SChristian Hewitt
71c5522ff9SChristian Hewitt			codec {
72c5522ff9SChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
73c5522ff9SChristian Hewitt			};
74c5522ff9SChristian Hewitt		};
75c5522ff9SChristian Hewitt
76c5522ff9SChristian Hewitt		/* spdif hdmi or toslink interface */
77c5522ff9SChristian Hewitt		dai-link-4 {
78c5522ff9SChristian Hewitt			sound-dai = <&spdifout>;
79c5522ff9SChristian Hewitt
80c5522ff9SChristian Hewitt			codec-0 {
81c5522ff9SChristian Hewitt				sound-dai = <&spdif_dit>;
82c5522ff9SChristian Hewitt			};
83c5522ff9SChristian Hewitt
84c5522ff9SChristian Hewitt			codec-1 {
85c5522ff9SChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_SPDIF_IN_A>;
86c5522ff9SChristian Hewitt			};
87c5522ff9SChristian Hewitt		};
88c5522ff9SChristian Hewitt
89c5522ff9SChristian Hewitt		/* spdif hdmi interface */
90c5522ff9SChristian Hewitt		dai-link-5 {
91c5522ff9SChristian Hewitt			sound-dai = <&spdifout_b>;
92c5522ff9SChristian Hewitt
93c5522ff9SChristian Hewitt			codec {
94c5522ff9SChristian Hewitt				sound-dai = <&tohdmitx TOHDMITX_SPDIF_IN_B>;
95c5522ff9SChristian Hewitt			};
96c5522ff9SChristian Hewitt		};
97c5522ff9SChristian Hewitt
98c5522ff9SChristian Hewitt		/* hdmi glue */
99c5522ff9SChristian Hewitt		dai-link-6 {
100c5522ff9SChristian Hewitt			sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
101c5522ff9SChristian Hewitt
102c5522ff9SChristian Hewitt			codec {
103c5522ff9SChristian Hewitt				sound-dai = <&hdmi_tx>;
104c5522ff9SChristian Hewitt			};
105c5522ff9SChristian Hewitt		};
106c5522ff9SChristian Hewitt	};
107c5522ff9SChristian Hewitt};
108c5522ff9SChristian Hewitt
109c5522ff9SChristian Hewitt&arb {
110c5522ff9SChristian Hewitt	status = "okay";
111c5522ff9SChristian Hewitt};
112c5522ff9SChristian Hewitt
113c5522ff9SChristian Hewitt&clkc_audio {
114c5522ff9SChristian Hewitt	status = "okay";
115c5522ff9SChristian Hewitt};
116c5522ff9SChristian Hewitt
117c5522ff9SChristian Hewitt&frddr_a {
118c5522ff9SChristian Hewitt	status = "okay";
119c5522ff9SChristian Hewitt};
120c5522ff9SChristian Hewitt
121c5522ff9SChristian Hewitt&frddr_b {
122c5522ff9SChristian Hewitt	status = "okay";
123c5522ff9SChristian Hewitt};
124c5522ff9SChristian Hewitt
125c5522ff9SChristian Hewitt&frddr_c {
126c5522ff9SChristian Hewitt	status = "okay";
127c5522ff9SChristian Hewitt};
128c5522ff9SChristian Hewitt
1297704b100SChristian Hewitt
1307704b100SChristian Hewitt&i2c3 {
1317704b100SChristian Hewitt	status = "okay";
1327704b100SChristian Hewitt	pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
1337704b100SChristian Hewitt	pinctrl-names = "default";
1347704b100SChristian Hewitt
1357704b100SChristian Hewitt	rtc: rtc@51 {
1367704b100SChristian Hewitt		compatible = "nxp,pcf8563";
1377704b100SChristian Hewitt		reg = <0x51>;
1387704b100SChristian Hewitt		wakeup-source;
1397704b100SChristian Hewitt	};
1407704b100SChristian Hewitt};
1417704b100SChristian Hewitt
142c5522ff9SChristian Hewitt&spdifout {
143c5522ff9SChristian Hewitt	pinctrl-0 = <&spdif_out_h_pins>;
144c5522ff9SChristian Hewitt	pinctrl-names = "default";
145c5522ff9SChristian Hewitt	status = "okay";
146c5522ff9SChristian Hewitt};
147c5522ff9SChristian Hewitt
148c5522ff9SChristian Hewitt&spdifout_b {
149c5522ff9SChristian Hewitt	status = "okay";
150c5522ff9SChristian Hewitt};
151c5522ff9SChristian Hewitt
152c5522ff9SChristian Hewitt&tdmif_b {
153c5522ff9SChristian Hewitt	status = "okay";
154c5522ff9SChristian Hewitt};
155c5522ff9SChristian Hewitt
156c5522ff9SChristian Hewitt&tdmout_b {
157c5522ff9SChristian Hewitt	status = "okay";
158c5522ff9SChristian Hewitt};
159c5522ff9SChristian Hewitt
160c5522ff9SChristian Hewitt&tohdmitx {
161c5522ff9SChristian Hewitt	status = "okay";
162c5522ff9SChristian Hewitt};
163