On Wed, Aug 20, 2025 at 02:12:53PM -0300, Ariel D'Alessandro wrote:
> Convert the existing text-based DT bindings for Mediatek MT8173 RT5650
> codecs to a YAML schema.
>
> Signed-off-by: Ariel D'Alessandro <ariel.dalessandro@collabora.com>
> ---
> .../sound/mediatek,mt8173-rt5650.yaml | 73 +++++++++++++++++++
> .../bindings/sound/mt8173-rt5650.txt | 31 --------
> 2 files changed, 73 insertions(+), 31 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/sound/mediatek,mt8173-rt5650.yaml
> delete mode 100644 Documentation/devicetree/bindings/sound/mt8173-rt5650.txt
>
> diff --git a/Documentation/devicetree/bindings/sound/mediatek,mt8173-rt5650.yaml b/Documentation/devicetree/bindings/sound/mediatek,mt8173-rt5650.yaml
> new file mode 100644
> index 0000000000000..36e4f9c4c3d62
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/mediatek,mt8173-rt5650.yaml
> @@ -0,0 +1,73 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/mediatek,mt8173-rt5650.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Mediatek MT8173 with RT5650 codecs and HDMI via I2S
> +
> +maintainers:
> + - Ariel D'Alessandro <ariel.dalessandro@collabora.com>
> +
> +properties:
> + compatible:
> + const: "mediatek,mt8173-rt5650"
Drop quotes.
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + mediatek,audio-codec:
> + $ref: /schemas/types.yaml#/definitions/phandle-array
> + description:
> + The phandles of rt5650 codecs and of the HDMI encoder node.
> + minItems: 2
> +
> + mediatek,platform:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + The phandle of MT8173 ASoC platform.
> +
> + mediatek,mclk:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: |
> + The MCLK source.
> + 0: external oscillator, MCLK = 12.288M
> + 1: internal source from mt8173, MCLK = sampling rate * 256
> +
> + codec-capture:
> + description: Subnode of rt5650 codec capture.
> + type: object
> +
> + properties:
> + sound-dai:
> + maxItems: 1
> + description: phandle of the CPU DAI
> +
> + additionalProperties: false
> +
> +required:
> + - compatible
> + - mediatek,audio-codec
> + - mediatek,platform
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + sound: sound {
Drop unused label.
> + compatible = "mediatek,mt8173-rt5650";
> + mediatek,audio-codec = <&rt5650 &hdmi0>;
> + mediatek,platform = <&afe>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&aud_i2s2>;
> +
> + mediatek,mclk = <1>;
> + codec-capture {
> + sound-dai = <&rt5650 1>;
> + };
> + };
> +
> +...
> diff --git a/Documentation/devicetree/bindings/sound/mt8173-rt5650.txt b/Documentation/devicetree/bindings/sound/mt8173-rt5650.txt
> deleted file mode 100644
> index 29dce2ac8773a..0000000000000
> --- a/Documentation/devicetree/bindings/sound/mt8173-rt5650.txt
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -MT8173 with RT5650 CODECS and HDMI via I2S
> -
> -Required properties:
> -- compatible : "mediatek,mt8173-rt5650"
> -- mediatek,audio-codec: the phandles of rt5650 codecs
> - and of the hdmi encoder node
> -- mediatek,platform: the phandle of MT8173 ASoC platform
> -
> -Optional subnodes:
> -- codec-capture : the subnode of rt5650 codec capture
> -Required codec-capture subnode properties:
> -- sound-dai: audio codec dai name on capture path
> - <&rt5650 0> : Default setting. Connect rt5650 I2S1 for capture. (dai_name = rt5645-aif1)
> - <&rt5650 1> : Connect rt5650 I2S2 for capture. (dai_name = rt5645-aif2)
> -
> -- mediatek,mclk: the MCLK source
> - 0 : external oscillator, MCLK = 12.288M
> - 1 : internal source from mt8173, MCLK = sampling rate*256
> -
> -Example:
> -
> - sound {
> - compatible = "mediatek,mt8173-rt5650";
> - mediatek,audio-codec = <&rt5650 &hdmi0>;
> - mediatek,platform = <&afe>;
> - mediatek,mclk = <0>;
> - codec-capture {
> - sound-dai = <&rt5650 1>;
> - };
> - };
> -
> --
> 2.50.1
>