]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ASoC: dt-bindings: Convert MT8173 AFE binding to dt-schema
authorChen-Yu Tsai <wenst@chromium.org>
Thu, 12 Jun 2025 07:48:52 +0000 (15:48 +0800)
committerMark Brown <broonie@kernel.org>
Thu, 12 Jun 2025 12:45:30 +0000 (13:45 +0100)
Convert the MT8173 AFE (audio frontend) binding from text to dt-schema
in YAML. "clocks" is added to the list of required properties to match
"clock-names". And the example was slightly fixed up in style. Otherwise
everything is as before.

A contributer and maintainer for a recently added MediaTek audio binding
was chosen instead of the original submitter.

Cc: Trevor Wu <trevor.wu@mediatek.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Link: https://patch.msgid.link/20250612074901.4023253-2-wenst@chromium.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Documentation/devicetree/bindings/sound/mediatek,mt8173-afe-pcm.yaml [new file with mode: 0644]
Documentation/devicetree/bindings/sound/mtk-afe-pcm.txt [deleted file]

diff --git a/Documentation/devicetree/bindings/sound/mediatek,mt8173-afe-pcm.yaml b/Documentation/devicetree/bindings/sound/mediatek,mt8173-afe-pcm.yaml
new file mode 100644 (file)
index 0000000..a95215b
--- /dev/null
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/mediatek,mt8173-afe-pcm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Mediatek AFE PCM controller for MT8173
+
+maintainers:
+  - Trevor Wu <trevor.wu@mediatek.com>
+
+properties:
+  compatible:
+    const: mediatek,mt8173-afe-pcm
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: audio infra sys clock
+      - description: audio top mux
+      - description: audio intbus mux
+      - description: apll1 clock
+      - description: apll2 clock
+      - description: i2s0 mclk mux
+      - description: i2s1 mclk mux
+      - description: i2s2 mclk mux
+      - description: i2s3 mclk mux
+      - description: i2s3 bclk mux
+
+  clock-names:
+    items:
+      - const: infra_sys_audio_clk
+      - const: top_pdn_audio
+      - const: top_pdn_aud_intbus
+      - const: bck0
+      - const: bck1
+      - const: i2s0_m
+      - const: i2s1_m
+      - const: i2s2_m
+      - const: i2s3_m
+      - const: i2s3_b
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - clock-names
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/mt8173-clk.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    mt8173-afe-pcm@11220000 {
+        compatible = "mediatek,mt8173-afe-pcm";
+        reg = <0x11220000 0x1000>;
+        interrupts = <GIC_SPI 134 IRQ_TYPE_EDGE_FALLING>;
+        clocks = <&infracfg CLK_INFRA_AUDIO>,
+                 <&topckgen CLK_TOP_AUDIO_SEL>,
+                 <&topckgen CLK_TOP_AUD_INTBUS_SEL>,
+                 <&topckgen CLK_TOP_APLL1_DIV0>,
+                 <&topckgen CLK_TOP_APLL2_DIV0>,
+                 <&topckgen CLK_TOP_I2S0_M_SEL>,
+                 <&topckgen CLK_TOP_I2S1_M_SEL>,
+                 <&topckgen CLK_TOP_I2S2_M_SEL>,
+                 <&topckgen CLK_TOP_I2S3_M_SEL>,
+                 <&topckgen CLK_TOP_I2S3_B_SEL>;
+         clock-names = "infra_sys_audio_clk",
+                       "top_pdn_audio",
+                       "top_pdn_aud_intbus",
+                       "bck0",
+                       "bck1",
+                       "i2s0_m",
+                       "i2s1_m",
+                       "i2s2_m",
+                       "i2s3_m",
+                       "i2s3_b";
+    };
diff --git a/Documentation/devicetree/bindings/sound/mtk-afe-pcm.txt b/Documentation/devicetree/bindings/sound/mtk-afe-pcm.txt
deleted file mode 100644 (file)
index e302c7f..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-Mediatek AFE PCM controller
-
-Required properties:
-- compatible = "mediatek,mt8173-afe-pcm";
-- reg: register location and size
-- interrupts: Should contain AFE interrupt
-- clock-names: should have these clock names:
-               "infra_sys_audio_clk",
-               "top_pdn_audio",
-               "top_pdn_aud_intbus",
-               "bck0",
-               "bck1",
-               "i2s0_m",
-               "i2s1_m",
-               "i2s2_m",
-               "i2s3_m",
-               "i2s3_b";
-
-Example:
-
-       afe: mt8173-afe-pcm@11220000  {
-               compatible = "mediatek,mt8173-afe-pcm";
-               reg = <0 0x11220000 0 0x1000>;
-               interrupts = <GIC_SPI 134 IRQ_TYPE_EDGE_FALLING>;
-               clocks = <&infracfg INFRA_AUDIO>,
-                       <&topckgen TOP_AUDIO_SEL>,
-                       <&topckgen TOP_AUD_INTBUS_SEL>,
-                       <&topckgen TOP_APLL1_DIV0>,
-                       <&topckgen TOP_APLL2_DIV0>,
-                       <&topckgen TOP_I2S0_M_CK_SEL>,
-                       <&topckgen TOP_I2S1_M_CK_SEL>,
-                       <&topckgen TOP_I2S2_M_CK_SEL>,
-                       <&topckgen TOP_I2S3_M_CK_SEL>,
-                       <&topckgen TOP_I2S3_B_CK_SEL>;
-               clock-names = "infra_sys_audio_clk",
-                               "top_pdn_audio",
-                               "top_pdn_aud_intbus",
-                               "bck0",
-                               "bck1",
-                               "i2s0_m",
-                               "i2s1_m",
-                               "i2s2_m",
-                               "i2s3_m",
-                               "i2s3_b";
-       };