- Make some cosmetics in existing device tree files;
- Add the board.
Jan Dakinevich (3):
arch/arm64: dts: ac2xx: make common the sound card
dt-bindings: arm: amlogic: document AC200 support
arch/arm64: dts: ac200: introduce initial support of the board
.../devicetree/bindings/arm/amlogic.yaml | 1 +
.../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
.../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
.../boot/dts/amlogic/meson-sm1-ac200.dts | 22 +++++
.../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
.../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
.../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
.../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
8 files changed, 110 insertions(+), 435 deletions(-)
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dts
--
2.34.1
The declaration of sound card and its dependencies is identical in all
consumers of 'meson-sm1-ac2xx.dtsi'.
Signed-off-by: Jan Dakinevich <[email protected]>
---
.../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
.../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
.../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
.../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
.../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
.../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
6 files changed, 87 insertions(+), 435 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
index 9b2eb6e42651..90ae38c30592 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
@@ -7,73 +7,10 @@
/dts-v1/;
#include "meson-sm1-ac2xx.dtsi"
-#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
/ {
compatible = "cyx,a95xf3-air-gbit", "amlogic,sm1";
model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
-
- sound {
- compatible = "amlogic,axg-sound-card";
- model = "A95XF3-AIR";
- audio-aux-devs = <&tdmout_b>;
- audio-routing = "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";
-
- assigned-clocks = <&clkc CLKID_MPLL2>,
- <&clkc CLKID_MPLL0>,
- <&clkc CLKID_MPLL1>;
- assigned-clock-parents = <0>, <0>, <0>;
- assigned-clock-rates = <294912000>,
- <270950400>,
- <393216000>;
-
- dai-link-0 {
- sound-dai = <&frddr_a>;
- };
-
- dai-link-1 {
- sound-dai = <&frddr_b>;
- };
-
- dai-link-2 {
- sound-dai = <&frddr_c>;
- };
-
- /* 8ch hdmi interface */
- dai-link-3 {
- sound-dai = <&tdmif_b>;
- 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 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
- };
- };
-
- /* hdmi glue */
- dai-link-4 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
-
- codec {
- sound-dai = <&hdmi_tx>;
- };
- };
- };
-};
-
-&arb {
- status = "okay";
-};
-
-&clkc_audio {
- status = "okay";
};
ðmac {
@@ -102,27 +39,3 @@ external_phy: ethernet-phy@0 {
interrupts = <IRQID_GPIOZ_14 IRQ_TYPE_LEVEL_LOW>;
};
};
-
-&frddr_a {
- status = "okay";
-};
-
-&frddr_b {
- status = "okay";
-};
-
-&frddr_c {
- status = "okay";
-};
-
-&tdmif_b {
- status = "okay";
-};
-
-&tdmout_b {
- status = "okay";
-};
-
-&tohdmitx {
- status = "okay";
-};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
index 6e34fd80ed71..c74ce9c246fa 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
@@ -7,73 +7,10 @@
/dts-v1/;
#include "meson-sm1-ac2xx.dtsi"
-#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
/ {
compatible = "cyx,a95xf3-air", "amlogic,sm1";
model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
-
- sound {
- compatible = "amlogic,axg-sound-card";
- model = "A95XF3-AIR";
- audio-aux-devs = <&tdmout_b>;
- audio-routing = "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";
-
- assigned-clocks = <&clkc CLKID_MPLL2>,
- <&clkc CLKID_MPLL0>,
- <&clkc CLKID_MPLL1>;
- assigned-clock-parents = <0>, <0>, <0>;
- assigned-clock-rates = <294912000>,
- <270950400>,
- <393216000>;
-
- dai-link-0 {
- sound-dai = <&frddr_a>;
- };
-
- dai-link-1 {
- sound-dai = <&frddr_b>;
- };
-
- dai-link-2 {
- sound-dai = <&frddr_c>;
- };
-
- /* 8ch hdmi interface */
- dai-link-3 {
- sound-dai = <&tdmif_b>;
- 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 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
- };
- };
-
- /* hdmi glue */
- dai-link-4 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
-
- codec {
- sound-dai = <&hdmi_tx>;
- };
- };
- };
-};
-
-&arb {
- status = "okay";
-};
-
-&clkc_audio {
- status = "okay";
};
ðmac {
@@ -81,27 +18,3 @@ ðmac {
phy-handle = <&internal_ephy>;
phy-mode = "rmii";
};
-
-&frddr_a {
- status = "okay";
-};
-
-&frddr_b {
- status = "okay";
-};
-
-&frddr_c {
- status = "okay";
-};
-
-&tdmif_b {
- status = "okay";
-};
-
-&tdmout_b {
- status = "okay";
-};
-
-&tohdmitx {
- status = "okay";
-};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
index d1fa8b8bf795..7b20a8ff3dfb 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
@@ -12,6 +12,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/gpio/meson-g12a-gpio.h>
#include <dt-bindings/input/input.h>
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
/ {
aliases {
@@ -127,6 +128,60 @@ wifi32k: wifi32k {
clock-frequency = <32768>;
pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
};
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ model = "AC2XX";
+ audio-aux-devs = <&tdmout_b>;
+ audio-routing = "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";
+
+ assigned-clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+
+ dai-link-0 {
+ sound-dai = <&frddr_a>;
+ };
+
+ dai-link-1 {
+ sound-dai = <&frddr_b>;
+ };
+
+ dai-link-2 {
+ sound-dai = <&frddr_c>;
+ };
+
+ /* 8ch hdmi interface */
+ dai-link-3 {
+ sound-dai = <&tdmif_b>;
+ 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 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ /* hdmi glue */
+ dai-link-4 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
+
+ codec {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+ };
};
&cec_AO {
@@ -298,3 +353,35 @@ &usb {
status = "okay";
dr_mode = "otg";
};
+
+&clkc_audio {
+ status = "okay";
+};
+
+&arb {
+ status = "okay";
+};
+
+&frddr_a {
+ status = "okay";
+};
+
+&frddr_b {
+ status = "okay";
+};
+
+&frddr_c {
+ status = "okay";
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmout_b {
+ status = "okay";
+};
+
+&tohdmitx {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
index e6e9410d40cb..a4800488b161 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
@@ -7,73 +7,10 @@
/dts-v1/;
#include "meson-sm1-ac2xx.dtsi"
-#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
/ {
compatible = "haochuangyi,h96-max", "amlogic,sm1";
model = "Shenzhen Haochuangyi Technology Co., Ltd H96 Max";
-
- sound {
- compatible = "amlogic,axg-sound-card";
- model = "H96-MAX";
- audio-aux-devs = <&tdmout_b>;
- audio-routing = "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";
-
- assigned-clocks = <&clkc CLKID_MPLL2>,
- <&clkc CLKID_MPLL0>,
- <&clkc CLKID_MPLL1>;
- assigned-clock-parents = <0>, <0>, <0>;
- assigned-clock-rates = <294912000>,
- <270950400>,
- <393216000>;
-
- dai-link-0 {
- sound-dai = <&frddr_a>;
- };
-
- dai-link-1 {
- sound-dai = <&frddr_b>;
- };
-
- dai-link-2 {
- sound-dai = <&frddr_c>;
- };
-
- /* 8ch hdmi interface */
- dai-link-3 {
- sound-dai = <&tdmif_b>;
- 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 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
- };
- };
-
- /* hdmi glue */
- dai-link-4 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
-
- codec {
- sound-dai = <&hdmi_tx>;
- };
- };
- };
-};
-
-&arb {
- status = "okay";
-};
-
-&clkc_audio {
- status = "okay";
};
ðmac {
@@ -103,30 +40,6 @@ external_phy: ethernet-phy@0 {
};
};
-&frddr_a {
- status = "okay";
-};
-
-&frddr_b {
- status = "okay";
-};
-
-&frddr_c {
- status = "okay";
-};
-
-&tdmif_b {
- status = "okay";
-};
-
-&tdmout_b {
- status = "okay";
-};
-
-&tohdmitx {
- status = "okay";
-};
-
&uart_A {
status = "okay";
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
index fc9b961133cd..dbd8625285b6 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
@@ -7,73 +7,10 @@
/dts-v1/;
#include "meson-sm1-ac2xx.dtsi"
-#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
/ {
compatible = "amediatech,x96-air-gbit", "amlogic,sm1";
model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
-
- sound {
- compatible = "amlogic,axg-sound-card";
- model = "X96-AIR";
- audio-aux-devs = <&tdmout_b>;
- audio-routing = "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";
-
- assigned-clocks = <&clkc CLKID_MPLL2>,
- <&clkc CLKID_MPLL0>,
- <&clkc CLKID_MPLL1>;
- assigned-clock-parents = <0>, <0>, <0>;
- assigned-clock-rates = <294912000>,
- <270950400>,
- <393216000>;
-
- dai-link-0 {
- sound-dai = <&frddr_a>;
- };
-
- dai-link-1 {
- sound-dai = <&frddr_b>;
- };
-
- dai-link-2 {
- sound-dai = <&frddr_c>;
- };
-
- /* 8ch hdmi interface */
- dai-link-3 {
- sound-dai = <&tdmif_b>;
- 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 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
- };
- };
-
- /* hdmi glue */
- dai-link-4 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
-
- codec {
- sound-dai = <&hdmi_tx>;
- };
- };
- };
-};
-
-&arb {
- status = "okay";
-};
-
-&clkc_audio {
- status = "okay";
};
ðmac {
@@ -103,30 +40,6 @@ external_phy: ethernet-phy@0 {
};
};
-&frddr_a {
- status = "okay";
-};
-
-&frddr_b {
- status = "okay";
-};
-
-&frddr_c {
- status = "okay";
-};
-
&ir {
linux,rc-map-name = "rc-x96max";
};
-
-&tdmif_b {
- status = "okay";
-};
-
-&tdmout_b {
- status = "okay";
-};
-
-&tohdmitx {
- status = "okay";
-};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
index 9ea969255b4f..3b2df25ca630 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
@@ -7,73 +7,10 @@
/dts-v1/;
#include "meson-sm1-ac2xx.dtsi"
-#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
/ {
compatible = "amediatech,x96-air", "amlogic,sm1";
model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
-
- sound {
- compatible = "amlogic,axg-sound-card";
- model = "X96-AIR";
- audio-aux-devs = <&tdmout_b>;
- audio-routing = "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";
-
- assigned-clocks = <&clkc CLKID_MPLL2>,
- <&clkc CLKID_MPLL0>,
- <&clkc CLKID_MPLL1>;
- assigned-clock-parents = <0>, <0>, <0>;
- assigned-clock-rates = <294912000>,
- <270950400>,
- <393216000>;
-
- dai-link-0 {
- sound-dai = <&frddr_a>;
- };
-
- dai-link-1 {
- sound-dai = <&frddr_b>;
- };
-
- dai-link-2 {
- sound-dai = <&frddr_c>;
- };
-
- /* 8ch hdmi interface */
- dai-link-3 {
- sound-dai = <&tdmif_b>;
- 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 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
- };
- };
-
- /* hdmi glue */
- dai-link-4 {
- sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
-
- codec {
- sound-dai = <&hdmi_tx>;
- };
- };
- };
-};
-
-&arb {
- status = "okay";
-};
-
-&clkc_audio {
- status = "okay";
};
ðmac {
@@ -81,31 +18,7 @@ ðmac {
phy-handle = <&internal_ephy>;
phy-mode = "rmii";
};
-
-&frddr_a {
- status = "okay";
-};
-
-&frddr_b {
- status = "okay";
-};
-
-&frddr_c {
- status = "okay";
-};
-
&ir {
linux,rc-map-name = "rc-beelink-gs1";
};
-&tdmif_b {
- status = "okay";
-};
-
-&tdmout_b {
- status = "okay";
-};
-
-&tohdmitx {
- status = "okay";
-};
--
2.34.1
On Wed, 22 May 2024 01:21:52 +0300, Jan Dakinevich wrote:
> - Make some cosmetics in existing device tree files;
>
> - Add the board.
>
> Jan Dakinevich (3):
> arch/arm64: dts: ac2xx: make common the sound card
> dt-bindings: arm: amlogic: document AC200 support
> arch/arm64: dts: ac200: introduce initial support of the board
>
> .../devicetree/bindings/arm/amlogic.yaml | 1 +
> .../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
> .../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
> .../boot/dts/amlogic/meson-sm1-ac200.dts | 22 +++++
> .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
> .../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
> .../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
> .../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
> 8 files changed, 110 insertions(+), 435 deletions(-)
> create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dts
>
> --
> 2.34.1
>
>
>
My bot found new DTB warnings on the .dts files added or changed in this
series.
Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.
If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:
pip3 install dtschema --upgrade
New warnings running 'make CHECK_DTBS=y amlogic/meson-sm1-a95xf3-air-gbit.dtb amlogic/meson-sm1-a95xf3-air.dtb amlogic/meson-sm1-ac200.dtb amlogic/meson-sm1-h96-max.dtb amlogic/meson-sm1-x96-air-gbit.dtb amlogic/meson-sm1-x96-air.dtb' for [email protected]:
arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dtb: audio-controller@380: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/clock-controller@0: failed to match any schema with compatible: ['amlogic,sm1-audio-clkc']
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@300: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@340: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@380: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@3c0: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/audio-controller@744: failed to match any schema with compatible: ['amlogic,sm1-tohdmitx', 'amlogic,g12a-tohdmitx']
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/audio-controller@744: failed to match any schema with compatible: ['amlogic,sm1-tohdmitx', 'amlogic,g12a-tohdmitx']
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: sys-ctrl@0: '#address-cells', '#size-cells', 'ranges' do not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:0: 'sclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:1: 'lrclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:2: 'mclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:0: 'sclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:1: 'lrclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:2: 'mclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: Unevaluated properties are not allowed ('clock-names' was unexpected)
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:0: 'sclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:1: 'lrclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:2: 'mclk' was expected
from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: sound: 'anyOf' conditional failed, one must be fixed:
'clocks' is a required property
'#clock-cells' is a required property
from schema $id: http://devicetree.org/schemas/clock/clock.yaml#
On 5/22/24 16:46, Rob Herring (Arm) wrote:
>
> On Wed, 22 May 2024 01:21:52 +0300, Jan Dakinevich wrote:
>> - Make some cosmetics in existing device tree files;
>>
>> - Add the board.
>>
>> Jan Dakinevich (3):
>> arch/arm64: dts: ac2xx: make common the sound card
>> dt-bindings: arm: amlogic: document AC200 support
>> arch/arm64: dts: ac200: introduce initial support of the board
>>
>> .../devicetree/bindings/arm/amlogic.yaml | 1 +
>> .../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
>> .../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
>> .../boot/dts/amlogic/meson-sm1-ac200.dts | 22 +++++
>> .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
>> .../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
>> .../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
>> .../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
>> 8 files changed, 110 insertions(+), 435 deletions(-)
>> create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dts
>>
>> --
>> 2.34.1
>>
>>
>>
>
>
> My bot found new DTB warnings on the .dts files added or changed in this
> series.
>
> Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
> are fixed by another series. Ultimately, it is up to the platform
> maintainer whether these warnings are acceptable or not. No need to reply
> unless the platform maintainer has comments.
>
> If you already ran DT checks and didn't see these error(s), then
> make sure dt-schema is up to date:
>
> pip3 install dtschema --upgrade
>
>
> New warnings running 'make CHECK_DTBS=y amlogic/meson-sm1-a95xf3-air-gbit.dtb amlogic/meson-sm1-a95xf3-air.dtb amlogic/meson-sm1-ac200.dtb amlogic/meson-sm1-h96-max.dtb amlogic/meson-sm1-x96-air-gbit.dtb amlogic/meson-sm1-x96-air.dtb' for [email protected]:
>
> arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dtb: audio-controller@380: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/clock-controller@0: failed to match any schema with compatible: ['amlogic,sm1-audio-clkc']
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@300: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@340: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@380: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@3c0: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/audio-controller@744: failed to match any schema with compatible: ['amlogic,sm1-tohdmitx', 'amlogic,g12a-tohdmitx']
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/audio-controller@744: failed to match any schema with compatible: ['amlogic,sm1-tohdmitx', 'amlogic,g12a-tohdmitx']
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: sys-ctrl@0: '#address-cells', '#size-cells', 'ranges' do not match any of the regexes: 'pinctrl-[0-9]+'
> from schema $id: http://devicetree.org/schemas/soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:0: 'sclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:1: 'lrclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:2: 'mclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:0: 'sclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:1: 'lrclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:2: 'mclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: Unevaluated properties are not allowed ('clock-names' was unexpected)
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:0: 'sclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:1: 'lrclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:2: 'mclk' was expected
> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: sound: 'anyOf' conditional failed, one must be fixed:
> 'clocks' is a required property
> '#clock-cells' is a required property
> from schema $id: http://devicetree.org/schemas/clock/clock.yaml#
>
>
>
>
>
These errors were here before my modifications, and they require extra
efforts to rework generic 'meson-sm1.dtsi' etc. But it is not the goal
of this series. Should I do anything about this right now?
--
Best regards
Jan Dakinevich
On 22/05/2024 19:40, Jan Dakinevich wrote:
> On 5/22/24 16:46, Rob Herring (Arm) wrote:
>>
>> On Wed, 22 May 2024 01:21:52 +0300, Jan Dakinevich wrote:
>>> - Make some cosmetics in existing device tree files;
>>>
>>> - Add the board.
>>>
>>> Jan Dakinevich (3):
>>> arch/arm64: dts: ac2xx: make common the sound card
>>> dt-bindings: arm: amlogic: document AC200 support
>>> arch/arm64: dts: ac200: introduce initial support of the board
>>>
>>> .../devicetree/bindings/arm/amlogic.yaml | 1 +
>>> .../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
>>> .../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
>>> .../boot/dts/amlogic/meson-sm1-ac200.dts | 22 +++++
>>> .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
>>> .../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
>>> .../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
>>> .../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
>>> 8 files changed, 110 insertions(+), 435 deletions(-)
>>> create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dts
>>>
>>> --
>>> 2.34.1
>>>
>>>
>>>
>>
>>
>> My bot found new DTB warnings on the .dts files added or changed in this
>> series.
>>
>> Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
>> are fixed by another series. Ultimately, it is up to the platform
>> maintainer whether these warnings are acceptable or not. No need to reply
>> unless the platform maintainer has comments.
>>
>> If you already ran DT checks and didn't see these error(s), then
>> make sure dt-schema is up to date:
>>
>> pip3 install dtschema --upgrade
>>
>>
>> New warnings running 'make CHECK_DTBS=y amlogic/meson-sm1-a95xf3-air-gbit.dtb amlogic/meson-sm1-a95xf3-air.dtb amlogic/meson-sm1-ac200.dtb amlogic/meson-sm1-h96-max.dtb amlogic/meson-sm1-x96-air-gbit.dtb amlogic/meson-sm1-x96-air.dtb' for [email protected]:
>>
>> arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dtb: audio-controller@380: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/clock-controller@0: failed to match any schema with compatible: ['amlogic,sm1-audio-clkc']
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@300: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@340: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@380: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller@3c0: compatible: ['amlogic,sm1-tdmin', 'amlogic,axg-tdmin'] is too long
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/audio-controller@744: failed to match any schema with compatible: ['amlogic,sm1-tohdmitx', 'amlogic,g12a-tohdmitx']
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: /soc/bus@ff600000/bus@60000/audio-controller@744: failed to match any schema with compatible: ['amlogic,sm1-tohdmitx', 'amlogic,g12a-tohdmitx']
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: sys-ctrl@0: '#address-cells', '#size-cells', 'ranges' do not match any of the regexes: 'pinctrl-[0-9]+'
>> from schema $id: http://devicetree.org/schemas/soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:0: 'sclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:1: 'lrclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-0: clock-names:2: 'mclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:0: 'sclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:1: 'lrclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: clock-names:2: 'mclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-1: Unevaluated properties are not allowed ('clock-names' was unexpected)
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:0: 'sclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:1: 'lrclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: audio-controller-2: clock-names:2: 'mclk' was expected
>> from schema $id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-iface.yaml#
>> arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dtb: sound: 'anyOf' conditional failed, one must be fixed:
>> 'clocks' is a required property
>> '#clock-cells' is a required property
>> from schema $id: http://devicetree.org/schemas/clock/clock.yaml#
>>
>>
>>
>>
>>
>
> These errors were here before my modifications, and they require extra
> efforts to rework generic 'meson-sm1.dtsi' etc. But it is not the goal
> of this series. Should I do anything about this right now?
No just make sure you don't introduce new errors.
Thanks,
Neil
>
On 22/05/2024 00:21, Jan Dakinevich wrote:
> The declaration of sound card and its dependencies is identical in all
> consumers of 'meson-sm1-ac2xx.dtsi'.
>
> Signed-off-by: Jan Dakinevich <[email protected]>
> ---
> .../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
> .../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
> .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
> .../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
> .../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
> .../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
> 6 files changed, 87 insertions(+), 435 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
> index 9b2eb6e42651..90ae38c30592 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
> @@ -7,73 +7,10 @@
> /dts-v1/;
>
> #include "meson-sm1-ac2xx.dtsi"
> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>
> / {
> compatible = "cyx,a95xf3-air-gbit", "amlogic,sm1";
> model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
> -
> - sound {
> - compatible = "amlogic,axg-sound-card";
> - model = "A95XF3-AIR";
model should be board-specific, as for sound node because dev board
variants can be different, so I don't thing moving sound to a common
dtsi is a good thing.
> - audio-aux-devs = <&tdmout_b>;
> - audio-routing = "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";
> -
> - assigned-clocks = <&clkc CLKID_MPLL2>,
> - <&clkc CLKID_MPLL0>,
> - <&clkc CLKID_MPLL1>;
> - assigned-clock-parents = <0>, <0>, <0>;
> - assigned-clock-rates = <294912000>,
> - <270950400>,
> - <393216000>;
> -
> - dai-link-0 {
> - sound-dai = <&frddr_a>;
> - };
> -
> - dai-link-1 {
> - sound-dai = <&frddr_b>;
> - };
> -
> - dai-link-2 {
> - sound-dai = <&frddr_c>;
> - };
> -
> - /* 8ch hdmi interface */
> - dai-link-3 {
> - sound-dai = <&tdmif_b>;
> - 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 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
> - };
> - };
> -
> - /* hdmi glue */
> - dai-link-4 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
> -
> - codec {
> - sound-dai = <&hdmi_tx>;
> - };
> - };
> - };
> -};
> -
> -&arb {
> - status = "okay";
> -};
> -
> -&clkc_audio {
> - status = "okay";
> };
>
> ðmac {
> @@ -102,27 +39,3 @@ external_phy: ethernet-phy@0 {
> interrupts = <IRQID_GPIOZ_14 IRQ_TYPE_LEVEL_LOW>;
> };
> };
> -
> -&frddr_a {
> - status = "okay";
> -};
> -
> -&frddr_b {
> - status = "okay";
> -};
> -
> -&frddr_c {
> - status = "okay";
> -};
> -
> -&tdmif_b {
> - status = "okay";
> -};
> -
> -&tdmout_b {
> - status = "okay";
> -};
> -
> -&tohdmitx {
> - status = "okay";
> -};
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
> index 6e34fd80ed71..c74ce9c246fa 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
> @@ -7,73 +7,10 @@
> /dts-v1/;
>
> #include "meson-sm1-ac2xx.dtsi"
> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>
> / {
> compatible = "cyx,a95xf3-air", "amlogic,sm1";
> model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
> -
> - sound {
> - compatible = "amlogic,axg-sound-card";
> - model = "A95XF3-AIR";
> - audio-aux-devs = <&tdmout_b>;
> - audio-routing = "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";
> -
> - assigned-clocks = <&clkc CLKID_MPLL2>,
> - <&clkc CLKID_MPLL0>,
> - <&clkc CLKID_MPLL1>;
> - assigned-clock-parents = <0>, <0>, <0>;
> - assigned-clock-rates = <294912000>,
> - <270950400>,
> - <393216000>;
> -
> - dai-link-0 {
> - sound-dai = <&frddr_a>;
> - };
> -
> - dai-link-1 {
> - sound-dai = <&frddr_b>;
> - };
> -
> - dai-link-2 {
> - sound-dai = <&frddr_c>;
> - };
> -
> - /* 8ch hdmi interface */
> - dai-link-3 {
> - sound-dai = <&tdmif_b>;
> - 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 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
> - };
> - };
> -
> - /* hdmi glue */
> - dai-link-4 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
> -
> - codec {
> - sound-dai = <&hdmi_tx>;
> - };
> - };
> - };
> -};
> -
> -&arb {
> - status = "okay";
> -};
> -
> -&clkc_audio {
> - status = "okay";
> };
>
> ðmac {
> @@ -81,27 +18,3 @@ ðmac {
> phy-handle = <&internal_ephy>;
> phy-mode = "rmii";
> };
> -
> -&frddr_a {
> - status = "okay";
> -};
> -
> -&frddr_b {
> - status = "okay";
> -};
> -
> -&frddr_c {
> - status = "okay";
> -};
> -
> -&tdmif_b {
> - status = "okay";
> -};
> -
> -&tdmout_b {
> - status = "okay";
> -};
> -
> -&tohdmitx {
> - status = "okay";
> -};
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
> index d1fa8b8bf795..7b20a8ff3dfb 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
> @@ -12,6 +12,7 @@
> #include <dt-bindings/gpio/gpio.h>
> #include <dt-bindings/gpio/meson-g12a-gpio.h>
> #include <dt-bindings/input/input.h>
> +#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>
> / {
> aliases {
> @@ -127,6 +128,60 @@ wifi32k: wifi32k {
> clock-frequency = <32768>;
> pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
> };
> +
> + sound {
> + compatible = "amlogic,axg-sound-card";
> + model = "AC2XX";
> + audio-aux-devs = <&tdmout_b>;
> + audio-routing = "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";
> +
> + assigned-clocks = <&clkc CLKID_MPLL2>,
> + <&clkc CLKID_MPLL0>,
> + <&clkc CLKID_MPLL1>;
> + assigned-clock-parents = <0>, <0>, <0>;
> + assigned-clock-rates = <294912000>,
> + <270950400>,
> + <393216000>;
> +
> + dai-link-0 {
> + sound-dai = <&frddr_a>;
> + };
> +
> + dai-link-1 {
> + sound-dai = <&frddr_b>;
> + };
> +
> + dai-link-2 {
> + sound-dai = <&frddr_c>;
> + };
> +
> + /* 8ch hdmi interface */
> + dai-link-3 {
> + sound-dai = <&tdmif_b>;
> + 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 {
> + sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
> + };
> + };
> +
> + /* hdmi glue */
> + dai-link-4 {
> + sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
> +
> + codec {
> + sound-dai = <&hdmi_tx>;
> + };
> + };
> + };
> };
>
> &cec_AO {
> @@ -298,3 +353,35 @@ &usb {
> status = "okay";
> dr_mode = "otg";
> };
> +
> +&clkc_audio {
> + status = "okay";
> +};
> +
> +&arb {
> + status = "okay";
> +};
> +
> +&frddr_a {
> + status = "okay";
> +};
> +
> +&frddr_b {
> + status = "okay";
> +};
> +
> +&frddr_c {
> + status = "okay";
> +};
> +
> +&tdmif_b {
> + status = "okay";
> +};
> +
> +&tdmout_b {
> + status = "okay";
> +};
> +
> +&tohdmitx {
> + status = "okay";
> +};
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
> index e6e9410d40cb..a4800488b161 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
> @@ -7,73 +7,10 @@
> /dts-v1/;
>
> #include "meson-sm1-ac2xx.dtsi"
> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>
> / {
> compatible = "haochuangyi,h96-max", "amlogic,sm1";
> model = "Shenzhen Haochuangyi Technology Co., Ltd H96 Max";
> -
> - sound {
> - compatible = "amlogic,axg-sound-card";
> - model = "H96-MAX";
> - audio-aux-devs = <&tdmout_b>;
> - audio-routing = "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";
> -
> - assigned-clocks = <&clkc CLKID_MPLL2>,
> - <&clkc CLKID_MPLL0>,
> - <&clkc CLKID_MPLL1>;
> - assigned-clock-parents = <0>, <0>, <0>;
> - assigned-clock-rates = <294912000>,
> - <270950400>,
> - <393216000>;
> -
> - dai-link-0 {
> - sound-dai = <&frddr_a>;
> - };
> -
> - dai-link-1 {
> - sound-dai = <&frddr_b>;
> - };
> -
> - dai-link-2 {
> - sound-dai = <&frddr_c>;
> - };
> -
> - /* 8ch hdmi interface */
> - dai-link-3 {
> - sound-dai = <&tdmif_b>;
> - 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 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
> - };
> - };
> -
> - /* hdmi glue */
> - dai-link-4 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
> -
> - codec {
> - sound-dai = <&hdmi_tx>;
> - };
> - };
> - };
> -};
> -
> -&arb {
> - status = "okay";
> -};
> -
> -&clkc_audio {
> - status = "okay";
> };
>
> ðmac {
> @@ -103,30 +40,6 @@ external_phy: ethernet-phy@0 {
> };
> };
>
> -&frddr_a {
> - status = "okay";
> -};
> -
> -&frddr_b {
> - status = "okay";
> -};
> -
> -&frddr_c {
> - status = "okay";
> -};
> -
> -&tdmif_b {
> - status = "okay";
> -};
> -
> -&tdmout_b {
> - status = "okay";
> -};
> -
> -&tohdmitx {
> - status = "okay";
> -};
> -
> &uart_A {
> status = "okay";
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
> index fc9b961133cd..dbd8625285b6 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
> @@ -7,73 +7,10 @@
> /dts-v1/;
>
> #include "meson-sm1-ac2xx.dtsi"
> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>
> / {
> compatible = "amediatech,x96-air-gbit", "amlogic,sm1";
> model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
> -
> - sound {
> - compatible = "amlogic,axg-sound-card";
> - model = "X96-AIR";
> - audio-aux-devs = <&tdmout_b>;
> - audio-routing = "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";
> -
> - assigned-clocks = <&clkc CLKID_MPLL2>,
> - <&clkc CLKID_MPLL0>,
> - <&clkc CLKID_MPLL1>;
> - assigned-clock-parents = <0>, <0>, <0>;
> - assigned-clock-rates = <294912000>,
> - <270950400>,
> - <393216000>;
> -
> - dai-link-0 {
> - sound-dai = <&frddr_a>;
> - };
> -
> - dai-link-1 {
> - sound-dai = <&frddr_b>;
> - };
> -
> - dai-link-2 {
> - sound-dai = <&frddr_c>;
> - };
> -
> - /* 8ch hdmi interface */
> - dai-link-3 {
> - sound-dai = <&tdmif_b>;
> - 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 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
> - };
> - };
> -
> - /* hdmi glue */
> - dai-link-4 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
> -
> - codec {
> - sound-dai = <&hdmi_tx>;
> - };
> - };
> - };
> -};
> -
> -&arb {
> - status = "okay";
> -};
> -
> -&clkc_audio {
> - status = "okay";
> };
>
> ðmac {
> @@ -103,30 +40,6 @@ external_phy: ethernet-phy@0 {
> };
> };
>
> -&frddr_a {
> - status = "okay";
> -};
> -
> -&frddr_b {
> - status = "okay";
> -};
> -
> -&frddr_c {
> - status = "okay";
> -};
> -
> &ir {
> linux,rc-map-name = "rc-x96max";
> };
> -
> -&tdmif_b {
> - status = "okay";
> -};
> -
> -&tdmout_b {
> - status = "okay";
> -};
> -
> -&tohdmitx {
> - status = "okay";
> -};
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
> index 9ea969255b4f..3b2df25ca630 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
> @@ -7,73 +7,10 @@
> /dts-v1/;
>
> #include "meson-sm1-ac2xx.dtsi"
> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>
> / {
> compatible = "amediatech,x96-air", "amlogic,sm1";
> model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
> -
> - sound {
> - compatible = "amlogic,axg-sound-card";
> - model = "X96-AIR";
> - audio-aux-devs = <&tdmout_b>;
> - audio-routing = "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";
> -
> - assigned-clocks = <&clkc CLKID_MPLL2>,
> - <&clkc CLKID_MPLL0>,
> - <&clkc CLKID_MPLL1>;
> - assigned-clock-parents = <0>, <0>, <0>;
> - assigned-clock-rates = <294912000>,
> - <270950400>,
> - <393216000>;
> -
> - dai-link-0 {
> - sound-dai = <&frddr_a>;
> - };
> -
> - dai-link-1 {
> - sound-dai = <&frddr_b>;
> - };
> -
> - dai-link-2 {
> - sound-dai = <&frddr_c>;
> - };
> -
> - /* 8ch hdmi interface */
> - dai-link-3 {
> - sound-dai = <&tdmif_b>;
> - 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 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
> - };
> - };
> -
> - /* hdmi glue */
> - dai-link-4 {
> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
> -
> - codec {
> - sound-dai = <&hdmi_tx>;
> - };
> - };
> - };
> -};
> -
> -&arb {
> - status = "okay";
> -};
> -
> -&clkc_audio {
> - status = "okay";
> };
>
> ðmac {
> @@ -81,31 +18,7 @@ ðmac {
> phy-handle = <&internal_ephy>;
> phy-mode = "rmii";
> };
> -
> -&frddr_a {
> - status = "okay";
> -};
> -
> -&frddr_b {
> - status = "okay";
> -};
> -
> -&frddr_c {
> - status = "okay";
> -};
> -
> &ir {
> linux,rc-map-name = "rc-beelink-gs1";
> };
>
> -&tdmif_b {
> - status = "okay";
> -};
> -
> -&tdmout_b {
> - status = "okay";
> -};
> -
> -&tohdmitx {
> - status = "okay";
> -};
On 5/23/24 10:36, Neil Armstrong wrote:
> On 22/05/2024 00:21, Jan Dakinevich wrote:
>> The declaration of sound card and its dependencies is identical in all
>> consumers of 'meson-sm1-ac2xx.dtsi'.
>>
>> Signed-off-by: Jan Dakinevich <[email protected]>
>> ---
>> .../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 87 -------------------
>> .../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 87 -------------------
>> .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 87 +++++++++++++++++++
>> .../boot/dts/amlogic/meson-sm1-h96-max.dts | 87 -------------------
>> .../dts/amlogic/meson-sm1-x96-air-gbit.dts | 87 -------------------
>> .../boot/dts/amlogic/meson-sm1-x96-air.dts | 87 -------------------
>> 6 files changed, 87 insertions(+), 435 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
>> b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
>> index 9b2eb6e42651..90ae38c30592 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
>> @@ -7,73 +7,10 @@
>> /dts-v1/;
>> #include "meson-sm1-ac2xx.dtsi"
>> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>> / {
>> compatible = "cyx,a95xf3-air-gbit", "amlogic,sm1";
>> model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
>> -
>> - sound {
>> - compatible = "amlogic,axg-sound-card";
>> - model = "A95XF3-AIR";
>
> model should be board-specific, as for sound node because dev board
> variants can be different, so I don't thing moving sound to a common
> dtsi is a good thing.
>
Ok, I can redefine the model for each board.
>> - audio-aux-devs = <&tdmout_b>;
>> - audio-routing = "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";
>> -
>> - assigned-clocks = <&clkc CLKID_MPLL2>,
>> - <&clkc CLKID_MPLL0>,
>> - <&clkc CLKID_MPLL1>;
>> - assigned-clock-parents = <0>, <0>, <0>;
>> - assigned-clock-rates = <294912000>,
>> - <270950400>,
>> - <393216000>;
>> -
>> - dai-link-0 {
>> - sound-dai = <&frddr_a>;
>> - };
>> -
>> - dai-link-1 {
>> - sound-dai = <&frddr_b>;
>> - };
>> -
>> - dai-link-2 {
>> - sound-dai = <&frddr_c>;
>> - };
>> -
>> - /* 8ch hdmi interface */
>> - dai-link-3 {
>> - sound-dai = <&tdmif_b>;
>> - 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 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
>> - };
>> - };
>> -
>> - /* hdmi glue */
>> - dai-link-4 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
>> -
>> - codec {
>> - sound-dai = <&hdmi_tx>;
>> - };
>> - };
>> - };
>> -};
>> -
>> -&arb {
>> - status = "okay";
>> -};
>> -
>> -&clkc_audio {
>> - status = "okay";
>> };
>> ðmac {
>> @@ -102,27 +39,3 @@ external_phy: ethernet-phy@0 {
>> interrupts = <IRQID_GPIOZ_14 IRQ_TYPE_LEVEL_LOW>;
>> };
>> };
>> -
>> -&frddr_a {
>> - status = "okay";
>> -};
>> -
>> -&frddr_b {
>> - status = "okay";
>> -};
>> -
>> -&frddr_c {
>> - status = "okay";
>> -};
>> -
>> -&tdmif_b {
>> - status = "okay";
>> -};
>> -
>> -&tdmout_b {
>> - status = "okay";
>> -};
>> -
>> -&tohdmitx {
>> - status = "okay";
>> -};
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
>> b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
>> index 6e34fd80ed71..c74ce9c246fa 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
>> @@ -7,73 +7,10 @@
>> /dts-v1/;
>> #include "meson-sm1-ac2xx.dtsi"
>> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>> / {
>> compatible = "cyx,a95xf3-air", "amlogic,sm1";
>> model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
>> -
>> - sound {
>> - compatible = "amlogic,axg-sound-card";
>> - model = "A95XF3-AIR";
>> - audio-aux-devs = <&tdmout_b>;
>> - audio-routing = "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";
>> -
>> - assigned-clocks = <&clkc CLKID_MPLL2>,
>> - <&clkc CLKID_MPLL0>,
>> - <&clkc CLKID_MPLL1>;
>> - assigned-clock-parents = <0>, <0>, <0>;
>> - assigned-clock-rates = <294912000>,
>> - <270950400>,
>> - <393216000>;
>> -
>> - dai-link-0 {
>> - sound-dai = <&frddr_a>;
>> - };
>> -
>> - dai-link-1 {
>> - sound-dai = <&frddr_b>;
>> - };
>> -
>> - dai-link-2 {
>> - sound-dai = <&frddr_c>;
>> - };
>> -
>> - /* 8ch hdmi interface */
>> - dai-link-3 {
>> - sound-dai = <&tdmif_b>;
>> - 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 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
>> - };
>> - };
>> -
>> - /* hdmi glue */
>> - dai-link-4 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
>> -
>> - codec {
>> - sound-dai = <&hdmi_tx>;
>> - };
>> - };
>> - };
>> -};
>> -
>> -&arb {
>> - status = "okay";
>> -};
>> -
>> -&clkc_audio {
>> - status = "okay";
>> };
>> ðmac {
>> @@ -81,27 +18,3 @@ ðmac {
>> phy-handle = <&internal_ephy>;
>> phy-mode = "rmii";
>> };
>> -
>> -&frddr_a {
>> - status = "okay";
>> -};
>> -
>> -&frddr_b {
>> - status = "okay";
>> -};
>> -
>> -&frddr_c {
>> - status = "okay";
>> -};
>> -
>> -&tdmif_b {
>> - status = "okay";
>> -};
>> -
>> -&tdmout_b {
>> - status = "okay";
>> -};
>> -
>> -&tohdmitx {
>> - status = "okay";
>> -};
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
>> b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
>> index d1fa8b8bf795..7b20a8ff3dfb 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
>> @@ -12,6 +12,7 @@
>> #include <dt-bindings/gpio/gpio.h>
>> #include <dt-bindings/gpio/meson-g12a-gpio.h>
>> #include <dt-bindings/input/input.h>
>> +#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>> / {
>> aliases {
>> @@ -127,6 +128,60 @@ wifi32k: wifi32k {
>> clock-frequency = <32768>;
>> pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
>> };
>> +
>> + sound {
>> + compatible = "amlogic,axg-sound-card";
>> + model = "AC2XX";
>> + audio-aux-devs = <&tdmout_b>;
>> + audio-routing = "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";
>> +
>> + assigned-clocks = <&clkc CLKID_MPLL2>,
>> + <&clkc CLKID_MPLL0>,
>> + <&clkc CLKID_MPLL1>;
>> + assigned-clock-parents = <0>, <0>, <0>;
>> + assigned-clock-rates = <294912000>,
>> + <270950400>,
>> + <393216000>;
>> +
>> + dai-link-0 {
>> + sound-dai = <&frddr_a>;
>> + };
>> +
>> + dai-link-1 {
>> + sound-dai = <&frddr_b>;
>> + };
>> +
>> + dai-link-2 {
>> + sound-dai = <&frddr_c>;
>> + };
>> +
>> + /* 8ch hdmi interface */
>> + dai-link-3 {
>> + sound-dai = <&tdmif_b>;
>> + 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 {
>> + sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
>> + };
>> + };
>> +
>> + /* hdmi glue */
>> + dai-link-4 {
>> + sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
>> +
>> + codec {
>> + sound-dai = <&hdmi_tx>;
>> + };
>> + };
>> + };
>> };
>> &cec_AO {
>> @@ -298,3 +353,35 @@ &usb {
>> status = "okay";
>> dr_mode = "otg";
>> };
>> +
>> +&clkc_audio {
>> + status = "okay";
>> +};
>> +
>> +&arb {
>> + status = "okay";
>> +};
>> +
>> +&frddr_a {
>> + status = "okay";
>> +};
>> +
>> +&frddr_b {
>> + status = "okay";
>> +};
>> +
>> +&frddr_c {
>> + status = "okay";
>> +};
>> +
>> +&tdmif_b {
>> + status = "okay";
>> +};
>> +
>> +&tdmout_b {
>> + status = "okay";
>> +};
>> +
>> +&tohdmitx {
>> + status = "okay";
>> +};
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
>> b/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
>> index e6e9410d40cb..a4800488b161 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
>> @@ -7,73 +7,10 @@
>> /dts-v1/;
>> #include "meson-sm1-ac2xx.dtsi"
>> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>> / {
>> compatible = "haochuangyi,h96-max", "amlogic,sm1";
>> model = "Shenzhen Haochuangyi Technology Co., Ltd H96 Max";
>> -
>> - sound {
>> - compatible = "amlogic,axg-sound-card";
>> - model = "H96-MAX";
>> - audio-aux-devs = <&tdmout_b>;
>> - audio-routing = "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";
>> -
>> - assigned-clocks = <&clkc CLKID_MPLL2>,
>> - <&clkc CLKID_MPLL0>,
>> - <&clkc CLKID_MPLL1>;
>> - assigned-clock-parents = <0>, <0>, <0>;
>> - assigned-clock-rates = <294912000>,
>> - <270950400>,
>> - <393216000>;
>> -
>> - dai-link-0 {
>> - sound-dai = <&frddr_a>;
>> - };
>> -
>> - dai-link-1 {
>> - sound-dai = <&frddr_b>;
>> - };
>> -
>> - dai-link-2 {
>> - sound-dai = <&frddr_c>;
>> - };
>> -
>> - /* 8ch hdmi interface */
>> - dai-link-3 {
>> - sound-dai = <&tdmif_b>;
>> - 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 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
>> - };
>> - };
>> -
>> - /* hdmi glue */
>> - dai-link-4 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
>> -
>> - codec {
>> - sound-dai = <&hdmi_tx>;
>> - };
>> - };
>> - };
>> -};
>> -
>> -&arb {
>> - status = "okay";
>> -};
>> -
>> -&clkc_audio {
>> - status = "okay";
>> };
>> ðmac {
>> @@ -103,30 +40,6 @@ external_phy: ethernet-phy@0 {
>> };
>> };
>> -&frddr_a {
>> - status = "okay";
>> -};
>> -
>> -&frddr_b {
>> - status = "okay";
>> -};
>> -
>> -&frddr_c {
>> - status = "okay";
>> -};
>> -
>> -&tdmif_b {
>> - status = "okay";
>> -};
>> -
>> -&tdmout_b {
>> - status = "okay";
>> -};
>> -
>> -&tohdmitx {
>> - status = "okay";
>> -};
>> -
>> &uart_A {
>> status = "okay";
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
>> b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
>> index fc9b961133cd..dbd8625285b6 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
>> @@ -7,73 +7,10 @@
>> /dts-v1/;
>> #include "meson-sm1-ac2xx.dtsi"
>> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>> / {
>> compatible = "amediatech,x96-air-gbit", "amlogic,sm1";
>> model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
>> -
>> - sound {
>> - compatible = "amlogic,axg-sound-card";
>> - model = "X96-AIR";
>> - audio-aux-devs = <&tdmout_b>;
>> - audio-routing = "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";
>> -
>> - assigned-clocks = <&clkc CLKID_MPLL2>,
>> - <&clkc CLKID_MPLL0>,
>> - <&clkc CLKID_MPLL1>;
>> - assigned-clock-parents = <0>, <0>, <0>;
>> - assigned-clock-rates = <294912000>,
>> - <270950400>,
>> - <393216000>;
>> -
>> - dai-link-0 {
>> - sound-dai = <&frddr_a>;
>> - };
>> -
>> - dai-link-1 {
>> - sound-dai = <&frddr_b>;
>> - };
>> -
>> - dai-link-2 {
>> - sound-dai = <&frddr_c>;
>> - };
>> -
>> - /* 8ch hdmi interface */
>> - dai-link-3 {
>> - sound-dai = <&tdmif_b>;
>> - 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 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
>> - };
>> - };
>> -
>> - /* hdmi glue */
>> - dai-link-4 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
>> -
>> - codec {
>> - sound-dai = <&hdmi_tx>;
>> - };
>> - };
>> - };
>> -};
>> -
>> -&arb {
>> - status = "okay";
>> -};
>> -
>> -&clkc_audio {
>> - status = "okay";
>> };
>> ðmac {
>> @@ -103,30 +40,6 @@ external_phy: ethernet-phy@0 {
>> };
>> };
>> -&frddr_a {
>> - status = "okay";
>> -};
>> -
>> -&frddr_b {
>> - status = "okay";
>> -};
>> -
>> -&frddr_c {
>> - status = "okay";
>> -};
>> -
>> &ir {
>> linux,rc-map-name = "rc-x96max";
>> };
>> -
>> -&tdmif_b {
>> - status = "okay";
>> -};
>> -
>> -&tdmout_b {
>> - status = "okay";
>> -};
>> -
>> -&tohdmitx {
>> - status = "okay";
>> -};
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
>> b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
>> index 9ea969255b4f..3b2df25ca630 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
>> @@ -7,73 +7,10 @@
>> /dts-v1/;
>> #include "meson-sm1-ac2xx.dtsi"
>> -#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
>> / {
>> compatible = "amediatech,x96-air", "amlogic,sm1";
>> model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
>> -
>> - sound {
>> - compatible = "amlogic,axg-sound-card";
>> - model = "X96-AIR";
>> - audio-aux-devs = <&tdmout_b>;
>> - audio-routing = "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";
>> -
>> - assigned-clocks = <&clkc CLKID_MPLL2>,
>> - <&clkc CLKID_MPLL0>,
>> - <&clkc CLKID_MPLL1>;
>> - assigned-clock-parents = <0>, <0>, <0>;
>> - assigned-clock-rates = <294912000>,
>> - <270950400>,
>> - <393216000>;
>> -
>> - dai-link-0 {
>> - sound-dai = <&frddr_a>;
>> - };
>> -
>> - dai-link-1 {
>> - sound-dai = <&frddr_b>;
>> - };
>> -
>> - dai-link-2 {
>> - sound-dai = <&frddr_c>;
>> - };
>> -
>> - /* 8ch hdmi interface */
>> - dai-link-3 {
>> - sound-dai = <&tdmif_b>;
>> - 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 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
>> - };
>> - };
>> -
>> - /* hdmi glue */
>> - dai-link-4 {
>> - sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
>> -
>> - codec {
>> - sound-dai = <&hdmi_tx>;
>> - };
>> - };
>> - };
>> -};
>> -
>> -&arb {
>> - status = "okay";
>> -};
>> -
>> -&clkc_audio {
>> - status = "okay";
>> };
>> ðmac {
>> @@ -81,31 +18,7 @@ ðmac {
>> phy-handle = <&internal_ephy>;
>> phy-mode = "rmii";
>> };
>> -
>> -&frddr_a {
>> - status = "okay";
>> -};
>> -
>> -&frddr_b {
>> - status = "okay";
>> -};
>> -
>> -&frddr_c {
>> - status = "okay";
>> -};
>> -
>> &ir {
>> linux,rc-map-name = "rc-beelink-gs1";
>> };
>> -&tdmif_b {
>> - status = "okay";
>> -};
>> -
>> -&tdmout_b {
>> - status = "okay";
>> -};
>> -
>> -&tohdmitx {
>> - status = "okay";
>> -};
>
--
Best regards
Jan Dakinevich