CAINIAO CNIoT-CORE: change sound card name and update DAI links

This commit is contained in:
retro98boy 2025-06-15 20:54:11 +08:00 committed by Igor
parent 923dc8d7e8
commit 99d23b8190
3 changed files with 113 additions and 77 deletions

View File

@ -205,21 +205,21 @@
sound {
compatible = "amlogic,axg-sound-card";
model = "CNIoT-CORE";
audio-widgets = "Line", "Lineout";
audio-aux-devs = <&tdmout_b>, <&tdmout_c>, <&ht6872>;
audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
model = "cainiao-cniot-core";
audio-widgets = "Speaker", "Internal Speaker";
audio-aux-devs = <&tdmout_a>, <&tdmout_b>, <&ht6872>;
audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 0",
"TDMOUT_A IN 1", "FRDDR_B OUT 0",
"TDMOUT_A IN 2", "FRDDR_C OUT 0",
"TDM_A Playback", "TDMOUT_A OUT",
"TDMOUT_B IN 0", "FRDDR_A OUT 1",
"TDMOUT_B IN 1", "FRDDR_B OUT 1",
"TDMOUT_B IN 2", "FRDDR_C OUT 1",
"TDM_B Playback", "TDMOUT_B OUT",
"TDMOUT_C IN 0", "FRDDR_A OUT 2",
"TDMOUT_C IN 1", "FRDDR_B OUT 2",
"TDMOUT_C IN 2", "FRDDR_C OUT 2",
"TDM_C Playback", "TDMOUT_C OUT",
"HT6872 INL", "ACODEC LOLP",
"HT6872 INR", "ACODEC LORP",
"Lineout", "HT6872 OUTL",
"Lineout", "HT6872 OUTR";
"Internal Speaker", "HT6872 OUTL",
"Internal Speaker", "HT6872 OUTR";
clocks = <&clkc CLKID_MPLL2>,
<&clkc CLKID_MPLL0>,
@ -247,6 +247,25 @@
/* 8ch hdmi interface */
dai-link-3 {
sound-dai = <&tdmif_a>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-0 = <1 1>;
dai-tdm-slot-tx-mask-1 = <1 1>;
dai-tdm-slot-tx-mask-2 = <1 1>;
dai-tdm-slot-tx-mask-3 = <1 1>;
mclk-fs = <256>;
codec-0 {
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
};
codec-1 {
sound-dai = <&toacodec TOACODEC_IN_A>;
};
};
/* 8ch hdmi interface */
dai-link-4 {
sound-dai = <&tdmif_b>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-0 = <1 1>;
@ -255,19 +274,12 @@
dai-tdm-slot-tx-mask-3 = <1 1>;
mclk-fs = <256>;
codec {
codec-0 {
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
};
};
dai-link-4 {
sound-dai = <&tdmif_c>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-0 = <1 1>;
mclk-fs = <256>;
codec {
sound-dai = <&toacodec TOACODEC_IN_C>;
codec-1 {
sound-dai = <&toacodec TOACODEC_IN_B>;
};
};
@ -526,11 +538,15 @@
};
};
&tdmif_a {
status = "okay";
};
&tdmif_b {
status = "okay";
};
&tdmif_c {
&tdmout_a {
status = "okay";
};
@ -538,10 +554,6 @@
status = "okay";
};
&tdmout_c {
status = "okay";
};
&toacodec {
status = "okay";
};

View File

@ -205,21 +205,21 @@
sound {
compatible = "amlogic,axg-sound-card";
model = "CNIoT-CORE";
audio-widgets = "Line", "Lineout";
audio-aux-devs = <&tdmout_b>, <&tdmout_c>, <&ht6872>;
audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
model = "cainiao-cniot-core";
audio-widgets = "Speaker", "Internal Speaker";
audio-aux-devs = <&tdmout_a>, <&tdmout_b>, <&ht6872>;
audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 0",
"TDMOUT_A IN 1", "FRDDR_B OUT 0",
"TDMOUT_A IN 2", "FRDDR_C OUT 0",
"TDM_A Playback", "TDMOUT_A OUT",
"TDMOUT_B IN 0", "FRDDR_A OUT 1",
"TDMOUT_B IN 1", "FRDDR_B OUT 1",
"TDMOUT_B IN 2", "FRDDR_C OUT 1",
"TDM_B Playback", "TDMOUT_B OUT",
"TDMOUT_C IN 0", "FRDDR_A OUT 2",
"TDMOUT_C IN 1", "FRDDR_B OUT 2",
"TDMOUT_C IN 2", "FRDDR_C OUT 2",
"TDM_C Playback", "TDMOUT_C OUT",
"HT6872 INL", "ACODEC LOLP",
"HT6872 INR", "ACODEC LORP",
"Lineout", "HT6872 OUTL",
"Lineout", "HT6872 OUTR";
"Internal Speaker", "HT6872 OUTL",
"Internal Speaker", "HT6872 OUTR";
clocks = <&clkc CLKID_MPLL2>,
<&clkc CLKID_MPLL0>,
@ -247,6 +247,25 @@
/* 8ch hdmi interface */
dai-link-3 {
sound-dai = <&tdmif_a>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-0 = <1 1>;
dai-tdm-slot-tx-mask-1 = <1 1>;
dai-tdm-slot-tx-mask-2 = <1 1>;
dai-tdm-slot-tx-mask-3 = <1 1>;
mclk-fs = <256>;
codec-0 {
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
};
codec-1 {
sound-dai = <&toacodec TOACODEC_IN_A>;
};
};
/* 8ch hdmi interface */
dai-link-4 {
sound-dai = <&tdmif_b>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-0 = <1 1>;
@ -255,19 +274,12 @@
dai-tdm-slot-tx-mask-3 = <1 1>;
mclk-fs = <256>;
codec {
codec-0 {
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
};
};
dai-link-4 {
sound-dai = <&tdmif_c>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-0 = <1 1>;
mclk-fs = <256>;
codec {
sound-dai = <&toacodec TOACODEC_IN_C>;
codec-1 {
sound-dai = <&toacodec TOACODEC_IN_B>;
};
};
@ -526,11 +538,15 @@
};
};
&tdmif_a {
status = "okay";
};
&tdmif_b {
status = "okay";
};
&tdmif_c {
&tdmout_a {
status = "okay";
};
@ -538,10 +554,6 @@
status = "okay";
};
&tdmout_c {
status = "okay";
};
&toacodec {
status = "okay";
};

View File

@ -128,10 +128,10 @@ index 00000000..345d9b86
+CONFIG_ZSTD=y
diff --git a/dts/upstream/src/arm64/amlogic/meson-g12b-a311d-cainiao-cniot-core.dts b/dts/upstream/src/arm64/amlogic/meson-g12b-a311d-cainiao-cniot-core.dts
new file mode 100644
index 00000000..53318e9d
index 00000000..bdfcce04
--- /dev/null
+++ b/dts/upstream/src/arm64/amlogic/meson-g12b-a311d-cainiao-cniot-core.dts
@@ -0,0 +1,588 @@
@@ -0,0 +1,600 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 BayLibre, SAS
@ -339,21 +339,21 @@ index 00000000..53318e9d
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ model = "CNIoT-CORE";
+ audio-widgets = "Line", "Lineout";
+ audio-aux-devs = <&tdmout_b>, <&tdmout_c>, <&ht6872>;
+ audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
+ model = "cainiao-cniot-core";
+ audio-widgets = "Speaker", "Internal Speaker";
+ audio-aux-devs = <&tdmout_a>, <&tdmout_b>, <&ht6872>;
+ audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 0",
+ "TDMOUT_A IN 1", "FRDDR_B OUT 0",
+ "TDMOUT_A IN 2", "FRDDR_C OUT 0",
+ "TDM_A Playback", "TDMOUT_A OUT",
+ "TDMOUT_B IN 0", "FRDDR_A OUT 1",
+ "TDMOUT_B IN 1", "FRDDR_B OUT 1",
+ "TDMOUT_B IN 2", "FRDDR_C OUT 1",
+ "TDM_B Playback", "TDMOUT_B OUT",
+ "TDMOUT_C IN 0", "FRDDR_A OUT 2",
+ "TDMOUT_C IN 1", "FRDDR_B OUT 2",
+ "TDMOUT_C IN 2", "FRDDR_C OUT 2",
+ "TDM_C Playback", "TDMOUT_C OUT",
+ "HT6872 INL", "ACODEC LOLP",
+ "HT6872 INR", "ACODEC LORP",
+ "Lineout", "HT6872 OUTL",
+ "Lineout", "HT6872 OUTR";
+ "Internal Speaker", "HT6872 OUTL",
+ "Internal Speaker", "HT6872 OUTR";
+
+ clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
@ -381,6 +381,25 @@ index 00000000..53318e9d
+
+ /* 8ch hdmi interface */
+ dai-link-3 {
+ sound-dai = <&tdmif_a>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ dai-tdm-slot-tx-mask-1 = <1 1>;
+ dai-tdm-slot-tx-mask-2 = <1 1>;
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec-0 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
+ };
+
+ codec-1 {
+ sound-dai = <&toacodec TOACODEC_IN_A>;
+ };
+ };
+
+ /* 8ch hdmi interface */
+ dai-link-4 {
+ sound-dai = <&tdmif_b>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
@ -389,19 +408,12 @@ index 00000000..53318e9d
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ codec-0 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ dai-link-4 {
+ sound-dai = <&tdmif_c>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ sound-dai = <&toacodec TOACODEC_IN_C>;
+ codec-1 {
+ sound-dai = <&toacodec TOACODEC_IN_B>;
+ };
+ };
+
@ -660,11 +672,15 @@ index 00000000..53318e9d
+ };
+};
+
+&tdmif_a {
+ status = "okay";
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmif_c {
+&tdmout_a {
+ status = "okay";
+};
+
@ -672,10 +688,6 @@ index 00000000..53318e9d
+ status = "okay";
+};
+
+&tdmout_c {
+ status = "okay";
+};
+
+&toacodec {
+ status = "okay";
+};