Message ID | 20210319092919.21218-2-srinivas.kandagatla@linaro.org |
---|---|
State | New |
Headers | show |
Series | ASoC: codecs: add wcd938x support | expand |
On Fri, Mar 19, 2021 at 09:29:13AM +0000, Srinivas Kandagatla wrote: > Qualcomm WCD9380/WCD9385 Codec is a standalone Hi-Fi audio codec IC > connected over SoundWire. This device has two SoundWire device RX and > TX respectively, supporting 4 x ADCs, ClassH, Ear, Aux PA, 2xHPH, > 7 x TX diff inputs, 8 DMICs, MBHC. > > Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> > --- > .../bindings/sound/qcom,wcd938x.yaml | 165 ++++++++++++++++++ > 1 file changed, 165 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml > > diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml b/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml > new file mode 100644 > index 000000000000..fe47e483d4b9 > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml > @@ -0,0 +1,165 @@ > +# 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: Bindings for 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. > + > +properties: > + compatible: > + const: sdw20217010d00 > + > + reg: > + maxItems: 1 > + > + reset-gpios: > + description: GPIO spec for reset line to use > + maxItems: 1 > + > + direction: Needs a description and vendor prefix. > + oneOf: > + - const: rx > + - const: tx Better expressed as an 'enum' > + > + 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 > + > + 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,mbhc-hphl-switch: > + description: Indicates that HPHL switch type is normally closed > + type: boolean > + > + qcom,mbhc-ground-switch: > + description: Indicates that Headset Ground switch type is normally closed > + type: boolean > + > + qcom,mbhc-button0-vthreshold-microvolt: > + description: Voltage threshold value headset button0 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button1-vthreshold-microvolt: > + description: Voltage threshold value headset button1 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button2-vthreshold-microvolt: > + description: Voltage threshold value headset button2 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button3-vthreshold-microvolt: > + description: Voltage threshold value headset button3 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button4-vthreshold-microvolt: > + description: Voltage threshold value headset button4 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button5-vthreshold-microvolt: > + description: Voltage threshold value headset button5 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button6-vthreshold-microvolt: > + description: Voltage threshold value headset button6 > + minimum: 0 > + maximum: 500000 > + > + qcom,mbhc-button7-vthreshold-microvolt: > + description: Voltage threshold value headset button7 > + minimum: 0 > + maximum: 500000 > + > + qcom,port-mapping: > + description: | > + Specifies static port mapping between slave and master ports. > + In the order of slave port index. > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 4 > + maxItems: 5 > + > + '#sound-dai-cells': > + const: 1 > + > +required: > + - compatible > + - reg > + - reset-gpios > + - qcom,micbias1-microvolt > + - qcom,micbias2-microvolt > + - qcom,micbias3-microvolt > + - qcom,micbias4-microvolt > + - qcom,port-mapping > + - qcom,mbhc-hphl-switch > + - qcom,mbhc-ground-switch > + - "#sound-dai-cells" > + > +additionalProperties: false > + > +examples: > + - | > + soundwire@3230000 { > + #address-cells = <2>; > + #size-cells = <0>; > + reg = <0x03230000 0x2000>; > + > + codec@0,3 { > + compatible = "sdw20217010d00"; > + reg = <0 3>; > + reset-gpios = <&tlmm 32 0>; > + direction = "tx"; > + #sound-dai-cells = <1>; > + qcom,micbias1-microvolt = <1800000>; > + qcom,micbias2-microvolt = <1800000>; > + qcom,micbias3-microvolt = <1800000>; > + qcom,micbias4-microvolt = <1800000>; > + qcom,mbhc-hphl-switch; > + qcom,mbhc-ground-switch; > + qcom,mbhc-button0-vthreshold-microvolt = <75000>; > + qcom,mbhc-button1-vthreshold-microvolt = <150000>; > + qcom,mbhc-button2-vthreshold-microvolt = <237000>; > + qcom,mbhc-button3-vthreshold-microvolt = <500000>; > + qcom,mbhc-button5-vthreshold-microvolt = <500000>; > + qcom,mbhc-button6-vthreshold-microvolt = <500000>; > + qcom,mbhc-button7-vthreshold-microvolt = <500000>; > + qcom,port-mapping = <2 3 4 5>; > + }; > + }; > + > +... > -- > 2.21.0 >
diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml b/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml new file mode 100644 index 000000000000..fe47e483d4b9 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml @@ -0,0 +1,165 @@ +# 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: Bindings for 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. + +properties: + compatible: + const: sdw20217010d00 + + reg: + maxItems: 1 + + reset-gpios: + description: GPIO spec for reset line to use + maxItems: 1 + + direction: + oneOf: + - const: rx + - const: tx + + 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 + + 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,mbhc-hphl-switch: + description: Indicates that HPHL switch type is normally closed + type: boolean + + qcom,mbhc-ground-switch: + description: Indicates that Headset Ground switch type is normally closed + type: boolean + + qcom,mbhc-button0-vthreshold-microvolt: + description: Voltage threshold value headset button0 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button1-vthreshold-microvolt: + description: Voltage threshold value headset button1 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button2-vthreshold-microvolt: + description: Voltage threshold value headset button2 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button3-vthreshold-microvolt: + description: Voltage threshold value headset button3 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button4-vthreshold-microvolt: + description: Voltage threshold value headset button4 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button5-vthreshold-microvolt: + description: Voltage threshold value headset button5 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button6-vthreshold-microvolt: + description: Voltage threshold value headset button6 + minimum: 0 + maximum: 500000 + + qcom,mbhc-button7-vthreshold-microvolt: + description: Voltage threshold value headset button7 + minimum: 0 + maximum: 500000 + + qcom,port-mapping: + description: | + Specifies static port mapping between slave and master ports. + In the order of slave port index. + $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 4 + maxItems: 5 + + '#sound-dai-cells': + const: 1 + +required: + - compatible + - reg + - reset-gpios + - qcom,micbias1-microvolt + - qcom,micbias2-microvolt + - qcom,micbias3-microvolt + - qcom,micbias4-microvolt + - qcom,port-mapping + - qcom,mbhc-hphl-switch + - qcom,mbhc-ground-switch + - "#sound-dai-cells" + +additionalProperties: false + +examples: + - | + soundwire@3230000 { + #address-cells = <2>; + #size-cells = <0>; + reg = <0x03230000 0x2000>; + + codec@0,3 { + compatible = "sdw20217010d00"; + reg = <0 3>; + reset-gpios = <&tlmm 32 0>; + direction = "tx"; + #sound-dai-cells = <1>; + qcom,micbias1-microvolt = <1800000>; + qcom,micbias2-microvolt = <1800000>; + qcom,micbias3-microvolt = <1800000>; + qcom,micbias4-microvolt = <1800000>; + qcom,mbhc-hphl-switch; + qcom,mbhc-ground-switch; + qcom,mbhc-button0-vthreshold-microvolt = <75000>; + qcom,mbhc-button1-vthreshold-microvolt = <150000>; + qcom,mbhc-button2-vthreshold-microvolt = <237000>; + qcom,mbhc-button3-vthreshold-microvolt = <500000>; + qcom,mbhc-button5-vthreshold-microvolt = <500000>; + qcom,mbhc-button6-vthreshold-microvolt = <500000>; + qcom,mbhc-button7-vthreshold-microvolt = <500000>; + qcom,port-mapping = <2 3 4 5>; + }; + }; + +...
Qualcomm WCD9380/WCD9385 Codec is a standalone Hi-Fi audio codec IC connected over SoundWire. This device has two SoundWire device RX and TX respectively, supporting 4 x ADCs, ClassH, Ear, Aux PA, 2xHPH, 7 x TX diff inputs, 8 DMICs, MBHC. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> --- .../bindings/sound/qcom,wcd938x.yaml | 165 ++++++++++++++++++ 1 file changed, 165 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml