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

title: MediaTek Audio Front End (AFE) PCM controller for mt2701

description:
  The AFE PCM node must be a subnode of the MediaTek audsys device tree node.

maintainers:
  - Eugen Hristev <eugen.hristev@collabora.com>

properties:
  compatible:
    enum:
      - mediatek,mt2701-audio
      - mediatek,mt7622-audio

  interrupts:
    items:
      - description: AFE interrupt
      - description: ASYS interrupt

  interrupt-names:
    items:
      - const: afe
      - const: asys

  power-domains:
    maxItems: 1

  clocks:
    items:
      - description: audio infra sys clock
      - description: top audio mux 1
      - description: top audio mux 2
      - description: top audio sys a1 clock
      - description: top audio sys a2 clock
      - description: i2s0 source selection
      - description: i2s1 source selection
      - description: i2s2 source selection
      - description: i2s3 source selection
      - description: i2s0 source divider
      - description: i2s1 source divider
      - description: i2s2 source divider
      - description: i2s3 source divider
      - description: i2s0 master clock
      - description: i2s1 master clock
      - description: i2s2 master clock
      - description: i2s3 master clock
      - description: i2so0 hopping clock
      - description: i2so1 hopping clock
      - description: i2so2 hopping clock
      - description: i2so3 hopping clock
      - description: i2si0 hopping clock
      - description: i2si1 hopping clock
      - description: i2si2 hopping clock
      - description: i2si3 hopping clock
      - description: asrc0 output clock
      - description: asrc1 output clock
      - description: asrc2 output clock
      - description: asrc3 output clock
      - description: audio front end pd clock
      - description: audio front end conn pd clock
      - description: top audio a1 sys pd
      - description: top audio a2 sys pd
      - description: audio merge interface pd

  clock-names:
    items:
      - const: infra_sys_audio_clk
      - const: top_audio_mux1_sel
      - const: top_audio_mux2_sel
      - const: top_audio_a1sys_hp
      - const: top_audio_a2sys_hp
      - const: i2s0_src_sel
      - const: i2s1_src_sel
      - const: i2s2_src_sel
      - const: i2s3_src_sel
      - const: i2s0_src_div
      - const: i2s1_src_div
      - const: i2s2_src_div
      - const: i2s3_src_div
      - const: i2s0_mclk_en
      - const: i2s1_mclk_en
      - const: i2s2_mclk_en
      - const: i2s3_mclk_en
      - const: i2so0_hop_ck
      - const: i2so1_hop_ck
      - const: i2so2_hop_ck
      - const: i2so3_hop_ck
      - const: i2si0_hop_ck
      - const: i2si1_hop_ck
      - const: i2si2_hop_ck
      - const: i2si3_hop_ck
      - const: asrc0_out_ck
      - const: asrc1_out_ck
      - const: asrc2_out_ck
      - const: asrc3_out_ck
      - const: audio_afe_pd
      - const: audio_afe_conn_pd
      - const: audio_a1sys_pd
      - const: audio_a2sys_pd
      - const: audio_mrgif_pd

required:
  - compatible
  - interrupts
  - interrupt-names
  - power-domains
  - clocks
  - clock-names

additionalProperties: false
