Message ID | 20190702080920.22623-2-srinivas.kandagatla@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ASoC: Add support to WCD9340/WCD9341 codec | expand |
On Tue, Jul 02, 2019 at 09:09:15AM +0100, Srinivas Kandagatla wrote: > +- qcom,micbias1-lvl: > + Usage: required > + Value type: <u32> > + Definition: Should be voltage in milli Volts for micbias1 output milivolts > + Supported values are in inbetween 1800mV-2850mV in between
Thanks for the review, On 02/07/2019 15:02, Mark Brown wrote: > On Tue, Jul 02, 2019 at 09:09:15AM +0100, Srinivas Kandagatla wrote: > >> +- qcom,micbias1-lvl: >> + Usage: required >> + Value type: <u32> >> + Definition: Should be voltage in milli Volts for micbias1 output > > milivolts > >> + Supported values are in inbetween 1800mV-2850mV > > in between yes, I agree and I will fix them in next version. thanks, srini >
On Tue, Jul 02, 2019 at 03:02:52PM +0100, Mark Brown wrote: > On Tue, Jul 02, 2019 at 09:09:15AM +0100, Srinivas Kandagatla wrote: > > > +- qcom,micbias1-lvl: > > + Usage: required > > + Value type: <u32> > > + Definition: Should be voltage in milli Volts for micbias1 output > > milivolts And a unit suffix in the property name. > > > + Supported values are in inbetween 1800mV-2850mV > > in between
On Tue, Jul 02, 2019 at 09:09:15AM +0100, Srinivas Kandagatla wrote: > 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> > --- > .../bindings/sound/qcom,wcd934x.txt | 188 ++++++++++++++++++ > 1 file changed, 188 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd934x.txt > > diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd934x.txt b/Documentation/devicetree/bindings/sound/qcom,wcd934x.txt > new file mode 100644 > index 000000000000..2b48c98b5b7d > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/qcom,wcd934x.txt > @@ -0,0 +1,188 @@ > +QCOM WCD9340/9341 Codec Bindings > + > +Qualcomm WCD9340/WCD9341 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,250" for SDM845/SDA845 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 Example only has 1 irq. > + > +- interrupt-names: > + Usage: required > + Value type: <String array> > + Definition: Interrupt names of WCD INTR1 and INTR2 > + Should be: "intr1", "intr2" > + > +- reset-gpios: > + Usage: required > + Value type: <String Array> Really? > + Definition: Reset gpio line > + > +- slim-ifc-dev: > + 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 > + > +- qcom,micbias1-lvl: > + Usage: required > + Value type: <u32> > + Definition: Should be voltage in milli Volts for micbias1 output > + Supported values are in inbetween 1800mV-2850mV > + > +- qcom,micbias2-lvl: > + Usage: required > + Value type: <u32> > + Definition: Should be voltage in milli Volts for micbias2 output > + Supported values are in inbetween 1800mV-2850mV > + > +- qcom,micbias3-lvl: > + Usage: required > + Value type: <u32> > + Definition: Should be voltage in milli Volts for micbias3 output > + Supported values are in inbetween 1800mV-2850mV > + > +- qcom,micbias4-lvl: > + Usage: required > + Value type: <u32> > + Definition: Should be voltage in milli Volts for micbias4 output > + Supported values are in inbetween 1800mV-2850mV > + > +- clock-output-names: > + Usage: required > + Value type: <string> > + Definition: Should be the "mclk", corresponding to name > + of the clk output. > + > +- clock-frequency: > + Usage: required > + Definition: Indicating the frequency of mclk output. > + > +- interrupt-controller: > + Usage: required > + Definition: Indicating that this is a interrupt controller > + > +- #interrupt-cells: > + Usage: required > + Value type: <int> > + Definition: should be 1 > + > +- #clock-cells: > + Usage: required > + Value type: <int> > + Definition: should be 0, as there is only one clock out supported. > + > +#sound-dai-cells > + Usage: required > + Value type: <u32> > + Definition: Must be 1 > + > +Example: > + > +wcd9340: audio-codec@1{ > + compatible = "slim217,250"; > + reg = <1 0>; > + reset-gpios = <&tlmm 64 0>; > + slim-ifc-dev = <&wcd9340_ifd>; > + vdd-buck-supply = <&vreg_s4a_1p8>; > + vdd-buck-sido-supply = <&vreg_s4a_1p8>; > + vdd-tx-supply = <&vreg_s4a_1p8>; > + vdd-rx-supply = <&vreg_s4a_1p8>; > + vdd-io-supply = <&vreg_s4a_1p8>; > + qcom,micbias1-lvl = <1800>; > + qcom,micbias2-lvl = <1800>; > + qcom,micbias3-lvl = <1800>; > + qcom,micbias4-lvl = <1800>; > + > + interrupt-parent = <&tlmm>; > + interrupts = <54 IRQ_TYPE_LEVEL_HIGH>; > + interrupt-names = "intr1"; > + interrupt-controller; > + #interrupt-cells = <1>; > + > + #clock-cells = <0>; > + clock-frequency = <9600000>; > + clock-output-names = "mclk"; > + #sound-dai-cells = <1>; > + > + pinctrl@42 { > + compatible = "qcom,wcd9340-pinctrl"; > + gpio-controller; > + #gpio-cells = <2>; > + gpio-ranges = <&wcdpinctrl 0 0 5>; > + reg = <0x42 0x2>; > + ... > + }; > + > + soundwire@c85{ Child nodes need documenting. > + compatible = "qcom,soundwire-v1.3.0"; > + reg = <0xc85 0x40>; > + ... > + }; > +}; > -- > 2.21.0 >
diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd934x.txt b/Documentation/devicetree/bindings/sound/qcom,wcd934x.txt new file mode 100644 index 000000000000..2b48c98b5b7d --- /dev/null +++ b/Documentation/devicetree/bindings/sound/qcom,wcd934x.txt @@ -0,0 +1,188 @@ +QCOM WCD9340/9341 Codec Bindings + +Qualcomm WCD9340/WCD9341 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,250" for SDM845/SDA845 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-gpios: + Usage: required + Value type: <String Array> + Definition: Reset gpio line + +- slim-ifc-dev: + 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 + +- qcom,micbias1-lvl: + Usage: required + Value type: <u32> + Definition: Should be voltage in milli Volts for micbias1 output + Supported values are in inbetween 1800mV-2850mV + +- qcom,micbias2-lvl: + Usage: required + Value type: <u32> + Definition: Should be voltage in milli Volts for micbias2 output + Supported values are in inbetween 1800mV-2850mV + +- qcom,micbias3-lvl: + Usage: required + Value type: <u32> + Definition: Should be voltage in milli Volts for micbias3 output + Supported values are in inbetween 1800mV-2850mV + +- qcom,micbias4-lvl: + Usage: required + Value type: <u32> + Definition: Should be voltage in milli Volts for micbias4 output + Supported values are in inbetween 1800mV-2850mV + +- clock-output-names: + Usage: required + Value type: <string> + Definition: Should be the "mclk", corresponding to name + of the clk output. + +- clock-frequency: + Usage: required + Definition: Indicating the frequency of mclk output. + +- interrupt-controller: + Usage: required + Definition: Indicating that this is a interrupt controller + +- #interrupt-cells: + Usage: required + Value type: <int> + Definition: should be 1 + +- #clock-cells: + Usage: required + Value type: <int> + Definition: should be 0, as there is only one clock out supported. + +#sound-dai-cells + Usage: required + Value type: <u32> + Definition: Must be 1 + +Example: + +wcd9340: audio-codec@1{ + compatible = "slim217,250"; + reg = <1 0>; + reset-gpios = <&tlmm 64 0>; + slim-ifc-dev = <&wcd9340_ifd>; + vdd-buck-supply = <&vreg_s4a_1p8>; + vdd-buck-sido-supply = <&vreg_s4a_1p8>; + vdd-tx-supply = <&vreg_s4a_1p8>; + vdd-rx-supply = <&vreg_s4a_1p8>; + vdd-io-supply = <&vreg_s4a_1p8>; + qcom,micbias1-lvl = <1800>; + qcom,micbias2-lvl = <1800>; + qcom,micbias3-lvl = <1800>; + qcom,micbias4-lvl = <1800>; + + interrupt-parent = <&tlmm>; + interrupts = <54 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "intr1"; + interrupt-controller; + #interrupt-cells = <1>; + + #clock-cells = <0>; + clock-frequency = <9600000>; + clock-output-names = "mclk"; + #sound-dai-cells = <1>; + + pinctrl@42 { + compatible = "qcom,wcd9340-pinctrl"; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&wcdpinctrl 0 0 5>; + reg = <0x42 0x2>; + ... + }; + + soundwire@c85{ + compatible = "qcom,soundwire-v1.3.0"; + reg = <0xc85 0x40>; + ... + }; +};
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> --- .../bindings/sound/qcom,wcd934x.txt | 188 ++++++++++++++++++ 1 file changed, 188 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd934x.txt