# 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 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: true 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-microvolt: description: micbias1 voltage minimum: 1800000 maximum: 2850000 qcom,micbias2-microvolt: description: micbias2 voltage minimum: 1800000 maximum: 2850000 qcom,micbias3-microvolt: description: micbias3 voltage minimum: 1800000 maximum: 2850000 qcom,micbias4-microvolt: description: micbias4 voltage minimum: 1800000 maximum: 2850000 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 gpio@42: type: object $ref: ../gpio/qcom,wcd934x-gpio.yaml# patternProperties: "^.*@[0-9a-f]+$": type: object description: | WCD934x subnode for each slave devices. Bindings of each subnodes depends on the specific driver providing the functionality and documented in their respective bindings. properties: reg: maxItems: 1 required: - reg required: - compatible - reg - reset-gpios - slim-ifc-dev - interrupts - interrupt-controller - clock-frequency - clock-output-names - qcom,micbias1-microvolt - qcom,micbias2-microvolt - qcom,micbias3-microvolt - qcom,micbias4-microvolt - "#interrupt-cells" - "#clock-cells" - "#sound-dai-cells" - "#address-cells" - "#size-cells" additionalProperties: false 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-microvolt = <1800000>; qcom,micbias2-microvolt = <1800000>; qcom,micbias3-microvolt = <1800000>; qcom,micbias4-microvolt = <1800000>; clock-names = "extclk"; clocks = <&rpmhcc 2>; #address-cells = <1>; #size-cells = <1>; gpio@42 { compatible = "qcom,wcd9340-gpio"; reg = <0x42 0x2>; gpio-controller; #gpio-cells = <2>; }; }; ...