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

title: Qualcomm WCD9380/WCD9385 Audio Codec

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

description: |
  Qualcomm WCD9380/WCD9385 Codec is a standalone Hi-Fi audio codec IC.
  It has RX and TX Soundwire slave devices.

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

properties:
  compatible:
    enum:
      - qcom,wcd9380-codec
      - qcom,wcd9385-codec

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

  us-euro-gpios:
    description: GPIO spec for swapping gnd and mic segments
    maxItems: 1

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

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

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

  vdd-mic-bias-supply:
    description: A reference to the 3.8V mic bias supply

  qcom,tx-device:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description: A reference to Soundwire tx device phandle

  qcom,rx-device:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description: A reference to Soundwire rx device phandle

  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

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

required:
  - compatible
  - reset-gpios
  - qcom,tx-device
  - qcom,rx-device
  - qcom,micbias1-microvolt
  - qcom,micbias2-microvolt
  - qcom,micbias3-microvolt
  - qcom,micbias4-microvolt
  - "#sound-dai-cells"

unevaluatedProperties: false

examples:
  - |
    codec {
        compatible = "qcom,wcd9380-codec";
        reset-gpios = <&tlmm 32 0>;
        #sound-dai-cells = <1>;
        qcom,tx-device = <&wcd938x_tx>;
        qcom,rx-device = <&wcd938x_rx>;
        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-headphone-vthreshold-microvolt = <50000>;
    };

    /* ... */

    soundwire@3210000 {
        #address-cells = <2>;
        #size-cells = <0>;
        reg = <0x03210000 0x2000>;
        wcd938x_rx: codec@0,4 {
            compatible = "sdw20217010d00";
            reg = <0 4>;
            qcom,rx-port-mapping = <1 2 3 4 5>;
        };
    };

    soundwire@3230000 {
        #address-cells = <2>;
        #size-cells = <0>;
        reg = <0x03230000 0x2000>;
        wcd938x_tx: codec@0,3 {
            compatible = "sdw20217010d00";
            reg = <0 3>;
            qcom,tx-port-mapping = <2 3 4 5>;
        };
    };

...
