File Index
Files and directories
Sign in
FILE

qcom,wcd939x-usbss.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/usb/qcom,wcd939x-usbss.yaml YAML
  1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/usb/qcom,wcd939x-usbss.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Qualcomm WCD9380/WCD9385 USB SubSystem Altmode/Analog Audio Switch
  8
  9maintainers:
 10  - Neil Armstrong <neil.armstrong@linaro.org>
 11
 12description:
 13  Qualcomm WCD9390/WCD9395 is a standalone Hi-Fi audio codec IC with a
 14  functionally separate USB SubSystem for Altmode/Analog Audio Switch
 15  accessible over an I2C interface.
 16  The Audio Headphone and Microphone data path between the Codec and the
 17  USB-C Mux subsystems are external to the IC, thus requiring DT port-endpoint
 18  graph description to handle USB-C altmode & orientation switching for Audio
 19  Accessory Mode.
 20
 21properties:
 22  compatible:
 23    oneOf:
 24      - const: qcom,wcd9390-usbss
 25      - items:
 26          - const: qcom,wcd9395-usbss
 27          - const: qcom,wcd9390-usbss
 28
 29  reg:
 30    maxItems: 1
 31
 32  reset-gpios:
 33    maxItems: 1
 34
 35  vdd-supply:
 36    description: USBSS VDD power supply
 37
 38  mode-switch: true
 39  orientation-switch: true
 40
 41  ports:
 42    $ref: /schemas/graph.yaml#/properties/ports
 43    properties:
 44      port@0:
 45        $ref: /schemas/graph.yaml#/properties/port
 46        description:
 47          A port node to link the WCD939x USB SubSystem to a TypeC controller for the
 48          purpose of handling altmode muxing and orientation switching.
 49
 50      port@1:
 51        $ref: /schemas/graph.yaml#/properties/port
 52        description:
 53          A port node to link the WCD939x USB SubSystem to the Codec SubSystem for the
 54          purpose of handling USB-C Audio Accessory Mode muxing and orientation switching.
 55
 56required:
 57  - compatible
 58  - reg
 59  - ports
 60
 61allOf:
 62  - $ref: usb-switch.yaml#
 63  - $ref: usb-switch-ports.yaml#
 64
 65additionalProperties: false
 66
 67examples:
 68  - |
 69    i2c {
 70        #address-cells = <1>;
 71        #size-cells = <0>;
 72
 73        typec-mux@42 {
 74            compatible = "qcom,wcd9390-usbss";
 75            reg = <0x42>;
 76
 77            vdd-supply = <&vreg_bob>;
 78
 79            mode-switch;
 80            orientation-switch;
 81
 82            ports {
 83                #address-cells = <1>;
 84                #size-cells = <0>;
 85
 86                port@0 {
 87                    reg = <0>;
 88                    wcd9390_usbss_sbu: endpoint {
 89                        remote-endpoint = <&typec_sbu>;
 90                    };
 91                };
 92                port@1 {
 93                    reg = <1>;
 94                    wcd9390_usbss_codec: endpoint {
 95                        remote-endpoint = <&wcd9390_codec_usbss>;
 96                    };
 97                };
 98            };
 99        };
100    };
101...
~/ Read-only file preview.