1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
4 $id: http://devicetree.org/schemas/usb/gpio-sbu-mux.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: GPIO-based SBU mux
10 - Bjorn Andersson <andersson@kernel.org>
13 In USB Type-C applications the SBU lines needs to be connected, disconnected
14 and swapped depending on the altmode and orientation. This binding describes
15 a family of hardware solutions which switches between these modes using GPIO
29 description: Switch enable GPIO
32 description: Orientation select
35 description: power supply
38 orientation-switch: true
41 $ref: /schemas/graph.yaml#/properties/port
43 A port node to link the SBU mux to a TypeC controller for the purpose of
44 handling altmode muxing and orientation switching.
53 - $ref: usb-switch.yaml#
61 additionalProperties: false
65 #include <dt-bindings/gpio/gpio.h>
69 compatible = "usb-c-connector";
77 tcpm_hs_out: endpoint {
78 remote-endpoint = <&usb_hs_phy_in>;
84 tcpm_ss_out: endpoint {
85 remote-endpoint = <&usb_ss_phy_in>;
91 tcpm_sbu_out: endpoint {
92 remote-endpoint = <&sbu_mux_in>;
100 compatible = "pericom,pi3usb102", "gpio-sbu-mux";
102 enable-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>;
103 select-gpios = <&tlmm 164 GPIO_ACTIVE_HIGH>;
109 sbu_mux_in: endpoint {
110 remote-endpoint = <&tcpm_sbu_out>;