On Fri, Oct 18, 2019 at 01:18:39AM +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.yaml | 169 ++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd934x.yaml
diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd934x.yaml b/Documentation/devicetree/bindings/sound/qcom,wcd934x.yaml new file mode 100644 index 000000000000..299d6b96c339 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/qcom,wcd934x.yaml @@ -0,0 +1,169 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/qcom,wcd934x.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Bindings for Qualcomm WCD9340/WCD9341 Audio Codec
+maintainers:
- Srinivas Kandagatla srinivas.kandagatla@linaro.org
 +description: |
- Qualcomm WCD9340/WCD9341 Codec is a standalone Hi-Fi audio codec IC.
 - It has in-built Soundwire controller, pin controller, interrupt mux and
 - supports both I2S/I2C and SLIMbus audio interfaces.
 +properties:
- compatible:
 - const: slim217,250
 - reg:
 - maxItems: 1
 - interrupts:
 - maxItems: 1
 - reset-gpios:
 - description: GPIO spec for reset line to use
 - maxItems: 1
 - slim-ifc-dev:
 - description: SLIMBus Interface device phandle
 
phandle or...
- maxItems: 1
 
array?
Needs a type if a phandle.
- clocks:
 - maxItems: 1
 - clock-names:
 - const: extclk
 - vdd-buck-supply:
 - description: A reference to the 1.8V buck supply
 - vdd-buck-sido-supply:
 - description: A reference to the 1.8V SIDO buck supply
 - vdd-rx-supply:
 - description: A reference to the 1.8V rx supply
 - vdd-tx-supply:
 - description: A reference to the 1.8V tx supply
 - vdd-vbat-supply:
 - description: A reference to the vbat supply
 - vdd-io-supply:
 - description: A reference to the 1.8V I/O supply
 - vdd-micbias-supply:
 - description: A reference to the micbias supply
 - qcom,micbias1-millivolt:
 
The standard unit is '-microvolt'
- description: Voltage betwee 1800mv-2850mv for micbias1 output
 
typo...
Sounds like constraints.
- allOf:
 - $ref: /schemas/types.yaml#/definitions/uint32
With standard units, you can drop the type.
- qcom,micbias2-millivolt:
 - description: Voltage betwee 1800mv-2850mv for micbias2 output
 - allOf:
 - $ref: /schemas/types.yaml#/definitions/uint32- qcom,micbias3-millivolt:
 - description: Voltage betwee 1800mv-2850mv for micbias3 output
 - allOf:
 - $ref: /schemas/types.yaml#/definitions/uint32- qcom,micbias4-millivolt:
 - description: Voltage betwee 1800mv-2850mv for micbias4 output
 - allOf:
 - $ref: /schemas/types.yaml#/definitions/uint32- clock-output-names:
 - const: mclk
 - clock-frequency:
 - description: Clock frequency of output clk in Hz
 - interrupt-controller: true
 - '#interrupt-cells':
 - const: 1
 - '#clock-cells':
 - const: 0
 - '#sound-dai-cells':
 - const: 1
 - "#address-cells":
 - const: 1
 - "#size-cells":
 - const: 1
 +patternProperties:
- "^.*@[0-9a-f]+$":
 - type: object
 - description: |
 WCD934x subnode for each slave devices. Bindings of each subnodesdepends on the specific driver providing the functionality anddocumented in there respective bindings.
s/there/their/
- properties:
 reg:maxItems: 1- required:
 - reg+required:
- compatible
 
- reg
 
- reset-gpios
 
- slim-ifc-dev
 
- interrupts
 
- interrupt-controller
 
- clock-frequency
 
- clock-output-names
 
- qcom,micbias1-millivolt
 
- qcom,micbias2-millivolt
 
- qcom,micbias3-millivolt
 
- qcom,micbias4-millivolt
 
- "#interrupt-cells"
 
- "#clock-cells"
 
- "#sound-dai-cells"
 
- "#address-cells"
 
- "#size-cells"
 +examples:
- |
 - codec@1,0{
 compatible = "slim217,250";reg = <1 0>;reset-gpios = <&tlmm 64 0>;slim-ifc-dev = <&wcd9340_ifd>;#sound-dai-cells = <1>;interrupt-parent = <&tlmm>;interrupts = <54 4>;interrupt-controller;#interrupt-cells = <1>;#clock-cells = <0>;clock-frequency = <9600000>;clock-output-names = "mclk";qcom,micbias1-millivolt = <1800>;qcom,micbias2-millivolt = <1800>;qcom,micbias3-millivolt = <1800>;qcom,micbias4-millivolt = <1800>;clock-names = "extclk";clocks = <&rpmhcc 2>;#address-cells = <1>;#size-cells = <1>;wcdpinctrl@42 {reg = <0x42 0x2>;};- };
 +...
2.21.0