# 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: Bindings for 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: true

  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: ../gpio/qcom,wcd934x-gpio.yaml#

patternProperties:
  "^.*@[0-9a-f]+$":
    type: object
    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
  - reset-gpios
  - slim-ifc-dev
  - interrupts
  - 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"

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>;
        };
    };

...
