110ee3e07SSrinivas Kandagatla# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
210ee3e07SSrinivas Kandagatla%YAML 1.2
310ee3e07SSrinivas Kandagatla---
410ee3e07SSrinivas Kandagatla$id: http://devicetree.org/schemas/sound/qcom,wcd938x.yaml#
510ee3e07SSrinivas Kandagatla$schema: http://devicetree.org/meta-schemas/core.yaml#
610ee3e07SSrinivas Kandagatla
710ee3e07SSrinivas Kandagatlatitle: Bindings for Qualcomm WCD9380/WCD9385 Audio Codec
810ee3e07SSrinivas Kandagatla
910ee3e07SSrinivas Kandagatlamaintainers:
1010ee3e07SSrinivas Kandagatla  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
1110ee3e07SSrinivas Kandagatla
1210ee3e07SSrinivas Kandagatladescription: |
1310ee3e07SSrinivas Kandagatla  Qualcomm WCD9380/WCD9385 Codec is a standalone Hi-Fi audio codec IC.
1410ee3e07SSrinivas Kandagatla  It has RX and TX Soundwire slave devices.
1510ee3e07SSrinivas Kandagatla
1610ee3e07SSrinivas Kandagatlaproperties:
1710ee3e07SSrinivas Kandagatla  compatible:
1810ee3e07SSrinivas Kandagatla    enum:
1910ee3e07SSrinivas Kandagatla      - qcom,wcd9380-codec
2010ee3e07SSrinivas Kandagatla      - qcom,wcd9385-codec
2110ee3e07SSrinivas Kandagatla
2210ee3e07SSrinivas Kandagatla  reset-gpios:
2310ee3e07SSrinivas Kandagatla    description: GPIO spec for reset line to use
2410ee3e07SSrinivas Kandagatla    maxItems: 1
2510ee3e07SSrinivas Kandagatla
26*20ea94bcSSrinivasa Rao Mandadapu  us-euro-gpios:
27*20ea94bcSSrinivasa Rao Mandadapu    description: GPIO spec for swapping gnd and mic segments
28*20ea94bcSSrinivasa Rao Mandadapu    maxItems: 1
29*20ea94bcSSrinivasa Rao Mandadapu
3010ee3e07SSrinivas Kandagatla  vdd-buck-supply:
3110ee3e07SSrinivas Kandagatla    description: A reference to the 1.8V buck supply
3210ee3e07SSrinivas Kandagatla
3310ee3e07SSrinivas Kandagatla  vdd-rxtx-supply:
3410ee3e07SSrinivas Kandagatla    description: A reference to the 1.8V rx supply
3510ee3e07SSrinivas Kandagatla
3610ee3e07SSrinivas Kandagatla  vdd-io-supply:
3710ee3e07SSrinivas Kandagatla    description: A reference to the 1.8V I/O supply
3810ee3e07SSrinivas Kandagatla
3910ee3e07SSrinivas Kandagatla  qcom,tx-device:
4010ee3e07SSrinivas Kandagatla    $ref: /schemas/types.yaml#/definitions/phandle-array
4110ee3e07SSrinivas Kandagatla    description: A reference to Soundwire tx device phandle
4210ee3e07SSrinivas Kandagatla
4310ee3e07SSrinivas Kandagatla  qcom,rx-device:
4410ee3e07SSrinivas Kandagatla    $ref: /schemas/types.yaml#/definitions/phandle-array
4510ee3e07SSrinivas Kandagatla    description: A reference to Soundwire rx device phandle
4610ee3e07SSrinivas Kandagatla
4710ee3e07SSrinivas Kandagatla  qcom,micbias1-microvolt:
4810ee3e07SSrinivas Kandagatla    description: micbias1 voltage
4910ee3e07SSrinivas Kandagatla    minimum: 1800000
5010ee3e07SSrinivas Kandagatla    maximum: 2850000
5110ee3e07SSrinivas Kandagatla
5210ee3e07SSrinivas Kandagatla  qcom,micbias2-microvolt:
5310ee3e07SSrinivas Kandagatla    description: micbias2 voltage
5410ee3e07SSrinivas Kandagatla    minimum: 1800000
5510ee3e07SSrinivas Kandagatla    maximum: 2850000
5610ee3e07SSrinivas Kandagatla
5710ee3e07SSrinivas Kandagatla  qcom,micbias3-microvolt:
5810ee3e07SSrinivas Kandagatla    description: micbias3 voltage
5910ee3e07SSrinivas Kandagatla    minimum: 1800000
6010ee3e07SSrinivas Kandagatla    maximum: 2850000
6110ee3e07SSrinivas Kandagatla
6210ee3e07SSrinivas Kandagatla  qcom,micbias4-microvolt:
6310ee3e07SSrinivas Kandagatla    description: micbias4 voltage
6410ee3e07SSrinivas Kandagatla    minimum: 1800000
6510ee3e07SSrinivas Kandagatla    maximum: 2850000
6610ee3e07SSrinivas Kandagatla
6710ee3e07SSrinivas Kandagatla  qcom,hphl-jack-type-normally-closed:
6810ee3e07SSrinivas Kandagatla    description: Indicates that HPHL jack switch type is normally closed
6910ee3e07SSrinivas Kandagatla    type: boolean
7010ee3e07SSrinivas Kandagatla
7110ee3e07SSrinivas Kandagatla  qcom,ground-jack-type-normally-closed:
7210ee3e07SSrinivas Kandagatla    description: Indicates that Headset Ground switch type is normally closed
7310ee3e07SSrinivas Kandagatla    type: boolean
7410ee3e07SSrinivas Kandagatla
7510ee3e07SSrinivas Kandagatla  qcom,mbhc-headset-vthreshold-microvolt:
7610ee3e07SSrinivas Kandagatla    description: Voltage threshold value for headset detection
7710ee3e07SSrinivas Kandagatla    minimum: 0
7810ee3e07SSrinivas Kandagatla    maximum: 2850000
7910ee3e07SSrinivas Kandagatla
8010ee3e07SSrinivas Kandagatla  qcom,mbhc-headphone-vthreshold-microvolt:
8110ee3e07SSrinivas Kandagatla    description: Voltage threshold value for headphone detection
8210ee3e07SSrinivas Kandagatla    minimum: 0
8310ee3e07SSrinivas Kandagatla    maximum: 2850000
8410ee3e07SSrinivas Kandagatla
8510ee3e07SSrinivas Kandagatla  qcom,mbhc-buttons-vthreshold-microvolt:
8610ee3e07SSrinivas Kandagatla    description:
8710ee3e07SSrinivas Kandagatla      Array of 8 Voltage threshold values corresponding to headset
8810ee3e07SSrinivas Kandagatla      button0 - button7
8910ee3e07SSrinivas Kandagatla    minItems: 8
9010ee3e07SSrinivas Kandagatla    maxItems: 8
9110ee3e07SSrinivas Kandagatla
9210ee3e07SSrinivas Kandagatla  '#sound-dai-cells':
9310ee3e07SSrinivas Kandagatla    const: 1
9410ee3e07SSrinivas Kandagatla
9510ee3e07SSrinivas Kandagatlarequired:
9610ee3e07SSrinivas Kandagatla  - compatible
9710ee3e07SSrinivas Kandagatla  - reset-gpios
9810ee3e07SSrinivas Kandagatla  - qcom,tx-device
9910ee3e07SSrinivas Kandagatla  - qcom,rx-device
10010ee3e07SSrinivas Kandagatla  - qcom,micbias1-microvolt
10110ee3e07SSrinivas Kandagatla  - qcom,micbias2-microvolt
10210ee3e07SSrinivas Kandagatla  - qcom,micbias3-microvolt
10310ee3e07SSrinivas Kandagatla  - qcom,micbias4-microvolt
10410ee3e07SSrinivas Kandagatla  - "#sound-dai-cells"
10510ee3e07SSrinivas Kandagatla
10610ee3e07SSrinivas KandagatlaadditionalProperties: false
10710ee3e07SSrinivas Kandagatla
10810ee3e07SSrinivas Kandagatlaexamples:
10910ee3e07SSrinivas Kandagatla  - |
11010ee3e07SSrinivas Kandagatla    codec {
11110ee3e07SSrinivas Kandagatla        compatible = "qcom,wcd9380-codec";
11210ee3e07SSrinivas Kandagatla        reset-gpios = <&tlmm 32 0>;
11310ee3e07SSrinivas Kandagatla        #sound-dai-cells = <1>;
11410ee3e07SSrinivas Kandagatla        qcom,tx-device = <&wcd938x_tx>;
11510ee3e07SSrinivas Kandagatla        qcom,rx-device = <&wcd938x_rx>;
11610ee3e07SSrinivas Kandagatla        qcom,micbias1-microvolt = <1800000>;
11710ee3e07SSrinivas Kandagatla        qcom,micbias2-microvolt = <1800000>;
11810ee3e07SSrinivas Kandagatla        qcom,micbias3-microvolt = <1800000>;
11910ee3e07SSrinivas Kandagatla        qcom,micbias4-microvolt = <1800000>;
12010ee3e07SSrinivas Kandagatla        qcom,hphl-jack-type-normally-closed;
12110ee3e07SSrinivas Kandagatla        qcom,ground-jack-type-normally-closed;
12210ee3e07SSrinivas Kandagatla        qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
12310ee3e07SSrinivas Kandagatla        qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
12410ee3e07SSrinivas Kandagatla    };
12510ee3e07SSrinivas Kandagatla
12610ee3e07SSrinivas Kandagatla    /* ... */
12710ee3e07SSrinivas Kandagatla
12810ee3e07SSrinivas Kandagatla    soundwire@3210000 {
12910ee3e07SSrinivas Kandagatla        #address-cells = <2>;
13010ee3e07SSrinivas Kandagatla        #size-cells = <0>;
13110ee3e07SSrinivas Kandagatla        reg = <0x03210000 0x2000>;
13210ee3e07SSrinivas Kandagatla        wcd938x_rx: codec@0,4 {
13310ee3e07SSrinivas Kandagatla            compatible = "sdw20217010d00";
13410ee3e07SSrinivas Kandagatla            reg  = <0 4>;
13510ee3e07SSrinivas Kandagatla            qcom,rx-port-mapping = <1 2 3 4 5>;
13610ee3e07SSrinivas Kandagatla        };
13710ee3e07SSrinivas Kandagatla    };
13810ee3e07SSrinivas Kandagatla
13910ee3e07SSrinivas Kandagatla    soundwire@3230000 {
14010ee3e07SSrinivas Kandagatla        #address-cells = <2>;
14110ee3e07SSrinivas Kandagatla        #size-cells = <0>;
14210ee3e07SSrinivas Kandagatla        reg = <0x03230000 0x2000>;
14310ee3e07SSrinivas Kandagatla        wcd938x_tx: codec@0,3 {
14410ee3e07SSrinivas Kandagatla            compatible = "sdw20217010d00";
14510ee3e07SSrinivas Kandagatla            reg  = <0 3>;
14610ee3e07SSrinivas Kandagatla            qcom,tx-port-mapping = <2 3 4 5>;
14710ee3e07SSrinivas Kandagatla        };
14810ee3e07SSrinivas Kandagatla    };
14910ee3e07SSrinivas Kandagatla
15010ee3e07SSrinivas Kandagatla...
151