xref: /freebsd/sys/contrib/device-tree/Bindings/sound/qcom,wcd9335.txt (revision 8bab661a3316d8bd9b9fbd11a3b4371b91507bd2)
1c66ec88fSEmmanuel VadotQCOM WCD9335 Codec
2c66ec88fSEmmanuel Vadot
3c66ec88fSEmmanuel VadotQualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC, supports
4c66ec88fSEmmanuel VadotQualcomm Technologies, Inc. (QTI) multimedia solutions, including
5c66ec88fSEmmanuel Vadotthe MSM8996, MSM8976, and MSM8956 chipsets. It has in-built
6c66ec88fSEmmanuel VadotSoundwire controller, interrupt mux. It supports both I2S/I2C and
7c66ec88fSEmmanuel VadotSLIMbus audio interfaces.
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel VadotRequired properties with SLIMbus Interface:
10c66ec88fSEmmanuel Vadot
11c66ec88fSEmmanuel Vadot- compatible:
12c66ec88fSEmmanuel Vadot	Usage: required
13c66ec88fSEmmanuel Vadot	Value type: <stringlist>
14c66ec88fSEmmanuel Vadot	Definition: For SLIMbus interface it should be "slimMID,PID",
15c66ec88fSEmmanuel Vadot		    textual representation of Manufacturer ID, Product Code,
16c66ec88fSEmmanuel Vadot		    shall be in lower case hexadecimal with leading zeroes
17c66ec88fSEmmanuel Vadot		    suppressed.  Refer to slimbus/bus.txt for details.
18c66ec88fSEmmanuel Vadot		    Should be:
19c66ec88fSEmmanuel Vadot		    "slim217,1a0" for MSM8996 and APQ8096 SoCs with SLIMbus.
20c66ec88fSEmmanuel Vadot
21c66ec88fSEmmanuel Vadot- reg
22c66ec88fSEmmanuel Vadot	Usage: required
23c66ec88fSEmmanuel Vadot	Value type: <u32 u32>
24c66ec88fSEmmanuel Vadot	Definition: Should be ('Device index', 'Instance ID')
25c66ec88fSEmmanuel Vadot
26c66ec88fSEmmanuel Vadot- interrupts
27c66ec88fSEmmanuel Vadot	Usage: required
28c66ec88fSEmmanuel Vadot	Value type: <prop-encoded-array>
29c66ec88fSEmmanuel Vadot	Definition: Interrupts via WCD INTR1 and INTR2 pins
30c66ec88fSEmmanuel Vadot
31c66ec88fSEmmanuel Vadot- interrupt-names:
32c66ec88fSEmmanuel Vadot	Usage: required
33c66ec88fSEmmanuel Vadot	Value type: <String array>
34c66ec88fSEmmanuel Vadot	Definition: Interrupt names of WCD INTR1 and INTR2
35c66ec88fSEmmanuel Vadot	Should be: "intr1", "intr2"
36c66ec88fSEmmanuel Vadot
37c66ec88fSEmmanuel Vadot- reset-gpios:
38c66ec88fSEmmanuel Vadot	Usage: required
39c66ec88fSEmmanuel Vadot	Value type: <String Array>
40c66ec88fSEmmanuel Vadot	Definition: Reset gpio line
41c66ec88fSEmmanuel Vadot
42c66ec88fSEmmanuel Vadot- slim-ifc-dev:
43c66ec88fSEmmanuel Vadot	Usage: required
44c66ec88fSEmmanuel Vadot	Value type: <phandle>
45c66ec88fSEmmanuel Vadot	Definition: SLIM interface device
46c66ec88fSEmmanuel Vadot
47c66ec88fSEmmanuel Vadot- clocks:
48c66ec88fSEmmanuel Vadot	Usage: required
49c66ec88fSEmmanuel Vadot	Value type: <prop-encoded-array>
50c66ec88fSEmmanuel Vadot	Definition: See clock-bindings.txt section "consumers". List of
51c66ec88fSEmmanuel Vadot                three clock specifiers for mclk, mclk2 and slimbus clock.
52c66ec88fSEmmanuel Vadot
53c66ec88fSEmmanuel Vadot- clock-names:
54c66ec88fSEmmanuel Vadot	Usage: required
55c66ec88fSEmmanuel Vadot	Value type: <string>
56c66ec88fSEmmanuel Vadot	Definition: Must contain "mclk", "mclk2" and "slimbus" strings.
57c66ec88fSEmmanuel Vadot
58c66ec88fSEmmanuel Vadot- vdd-buck-supply:
59c66ec88fSEmmanuel Vadot	Usage: required
60c66ec88fSEmmanuel Vadot	Value type: <phandle>
61c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the 1.8V buck supply
62c66ec88fSEmmanuel Vadot
63c66ec88fSEmmanuel Vadot- vdd-buck-sido-supply:
64c66ec88fSEmmanuel Vadot	Usage: required
65c66ec88fSEmmanuel Vadot	Value type: <phandle>
66c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the 1.8V SIDO buck supply
67c66ec88fSEmmanuel Vadot
68c66ec88fSEmmanuel Vadot- vdd-rx-supply:
69c66ec88fSEmmanuel Vadot	Usage: required
70c66ec88fSEmmanuel Vadot	Value type: <phandle>
71c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the 1.8V rx supply
72c66ec88fSEmmanuel Vadot
73c66ec88fSEmmanuel Vadot- vdd-tx-supply:
74c66ec88fSEmmanuel Vadot	Usage: required
75c66ec88fSEmmanuel Vadot	Value type: <phandle>
76c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the 1.8V tx supply
77c66ec88fSEmmanuel Vadot
78c66ec88fSEmmanuel Vadot- vdd-vbat-supply:
79c66ec88fSEmmanuel Vadot	Usage: Optional
80c66ec88fSEmmanuel Vadot	Value type: <phandle>
81c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the vbat supply
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot- vdd-micbias-supply:
84c66ec88fSEmmanuel Vadot	Usage: required
85c66ec88fSEmmanuel Vadot	Value type: <phandle>
86c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the micbias supply
87c66ec88fSEmmanuel Vadot
88c66ec88fSEmmanuel Vadot- vdd-io-supply:
89c66ec88fSEmmanuel Vadot	Usage: required
90c66ec88fSEmmanuel Vadot	Value type: <phandle>
91c66ec88fSEmmanuel Vadot	Definition: Should contain a reference to the 1.8V io supply
92c66ec88fSEmmanuel Vadot
93c66ec88fSEmmanuel Vadot- interrupt-controller:
94c66ec88fSEmmanuel Vadot	Usage: required
95c66ec88fSEmmanuel Vadot	Definition: Indicating that this is a interrupt controller
96c66ec88fSEmmanuel Vadot
97c66ec88fSEmmanuel Vadot- #interrupt-cells:
98c66ec88fSEmmanuel Vadot	Usage: required
99c66ec88fSEmmanuel Vadot	Value type: <int>
100c66ec88fSEmmanuel Vadot	Definition: should be 1
101c66ec88fSEmmanuel Vadot
102c66ec88fSEmmanuel Vadot#sound-dai-cells
103c66ec88fSEmmanuel Vadot	Usage: required
104c66ec88fSEmmanuel Vadot	Value type: <u32>
105c66ec88fSEmmanuel Vadot	Definition: Must be 1
106c66ec88fSEmmanuel Vadot
107c66ec88fSEmmanuel Vadotaudio-codec@1{
108c66ec88fSEmmanuel Vadot	compatible = "slim217,1a0";
109c66ec88fSEmmanuel Vadot	reg  = <1 0>;
110c66ec88fSEmmanuel Vadot	interrupts = <&msmgpio 54 IRQ_TYPE_LEVEL_HIGH>;
111c66ec88fSEmmanuel Vadot	interrupt-names = "intr2"
112*8bab661aSEmmanuel Vadot	reset-gpios = <&msmgpio 64 GPIO_ACTIVE_LOW>;
113c66ec88fSEmmanuel Vadot	slim-ifc-dev  = <&wc9335_ifd>;
114c66ec88fSEmmanuel Vadot	clock-names = "mclk", "native";
115c66ec88fSEmmanuel Vadot	clocks = <&rpmcc RPM_SMD_DIV_CLK1>,
116c66ec88fSEmmanuel Vadot		 <&rpmcc RPM_SMD_BB_CLK1>;
117c66ec88fSEmmanuel Vadot	vdd-buck-supply = <&pm8994_s4>;
118c66ec88fSEmmanuel Vadot	vdd-rx-supply = <&pm8994_s4>;
119c66ec88fSEmmanuel Vadot	vdd-buck-sido-supply = <&pm8994_s4>;
120c66ec88fSEmmanuel Vadot	vdd-tx-supply = <&pm8994_s4>;
121c66ec88fSEmmanuel Vadot	vdd-io-supply = <&pm8994_s4>;
122c66ec88fSEmmanuel Vadot	#sound-dai-cells = <1>;
123c66ec88fSEmmanuel Vadot}
124