# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/qcom,wcd939x-usbss.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm WCD9380/WCD9385 USB SubSystem Altmode/Analog Audio Switch

maintainers:
  - Neil Armstrong <neil.armstrong@linaro.org>

description:
  Qualcomm WCD9390/WCD9395 is a standalone Hi-Fi audio codec IC with a
  functionally separate USB SubSystem for Altmode/Analog Audio Switch
  accessible over an I2C interface.
  The Audio Headphone and Microphone data path between the Codec and the
  USB-C Mux subsystems are external to the IC, thus requiring DT port-endpoint
  graph description to handle USB-C altmode & orientation switching for Audio
  Accessory Mode.

properties:
  compatible:
    oneOf:
      - const: qcom,wcd9390-usbss
      - items:
          - const: qcom,wcd9395-usbss
          - const: qcom,wcd9390-usbss

  reg:
    maxItems: 1

  reset-gpios:
    maxItems: 1

  vdd-supply:
    description: USBSS VDD power supply

  mode-switch: true
  orientation-switch: true

  ports:
    $ref: /schemas/graph.yaml#/properties/ports
    properties:
      port@0:
        $ref: /schemas/graph.yaml#/properties/port
        description:
          A port node to link the WCD939x USB SubSystem to a TypeC controller for the
          purpose of handling altmode muxing and orientation switching.

      port@1:
        $ref: /schemas/graph.yaml#/properties/port
        description:
          A port node to link the WCD939x USB SubSystem to the Codec SubSystem for the
          purpose of handling USB-C Audio Accessory Mode muxing and orientation switching.

required:
  - compatible
  - reg
  - ports

allOf:
  - $ref: usb-switch.yaml#

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        typec-mux@42 {
            compatible = "qcom,wcd9390-usbss";
            reg = <0x42>;

            vdd-supply = <&vreg_bob>;

            mode-switch;
            orientation-switch;

            ports {
                #address-cells = <1>;
                #size-cells = <0>;

                port@0 {
                    reg = <0>;
                    wcd9390_usbss_sbu: endpoint {
                        remote-endpoint = <&typec_sbu>;
                    };
                };
                port@1 {
                    reg = <1>;
                    wcd9390_usbss_codec: endpoint {
                        remote-endpoint = <&wcd9390_codec_usbss>;
                    };
                };
            };
        };
    };
...
