# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/ti,omap4-mcpdm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: OMAP McPDM

maintainers:
  - Misael Lopez Cruz <misael.lopez@ti.com>

description:
  OMAP ALSA SoC DAI driver using McPDM port used by TWL6040

properties:
  compatible:
    const: ti,omap4-mcpdm

  reg:
    items:
      - description: MPU access base address
      - description: L3 interconnect address

  reg-names:
    items:
      - const: mpu
      - const: dma

  interrupts:
    maxItems: 1

  dmas:
    maxItems: 2

  dma-names:
    items:
      - const: up_link
      - const: dn_link

  clocks:
    maxItems: 1

  clock-names:
    items:
      - const: pdmclk

required:
  - compatible
  - reg
  - reg-names
  - interrupts
  - dmas
  - dma-names
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    mcpdm@0 {
      compatible = "ti,omap4-mcpdm";
      reg = <0x0 0x7f>, /* MPU private access */
            <0x49032000 0x7f>; /* L3 Interconnect */
      reg-names = "mpu", "dma";
      interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
      interrupt-parent = <&gic>;
      dmas = <&sdma 65>, <&sdma 66>;
      dma-names = "up_link", "dn_link";
      clocks = <&twl6040>;
      clock-names = "pdmclk";
    };
