# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/dmic-codec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Generic PDM Digital microphone (DMIC) codec

maintainers:
  - Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>

allOf:
  - $ref: dai-common.yaml#

properties:
  compatible:
    const: dmic-codec

  '#sound-dai-cells':
    const: 0

  dmicen-gpios:
    description: GPIO specifier for DMIC to control start and stop
    maxItems: 1

  num-channels:
    description: Number of microphones on this DAI
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 1
    maximum: 8
    default: 8

  modeswitch-delay-ms:
    description: Delay (in ms) to complete DMIC mode switch

  wakeup-delay-ms:
    description: Delay (in ms) after enabling the DMIC

required:
  - compatible

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    dmic {
        compatible = "dmic-codec";
        dmicen-gpios = <&gpio4 3 GPIO_ACTIVE_HIGH>;
        num-channels = <1>;
        wakeup-delay-ms = <50>;
        modeswitch-delay-ms = <35>;
    };
...