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

title: Qualcomm WCD9340/WCD9341 Audio Codec

maintainers:
  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

description: |
  Qualcomm WCD9340/WCD9341 Codec is a standalone Hi-Fi audio codec IC.
  It has in-built Soundwire controller, pin controller, interrupt mux and
  supports both I2S/I2C and SLIMbus audio interfaces.

properties:
  compatible:
    const: slim217,250

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  reset-gpios:
    description: GPIO spec for reset line to use
    maxItems: 1

  slim-ifc-dev:
    description: IFC device interface
    $ref: /schemas/types.yaml#/definitions/phandle

  clocks:
    maxItems: 1

  clock-names:
    const: extclk

  vdd-buck-supply:
    description: A reference to the 1.8V buck supply

  vdd-buck-sido-supply:
    description: A reference to the 1.8V SIDO buck supply

  vdd-rx-supply:
    description: A reference to the 1.8V rx supply

  vdd-tx-supply:
    description: A reference to the 1.8V tx supply

  vdd-vbat-supply:
    description: A reference to the vbat supply

  vdd-io-supply:
    description: A reference to the 1.8V I/O supply

  vdd-micbias-supply:
    description: A reference to the micbias supply

  qcom,micbias1-microvolt:
    description: micbias1 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,micbias2-microvolt:
    description: micbias2 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,micbias3-microvolt:
    description: micbias3 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,micbias4-microvolt:
    description: micbias4 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,hphl-jack-type-normally-closed:
    description: Indicates that HPHL jack switch type is normally closed
    type: boolean

  qcom,ground-jack-type-normally-closed:
    description: Indicates that Headset Ground switch type is normally closed
    type: boolean

  qcom,mbhc-headset-vthreshold-microvolt:
    description: Voltage threshold value for headset detection
    minimum: 0
    maximum: 2850000

  qcom,mbhc-headphone-vthreshold-microvolt:
    description: Voltage threshold value for headphone detection
    minimum: 0
    maximum: 2850000

  qcom,mbhc-buttons-vthreshold-microvolt:
    description:
      Array of 8 Voltage threshold values corresponding to headset
      button0 - button7
    minItems: 8
    maxItems: 8

  clock-output-names:
    const: mclk

  clock-frequency:
    description: Clock frequency of output clk in Hz

  interrupt-controller: true

  '#interrupt-cells':
    const: 1

  '#clock-cells':
    const: 0

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

  "#address-cells":
    const: 1

  "#size-cells":
    const: 1

  gpio@42:
    type: object
    $ref: /schemas/gpio/qcom,wcd934x-gpio.yaml#

patternProperties:
  "^.*@[0-9a-f]+$":
    type: object
    additionalProperties: true
    description: |
      WCD934x subnode for each slave devices. Bindings of each subnodes
      depends on the specific driver providing the functionality and
      documented in their respective bindings.

    properties:
      reg:
        maxItems: 1

    required:
      - reg

required:
  - compatible
  - reg

allOf:
  - $ref: dai-common.yaml#
  - if:
      required:
        - slim-ifc-dev
    then:
      required:
        - reset-gpios
        - slim-ifc-dev
        - interrupt-controller
        - clock-frequency
        - clock-output-names
        - qcom,micbias1-microvolt
        - qcom,micbias2-microvolt
        - qcom,micbias3-microvolt
        - qcom,micbias4-microvolt
        - "#interrupt-cells"
        - "#clock-cells"
        - "#sound-dai-cells"
        - "#address-cells"
        - "#size-cells"
      oneOf:
        - required:
            - interrupts-extended
        - required:
            - interrupts
    else:
      properties:
        reset-gpios: false
        slim-ifc-dev: false
        interrupts: false
        interrupt-controller: false
        clock-frequency: false
        clock-output-names: false
        qcom,micbias1-microvolt: false
        qcom,micbias2-microvolt: false
        qcom,micbias3-microvolt: false
        qcom,micbias4-microvolt: false
        "#interrupt-cells": false
        "#clock-cells": false
        "#sound-dai-cells": false
        "#address-cells": false
        "#size-cells": false

additionalProperties: false

examples:
  - |
    codec@1,0{
        compatible = "slim217,250";
        reg = <1 0>;
        reset-gpios = <&tlmm 64 0>;
        slim-ifc-dev = <&wcd9340_ifd>;
        #sound-dai-cells = <1>;
        interrupt-parent = <&tlmm>;
        interrupts = <54 4>;
        interrupt-controller;
        #interrupt-cells = <1>;
        #clock-cells = <0>;
        clock-frequency = <9600000>;
        clock-output-names = "mclk";
        qcom,micbias1-microvolt = <1800000>;
        qcom,micbias2-microvolt = <1800000>;
        qcom,micbias3-microvolt = <1800000>;
        qcom,micbias4-microvolt = <1800000>;
        qcom,hphl-jack-type-normally-closed;
        qcom,ground-jack-type-normally-closed;
        qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
        qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
        qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
        clock-names = "extclk";
        clocks = <&rpmhcc 2>;

        #address-cells = <1>;
        #size-cells = <1>;

        gpio@42 {
            compatible = "qcom,wcd9340-gpio";
            reg = <0x42 0x2>;
            gpio-controller;
            #gpio-cells = <2>;
        };
    };

...
