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

View File

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

View File

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