18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/sound/qcom,wcd934x.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: Bindings for Qualcomm WCD9340/WCD9341 Audio Codec 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cidescription: | 138c2ecf20Sopenharmony_ci Qualcomm WCD9340/WCD9341 Codec is a standalone Hi-Fi audio codec IC. 148c2ecf20Sopenharmony_ci It has in-built Soundwire controller, pin controller, interrupt mux and 158c2ecf20Sopenharmony_ci supports both I2S/I2C and SLIMbus audio interfaces. 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciproperties: 188c2ecf20Sopenharmony_ci compatible: 198c2ecf20Sopenharmony_ci const: slim217,250 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci reg: 228c2ecf20Sopenharmony_ci maxItems: 1 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci interrupts: 258c2ecf20Sopenharmony_ci maxItems: 1 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci reset-gpios: 288c2ecf20Sopenharmony_ci description: GPIO spec for reset line to use 298c2ecf20Sopenharmony_ci maxItems: 1 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci slim-ifc-dev: true 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci clocks: 348c2ecf20Sopenharmony_ci maxItems: 1 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci clock-names: 378c2ecf20Sopenharmony_ci const: extclk 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci vdd-buck-supply: 408c2ecf20Sopenharmony_ci description: A reference to the 1.8V buck supply 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci vdd-buck-sido-supply: 438c2ecf20Sopenharmony_ci description: A reference to the 1.8V SIDO buck supply 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci vdd-rx-supply: 468c2ecf20Sopenharmony_ci description: A reference to the 1.8V rx supply 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci vdd-tx-supply: 498c2ecf20Sopenharmony_ci description: A reference to the 1.8V tx supply 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci vdd-vbat-supply: 528c2ecf20Sopenharmony_ci description: A reference to the vbat supply 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci vdd-io-supply: 558c2ecf20Sopenharmony_ci description: A reference to the 1.8V I/O supply 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci vdd-micbias-supply: 588c2ecf20Sopenharmony_ci description: A reference to the micbias supply 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci qcom,micbias1-microvolt: 618c2ecf20Sopenharmony_ci description: micbias1 voltage 628c2ecf20Sopenharmony_ci minimum: 1800000 638c2ecf20Sopenharmony_ci maximum: 2850000 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci qcom,micbias2-microvolt: 668c2ecf20Sopenharmony_ci description: micbias2 voltage 678c2ecf20Sopenharmony_ci minimum: 1800000 688c2ecf20Sopenharmony_ci maximum: 2850000 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci qcom,micbias3-microvolt: 718c2ecf20Sopenharmony_ci description: micbias3 voltage 728c2ecf20Sopenharmony_ci minimum: 1800000 738c2ecf20Sopenharmony_ci maximum: 2850000 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci qcom,micbias4-microvolt: 768c2ecf20Sopenharmony_ci description: micbias4 voltage 778c2ecf20Sopenharmony_ci minimum: 1800000 788c2ecf20Sopenharmony_ci maximum: 2850000 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_ci clock-output-names: 818c2ecf20Sopenharmony_ci const: mclk 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ci clock-frequency: 848c2ecf20Sopenharmony_ci description: Clock frequency of output clk in Hz 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ci interrupt-controller: true 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ci '#interrupt-cells': 898c2ecf20Sopenharmony_ci const: 1 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ci '#clock-cells': 928c2ecf20Sopenharmony_ci const: 0 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci '#sound-dai-cells': 958c2ecf20Sopenharmony_ci const: 1 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci "#address-cells": 988c2ecf20Sopenharmony_ci const: 1 998c2ecf20Sopenharmony_ci 1008c2ecf20Sopenharmony_ci "#size-cells": 1018c2ecf20Sopenharmony_ci const: 1 1028c2ecf20Sopenharmony_ci 1038c2ecf20Sopenharmony_ci gpio@42: 1048c2ecf20Sopenharmony_ci type: object 1058c2ecf20Sopenharmony_ci $ref: ../gpio/qcom,wcd934x-gpio.yaml# 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_cipatternProperties: 1088c2ecf20Sopenharmony_ci "^.*@[0-9a-f]+$": 1098c2ecf20Sopenharmony_ci type: object 1108c2ecf20Sopenharmony_ci description: | 1118c2ecf20Sopenharmony_ci WCD934x subnode for each slave devices. Bindings of each subnodes 1128c2ecf20Sopenharmony_ci depends on the specific driver providing the functionality and 1138c2ecf20Sopenharmony_ci documented in their respective bindings. 1148c2ecf20Sopenharmony_ci 1158c2ecf20Sopenharmony_ci properties: 1168c2ecf20Sopenharmony_ci reg: 1178c2ecf20Sopenharmony_ci maxItems: 1 1188c2ecf20Sopenharmony_ci 1198c2ecf20Sopenharmony_ci required: 1208c2ecf20Sopenharmony_ci - reg 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_cirequired: 1238c2ecf20Sopenharmony_ci - compatible 1248c2ecf20Sopenharmony_ci - reg 1258c2ecf20Sopenharmony_ci - reset-gpios 1268c2ecf20Sopenharmony_ci - slim-ifc-dev 1278c2ecf20Sopenharmony_ci - interrupts 1288c2ecf20Sopenharmony_ci - interrupt-controller 1298c2ecf20Sopenharmony_ci - clock-frequency 1308c2ecf20Sopenharmony_ci - clock-output-names 1318c2ecf20Sopenharmony_ci - qcom,micbias1-microvolt 1328c2ecf20Sopenharmony_ci - qcom,micbias2-microvolt 1338c2ecf20Sopenharmony_ci - qcom,micbias3-microvolt 1348c2ecf20Sopenharmony_ci - qcom,micbias4-microvolt 1358c2ecf20Sopenharmony_ci - "#interrupt-cells" 1368c2ecf20Sopenharmony_ci - "#clock-cells" 1378c2ecf20Sopenharmony_ci - "#sound-dai-cells" 1388c2ecf20Sopenharmony_ci - "#address-cells" 1398c2ecf20Sopenharmony_ci - "#size-cells" 1408c2ecf20Sopenharmony_ci 1418c2ecf20Sopenharmony_ciadditionalProperties: false 1428c2ecf20Sopenharmony_ci 1438c2ecf20Sopenharmony_ciexamples: 1448c2ecf20Sopenharmony_ci - | 1458c2ecf20Sopenharmony_ci codec@1,0{ 1468c2ecf20Sopenharmony_ci compatible = "slim217,250"; 1478c2ecf20Sopenharmony_ci reg = <1 0>; 1488c2ecf20Sopenharmony_ci reset-gpios = <&tlmm 64 0>; 1498c2ecf20Sopenharmony_ci slim-ifc-dev = <&wcd9340_ifd>; 1508c2ecf20Sopenharmony_ci #sound-dai-cells = <1>; 1518c2ecf20Sopenharmony_ci interrupt-parent = <&tlmm>; 1528c2ecf20Sopenharmony_ci interrupts = <54 4>; 1538c2ecf20Sopenharmony_ci interrupt-controller; 1548c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 1558c2ecf20Sopenharmony_ci #clock-cells = <0>; 1568c2ecf20Sopenharmony_ci clock-frequency = <9600000>; 1578c2ecf20Sopenharmony_ci clock-output-names = "mclk"; 1588c2ecf20Sopenharmony_ci qcom,micbias1-microvolt = <1800000>; 1598c2ecf20Sopenharmony_ci qcom,micbias2-microvolt = <1800000>; 1608c2ecf20Sopenharmony_ci qcom,micbias3-microvolt = <1800000>; 1618c2ecf20Sopenharmony_ci qcom,micbias4-microvolt = <1800000>; 1628c2ecf20Sopenharmony_ci clock-names = "extclk"; 1638c2ecf20Sopenharmony_ci clocks = <&rpmhcc 2>; 1648c2ecf20Sopenharmony_ci 1658c2ecf20Sopenharmony_ci #address-cells = <1>; 1668c2ecf20Sopenharmony_ci #size-cells = <1>; 1678c2ecf20Sopenharmony_ci 1688c2ecf20Sopenharmony_ci gpio@42 { 1698c2ecf20Sopenharmony_ci compatible = "qcom,wcd9340-gpio"; 1708c2ecf20Sopenharmony_ci reg = <0x42 0x2>; 1718c2ecf20Sopenharmony_ci gpio-controller; 1728c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1738c2ecf20Sopenharmony_ci }; 1748c2ecf20Sopenharmony_ci }; 1758c2ecf20Sopenharmony_ci 1768c2ecf20Sopenharmony_ci... 177