97 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/qcom,wcd939x.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Qualcomm WCD9380/WCD9385 Audio Codec8 9maintainers:10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>11 12description: |13 Qualcomm WCD9390/WCD9395 Codec is a standalone Hi-Fi audio codec IC.14 It has RX and TX Soundwire devices.15 The WCD9390/WCD9395 IC has a functionally separate USB-C Mux subsystem16 accessible over an I2C interface.17 The Audio Headphone and Microphone data path between the Codec and the USB-C Mux18 subsystems are external to the IC, thus requiring DT port-endpoint graph description19 to handle USB-C altmode & orientation switching for Audio Accessory Mode.20 21allOf:22 - $ref: dai-common.yaml#23 - $ref: qcom,wcd93xx-common.yaml#24 25properties:26 compatible:27 oneOf:28 - const: qcom,wcd9390-codec29 - items:30 - const: qcom,wcd9395-codec31 - const: qcom,wcd9390-codec32 33 mode-switch:34 description: Flag the port as possible handler of altmode switching35 type: boolean36 37 orientation-switch:38 description: Flag the port as possible handler of orientation switching39 type: boolean40 41 port:42 $ref: /schemas/graph.yaml#/properties/port43 description:44 A port node to link the WCD939x Codec node to USB MUX subsystems for the45 purpose of handling altmode muxing and orientation switching to detect and46 enable Audio Accessory Mode.47 48required:49 - compatible50 51unevaluatedProperties: false52 53examples:54 - |55 #include <dt-bindings/gpio/gpio.h>56 codec {57 compatible = "qcom,wcd9390-codec";58 reset-gpios = <&tlmm 32 GPIO_ACTIVE_LOW>;59 #sound-dai-cells = <1>;60 qcom,tx-device = <&wcd939x_tx>;61 qcom,rx-device = <&wcd939x_rx>;62 qcom,micbias1-microvolt = <1800000>;63 qcom,micbias2-microvolt = <1800000>;64 qcom,micbias3-microvolt = <1800000>;65 qcom,micbias4-microvolt = <1800000>;66 qcom,hphl-jack-type-normally-closed;67 qcom,ground-jack-type-normally-closed;68 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;69 qcom,mbhc-headphone-vthreshold-microvolt = <50000>;70 };71 72 /* ... */73 74 soundwire@3210000 {75 #address-cells = <2>;76 #size-cells = <0>;77 reg = <0x03210000 0x2000>;78 wcd939x_rx: codec@0,4 {79 compatible = "sdw20217010e00";80 reg = <0 4>;81 qcom,rx-port-mapping = <1 2 3 4 5 6>;82 };83 };84 85 soundwire@3230000 {86 #address-cells = <2>;87 #size-cells = <0>;88 reg = <0x03230000 0x2000>;89 wcd938x_tx: codec@0,3 {90 compatible = "sdw20217010e00";91 reg = <0 3>;92 qcom,tx-port-mapping = <2 3 4 5>;93 };94 };95 96...97