18d13bc63SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 28d13bc63SEmmanuel Vadot%YAML 1.2 38d13bc63SEmmanuel Vadot--- 48d13bc63SEmmanuel Vadot$id: http://devicetree.org/schemas/usb/qcom,wcd939x-usbss.yaml# 58d13bc63SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 68d13bc63SEmmanuel Vadot 78d13bc63SEmmanuel Vadottitle: Qualcomm WCD9380/WCD9385 USB SubSystem Altmode/Analog Audio Switch 88d13bc63SEmmanuel Vadot 98d13bc63SEmmanuel Vadotmaintainers: 108d13bc63SEmmanuel Vadot - Neil Armstrong <neil.armstrong@linaro.org> 118d13bc63SEmmanuel Vadot 128d13bc63SEmmanuel Vadotdescription: 138d13bc63SEmmanuel Vadot Qualcomm WCD9390/WCD9395 is a standalone Hi-Fi audio codec IC with a 148d13bc63SEmmanuel Vadot functionally separate USB SubSystem for Altmode/Analog Audio Switch 158d13bc63SEmmanuel Vadot accessible over an I2C interface. 168d13bc63SEmmanuel Vadot The Audio Headphone and Microphone data path between the Codec and the 178d13bc63SEmmanuel Vadot USB-C Mux subsystems are external to the IC, thus requiring DT port-endpoint 188d13bc63SEmmanuel Vadot graph description to handle USB-C altmode & orientation switching for Audio 198d13bc63SEmmanuel Vadot Accessory Mode. 208d13bc63SEmmanuel Vadot 218d13bc63SEmmanuel Vadotproperties: 228d13bc63SEmmanuel Vadot compatible: 238d13bc63SEmmanuel Vadot oneOf: 248d13bc63SEmmanuel Vadot - const: qcom,wcd9390-usbss 258d13bc63SEmmanuel Vadot - items: 268d13bc63SEmmanuel Vadot - const: qcom,wcd9395-usbss 278d13bc63SEmmanuel Vadot - const: qcom,wcd9390-usbss 288d13bc63SEmmanuel Vadot 298d13bc63SEmmanuel Vadot reg: 308d13bc63SEmmanuel Vadot maxItems: 1 318d13bc63SEmmanuel Vadot 328d13bc63SEmmanuel Vadot reset-gpios: 338d13bc63SEmmanuel Vadot maxItems: 1 348d13bc63SEmmanuel Vadot 358d13bc63SEmmanuel Vadot vdd-supply: 368d13bc63SEmmanuel Vadot description: USBSS VDD power supply 378d13bc63SEmmanuel Vadot 38*01950c46SEmmanuel Vadot mode-switch: true 39*01950c46SEmmanuel Vadot orientation-switch: true 408d13bc63SEmmanuel Vadot 418d13bc63SEmmanuel Vadot ports: 428d13bc63SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 438d13bc63SEmmanuel Vadot properties: 448d13bc63SEmmanuel Vadot port@0: 458d13bc63SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 468d13bc63SEmmanuel Vadot description: 478d13bc63SEmmanuel Vadot A port node to link the WCD939x USB SubSystem to a TypeC controller for the 488d13bc63SEmmanuel Vadot purpose of handling altmode muxing and orientation switching. 498d13bc63SEmmanuel Vadot 508d13bc63SEmmanuel Vadot port@1: 518d13bc63SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 528d13bc63SEmmanuel Vadot description: 538d13bc63SEmmanuel Vadot A port node to link the WCD939x USB SubSystem to the Codec SubSystem for the 548d13bc63SEmmanuel Vadot purpose of handling USB-C Audio Accessory Mode muxing and orientation switching. 558d13bc63SEmmanuel Vadot 568d13bc63SEmmanuel Vadotrequired: 578d13bc63SEmmanuel Vadot - compatible 588d13bc63SEmmanuel Vadot - reg 598d13bc63SEmmanuel Vadot - ports 608d13bc63SEmmanuel Vadot 61*01950c46SEmmanuel VadotallOf: 62*01950c46SEmmanuel Vadot - $ref: usb-switch.yaml# 63*01950c46SEmmanuel Vadot 648d13bc63SEmmanuel VadotadditionalProperties: false 658d13bc63SEmmanuel Vadot 668d13bc63SEmmanuel Vadotexamples: 678d13bc63SEmmanuel Vadot - | 688d13bc63SEmmanuel Vadot i2c { 698d13bc63SEmmanuel Vadot #address-cells = <1>; 708d13bc63SEmmanuel Vadot #size-cells = <0>; 718d13bc63SEmmanuel Vadot 728d13bc63SEmmanuel Vadot typec-mux@42 { 738d13bc63SEmmanuel Vadot compatible = "qcom,wcd9390-usbss"; 748d13bc63SEmmanuel Vadot reg = <0x42>; 758d13bc63SEmmanuel Vadot 768d13bc63SEmmanuel Vadot vdd-supply = <&vreg_bob>; 778d13bc63SEmmanuel Vadot 788d13bc63SEmmanuel Vadot mode-switch; 798d13bc63SEmmanuel Vadot orientation-switch; 808d13bc63SEmmanuel Vadot 818d13bc63SEmmanuel Vadot ports { 828d13bc63SEmmanuel Vadot #address-cells = <1>; 838d13bc63SEmmanuel Vadot #size-cells = <0>; 848d13bc63SEmmanuel Vadot 858d13bc63SEmmanuel Vadot port@0 { 868d13bc63SEmmanuel Vadot reg = <0>; 878d13bc63SEmmanuel Vadot wcd9390_usbss_sbu: endpoint { 888d13bc63SEmmanuel Vadot remote-endpoint = <&typec_sbu>; 898d13bc63SEmmanuel Vadot }; 908d13bc63SEmmanuel Vadot }; 918d13bc63SEmmanuel Vadot port@1 { 928d13bc63SEmmanuel Vadot reg = <1>; 938d13bc63SEmmanuel Vadot wcd9390_usbss_codec: endpoint { 948d13bc63SEmmanuel Vadot remote-endpoint = <&wcd9390_codec_usbss>; 958d13bc63SEmmanuel Vadot }; 968d13bc63SEmmanuel Vadot }; 978d13bc63SEmmanuel Vadot }; 988d13bc63SEmmanuel Vadot }; 998d13bc63SEmmanuel Vadot }; 1008d13bc63SEmmanuel Vadot... 101