Skip to content

Commit

Permalink
ASoC: dt-bindings: add dt bindings for WCD9340/WCD9341 audio codec
Browse files Browse the repository at this point in the history
This patch adds bindings for wcd9340/wcd9341 audio codec which can
support both SLIMbus and I2S/I2C interface.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20191219103153.14875-2-srinivas.kandagatla@linaro.org
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
  • Loading branch information
Srinivas Kandagatla authored and Mark Brown committed Dec 25, 2019
1 parent a82cf72 commit a6b7487
Showing 1 changed file with 175 additions and 0 deletions.
175 changes: 175 additions & 0 deletions Documentation/devicetree/bindings/sound/qcom,wcd934x.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
# 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

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
allOf:
- $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"

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

0 comments on commit a6b7487

Please sign in to comment.