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