ASoC: dt-bindings: add dt bindings for wcd9335 audio codec

This patch adds bindings for wcd9335 audio codec which can support both SLIMbus
and I2S/I2C interface.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Srinivas Kandagatla 2018-07-27 13:17:57 +01:00 committed by Mark Brown
parent d8504acca7
commit 1877c9fda1
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0
1 changed files with 123 additions and 0 deletions

View File

@ -0,0 +1,123 @@
QCOM WCD9335 Codec
Qualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC, supports
Qualcomm Technologies, Inc. (QTI) multimedia solutions, including
the MSM8996, MSM8976, and MSM8956 chipsets. It has in-built
Soundwire controller, interrupt mux. It supports both I2S/I2C and
SLIMbus audio interfaces.
Required properties with SLIMbus Interface:
- compatible:
Usage: required
Value type: <stringlist>
Definition: For SLIMbus interface it should be "slimMID,PID",
textual representation of Manufacturer ID, Product Code,
shall be in lower case hexadecimal with leading zeroes
suppressed. Refer to slimbus/bus.txt for details.
Should be:
"slim217,1a0" for MSM8996 and APQ8096 SoCs with SLIMbus.
- reg
Usage: required
Value type: <u32 u32>
Definition: Should be ('Device index', 'Instance ID')
- interrupts
Usage: required
Value type: <prop-encoded-array>
Definition: Interrupts via WCD INTR1 and INTR2 pins
- interrupt-names:
Usage: required
Value type: <String array>
Definition: Interrupt names of WCD INTR1 and INTR2
Should be: "intr1", "intr2"
- reset-gpio:
Usage: required
Value type: <String Array>
Definition: Reset gpio line
- qcom,ifd:
Usage: required
Value type: <phandle>
Definition: SLIM interface device
- clocks:
Usage: required
Value type: <prop-encoded-array>
Definition: See clock-bindings.txt section "consumers". List of
three clock specifiers for mclk, mclk2 and slimbus clock.
- clock-names:
Usage: required
Value type: <string>
Definition: Must contain "mclk", "mclk2" and "slimbus" strings.
- vdd-buck-supply:
Usage: required
Value type: <phandle>
Definition: Should contain a reference to the 1.8V buck supply
- vdd-buck-sido-supply:
Usage: required
Value type: <phandle>
Definition: Should contain a reference to the 1.8V SIDO buck supply
- vdd-rx-supply:
Usage: required
Value type: <phandle>
Definition: Should contain a reference to the 1.8V rx supply
- vdd-tx-supply:
Usage: required
Value type: <phandle>
Definition: Should contain a reference to the 1.8V tx supply
- vdd-vbat-supply:
Usage: Optional
Value type: <phandle>
Definition: Should contain a reference to the vbat supply
- vdd-micbias-supply:
Usage: required
Value type: <phandle>
Definition: Should contain a reference to the micbias supply
- vdd-io-supply:
Usage: required
Value type: <phandle>
Definition: Should contain a reference to the 1.8V io supply
- interrupt-controller:
Usage: required
Definition: Indicating that this is a interrupt controller
- #interrupt-cells:
Usage: required
Value type: <int>
Definition: should be 1
#sound-dai-cells
Usage: required
Value type: <u32>
Definition: Must be 1
codec@1{
compatible = "slim217,1a0";
reg = <1 0>;
interrupts = <&msmgpio 54 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr2"
reset-gpio = <&msmgpio 64 0>;
qcom,ifd = <&wc9335_ifd>;
clock-names = "mclk", "native";
clocks = <&rpmcc RPM_SMD_DIV_CLK1>,
<&rpmcc RPM_SMD_BB_CLK1>;
vdd-buck-supply = <&pm8994_s4>;
vdd-rx-supply = <&pm8994_s4>;
vdd-buck-sido-supply = <&pm8994_s4>;
vdd-tx-supply = <&pm8994_s4>;
vdd-io-supply = <&pm8994_s4>;
#sound-dai-cells = <1>;
}