# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/mediatek,mt8189-nau8825.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek MT8189 ASoC sound card

maintainers:
  - Darren Ye <darren.ye@mediatek.com>
  - Cyril Chao <cyril.chao@mediatek.com>

allOf:
  - $ref: sound-card-common.yaml#

properties:
  compatible:
    enum:
      - mediatek,mt8189-nau8825
      - mediatek,mt8189-rt5650
      - mediatek,mt8189-rt5682s
      - mediatek,mt8189-rt5682i
      - mediatek,mt8189-es8326

  mediatek,platform:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: The phandle of MT8189 ASoC platform.

patternProperties:
  "^dai-link-[0-9]+$":
    type: object
    description:
      Container for dai-link level properties and CODEC sub-nodes.

    properties:
      link-name:
        description:
          This property corresponds to the name of the BE dai-link to which
          we are going to update parameters in this node.
        enum:
          - TDM_DPTX_BE
          - I2SOUT0_BE
          - I2SIN0_BE
          - I2SOUT1_BE

      codec:
        description: Holds subnode which indicates codec dai.
        type: object
        additionalProperties: false

        properties:
          sound-dai:
            minItems: 1
            maxItems: 2
        required:
          - sound-dai

      dai-format:
        description: audio format.
        enum:
          - i2s
          - right_j
          - left_j
          - dsp_a
          - dsp_b

      mediatek,clk-provider:
        $ref: /schemas/types.yaml#/definitions/string
        description: Indicates dai-link clock master.
        enum:
          - cpu
          - codec

    additionalProperties: false

    required:
      - link-name

required:
  - compatible
  - mediatek,platform

unevaluatedProperties: false

examples:
  - |
    sound {
        compatible = "mediatek,mt8189-nau8825";
        model = "mt8189_rt9123_8825";
        mediatek,platform = <&afe>;
        dai-link-0 {
            link-name = "I2SOUT1_BE";
            dai-format = "i2s";
            mediatek,clk-provider = "cpu";
            codec {
                sound-dai = <&nau8825>;
            };
        };
    };

...
