18c2ecf20Sopenharmony_ciQCOM WCD9335 Codec
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciQualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC, supports
48c2ecf20Sopenharmony_ciQualcomm Technologies, Inc. (QTI) multimedia solutions, including
58c2ecf20Sopenharmony_cithe MSM8996, MSM8976, and MSM8956 chipsets. It has in-built
68c2ecf20Sopenharmony_ciSoundwire controller, interrupt mux. It supports both I2S/I2C and
78c2ecf20Sopenharmony_ciSLIMbus audio interfaces.
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciRequired properties with SLIMbus Interface:
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci- compatible:
128c2ecf20Sopenharmony_ci	Usage: required
138c2ecf20Sopenharmony_ci	Value type: <stringlist>
148c2ecf20Sopenharmony_ci	Definition: For SLIMbus interface it should be "slimMID,PID",
158c2ecf20Sopenharmony_ci		    textual representation of Manufacturer ID, Product Code,
168c2ecf20Sopenharmony_ci		    shall be in lower case hexadecimal with leading zeroes
178c2ecf20Sopenharmony_ci		    suppressed.  Refer to slimbus/bus.txt for details.
188c2ecf20Sopenharmony_ci		    Should be:
198c2ecf20Sopenharmony_ci		    "slim217,1a0" for MSM8996 and APQ8096 SoCs with SLIMbus.
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci- reg
228c2ecf20Sopenharmony_ci	Usage: required
238c2ecf20Sopenharmony_ci	Value type: <u32 u32>
248c2ecf20Sopenharmony_ci	Definition: Should be ('Device index', 'Instance ID')
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci- interrupts
278c2ecf20Sopenharmony_ci	Usage: required
288c2ecf20Sopenharmony_ci	Value type: <prop-encoded-array>
298c2ecf20Sopenharmony_ci	Definition: Interrupts via WCD INTR1 and INTR2 pins
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci- interrupt-names:
328c2ecf20Sopenharmony_ci	Usage: required
338c2ecf20Sopenharmony_ci	Value type: <String array>
348c2ecf20Sopenharmony_ci	Definition: Interrupt names of WCD INTR1 and INTR2
358c2ecf20Sopenharmony_ci	Should be: "intr1", "intr2"
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci- reset-gpios:
388c2ecf20Sopenharmony_ci	Usage: required
398c2ecf20Sopenharmony_ci	Value type: <String Array>
408c2ecf20Sopenharmony_ci	Definition: Reset gpio line
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci- slim-ifc-dev:
438c2ecf20Sopenharmony_ci	Usage: required
448c2ecf20Sopenharmony_ci	Value type: <phandle>
458c2ecf20Sopenharmony_ci	Definition: SLIM interface device
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci- clocks:
488c2ecf20Sopenharmony_ci	Usage: required
498c2ecf20Sopenharmony_ci	Value type: <prop-encoded-array>
508c2ecf20Sopenharmony_ci	Definition: See clock-bindings.txt section "consumers". List of
518c2ecf20Sopenharmony_ci                three clock specifiers for mclk, mclk2 and slimbus clock.
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci- clock-names:
548c2ecf20Sopenharmony_ci	Usage: required
558c2ecf20Sopenharmony_ci	Value type: <string>
568c2ecf20Sopenharmony_ci	Definition: Must contain "mclk", "mclk2" and "slimbus" strings.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci- vdd-buck-supply:
598c2ecf20Sopenharmony_ci	Usage: required
608c2ecf20Sopenharmony_ci	Value type: <phandle>
618c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the 1.8V buck supply
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci- vdd-buck-sido-supply:
648c2ecf20Sopenharmony_ci	Usage: required
658c2ecf20Sopenharmony_ci	Value type: <phandle>
668c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the 1.8V SIDO buck supply
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ci- vdd-rx-supply:
698c2ecf20Sopenharmony_ci	Usage: required
708c2ecf20Sopenharmony_ci	Value type: <phandle>
718c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the 1.8V rx supply
728c2ecf20Sopenharmony_ci
738c2ecf20Sopenharmony_ci- vdd-tx-supply:
748c2ecf20Sopenharmony_ci	Usage: required
758c2ecf20Sopenharmony_ci	Value type: <phandle>
768c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the 1.8V tx supply
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ci- vdd-vbat-supply:
798c2ecf20Sopenharmony_ci	Usage: Optional
808c2ecf20Sopenharmony_ci	Value type: <phandle>
818c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the vbat supply
828c2ecf20Sopenharmony_ci
838c2ecf20Sopenharmony_ci- vdd-micbias-supply:
848c2ecf20Sopenharmony_ci	Usage: required
858c2ecf20Sopenharmony_ci	Value type: <phandle>
868c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the micbias supply
878c2ecf20Sopenharmony_ci
888c2ecf20Sopenharmony_ci- vdd-io-supply:
898c2ecf20Sopenharmony_ci	Usage: required
908c2ecf20Sopenharmony_ci	Value type: <phandle>
918c2ecf20Sopenharmony_ci	Definition: Should contain a reference to the 1.8V io supply
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ci- interrupt-controller:
948c2ecf20Sopenharmony_ci	Usage: required
958c2ecf20Sopenharmony_ci	Definition: Indicating that this is a interrupt controller
968c2ecf20Sopenharmony_ci
978c2ecf20Sopenharmony_ci- #interrupt-cells:
988c2ecf20Sopenharmony_ci	Usage: required
998c2ecf20Sopenharmony_ci	Value type: <int>
1008c2ecf20Sopenharmony_ci	Definition: should be 1
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ci#sound-dai-cells
1038c2ecf20Sopenharmony_ci	Usage: required
1048c2ecf20Sopenharmony_ci	Value type: <u32>
1058c2ecf20Sopenharmony_ci	Definition: Must be 1
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ciaudio-codec@1{
1088c2ecf20Sopenharmony_ci	compatible = "slim217,1a0";
1098c2ecf20Sopenharmony_ci	reg  = <1 0>;
1108c2ecf20Sopenharmony_ci	interrupts = <&msmgpio 54 IRQ_TYPE_LEVEL_HIGH>;
1118c2ecf20Sopenharmony_ci	interrupt-names = "intr2"
1128c2ecf20Sopenharmony_ci	reset-gpios = <&msmgpio 64 GPIO_ACTIVE_LOW>;
1138c2ecf20Sopenharmony_ci	slim-ifc-dev  = <&wc9335_ifd>;
1148c2ecf20Sopenharmony_ci	clock-names = "mclk", "native";
1158c2ecf20Sopenharmony_ci	clocks = <&rpmcc RPM_SMD_DIV_CLK1>,
1168c2ecf20Sopenharmony_ci		 <&rpmcc RPM_SMD_BB_CLK1>;
1178c2ecf20Sopenharmony_ci	vdd-buck-supply = <&pm8994_s4>;
1188c2ecf20Sopenharmony_ci	vdd-rx-supply = <&pm8994_s4>;
1198c2ecf20Sopenharmony_ci	vdd-buck-sido-supply = <&pm8994_s4>;
1208c2ecf20Sopenharmony_ci	vdd-tx-supply = <&pm8994_s4>;
1218c2ecf20Sopenharmony_ci	vdd-io-supply = <&pm8994_s4>;
1228c2ecf20Sopenharmony_ci	#sound-dai-cells = <1>;
1238c2ecf20Sopenharmony_ci}
124