Skip to content

Commit b8b85d0

Browse files
chewittkhilman
authored andcommitted
arm64: dts: meson: add audio playback to khadas-vim3l
Add initial audio support limited to HDMI i2s, copying the config from the existing VIM3 device-tree. Signed-off-by: Christian Hewitt <[email protected]> Signed-off-by: Kevin Hilman <[email protected]> Acked-by: Jerome Brunet <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 725da67 commit b8b85d0

File tree

1 file changed

+88
-0
lines changed

1 file changed

+88
-0
lines changed

arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
#include "meson-sm1.dtsi"
1010
#include "meson-khadas-vim3.dtsi"
11+
#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
1112

1213
/ {
1314
compatible = "khadas,vim3l", "amlogic,sm1";
@@ -31,6 +32,69 @@
3132
regulator-boot-on;
3233
regulator-always-on;
3334
};
35+
36+
sound {
37+
compatible = "amlogic,axg-sound-card";
38+
model = "SM1-KHADAS-VIM3L";
39+
audio-aux-devs = <&tdmout_a>;
40+
audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 0",
41+
"TDMOUT_A IN 1", "FRDDR_B OUT 0",
42+
"TDMOUT_A IN 2", "FRDDR_C OUT 0",
43+
"TDM_A Playback", "TDMOUT_A OUT";
44+
45+
assigned-clocks = <&clkc CLKID_MPLL2>,
46+
<&clkc CLKID_MPLL0>,
47+
<&clkc CLKID_MPLL1>;
48+
assigned-clock-parents = <0>, <0>, <0>;
49+
assigned-clock-rates = <294912000>,
50+
<270950400>,
51+
<393216000>;
52+
status = "okay";
53+
54+
dai-link-0 {
55+
sound-dai = <&frddr_a>;
56+
};
57+
58+
dai-link-1 {
59+
sound-dai = <&frddr_b>;
60+
};
61+
62+
dai-link-2 {
63+
sound-dai = <&frddr_c>;
64+
};
65+
66+
/* 8ch hdmi interface */
67+
dai-link-3 {
68+
sound-dai = <&tdmif_a>;
69+
dai-format = "i2s";
70+
dai-tdm-slot-tx-mask-0 = <1 1>;
71+
dai-tdm-slot-tx-mask-1 = <1 1>;
72+
dai-tdm-slot-tx-mask-2 = <1 1>;
73+
dai-tdm-slot-tx-mask-3 = <1 1>;
74+
mclk-fs = <256>;
75+
76+
codec {
77+
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
78+
};
79+
};
80+
81+
/* hdmi glue */
82+
dai-link-4 {
83+
sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
84+
85+
codec {
86+
sound-dai = <&hdmi_tx>;
87+
};
88+
};
89+
};
90+
};
91+
92+
&arb {
93+
status = "okay";
94+
};
95+
96+
&clkc_audio {
97+
status = "okay";
3498
};
3599

36100
&cpu0 {
@@ -61,6 +125,18 @@
61125
clock-latency = <50000>;
62126
};
63127

128+
&frddr_a {
129+
status = "okay";
130+
};
131+
132+
&frddr_b {
133+
status = "okay";
134+
};
135+
136+
&frddr_c {
137+
status = "okay";
138+
};
139+
64140
&pwm_AO_cd {
65141
pinctrl-0 = <&pwm_ao_d_e_pins>;
66142
pinctrl-names = "default";
@@ -93,3 +169,15 @@
93169
phy-names = "usb2-phy0", "usb2-phy1";
94170
};
95171
*/
172+
173+
&tdmif_a {
174+
status = "okay";
175+
};
176+
177+
&tdmout_a {
178+
status = "okay";
179+
};
180+
181+
&tohdmitx {
182+
status = "okay";
183+
};

0 commit comments

Comments
 (0)