Based on kernel version 6.11
. Page generated on 2024-09-24 08:21 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause %YAML 1.2 --- $id: http://devicetree.org/schemas/usb/gpio-sbu-mux.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: GPIO-based SBU mux maintainers: - Bjorn Andersson <andersson@kernel.org> description: In USB Type-C applications the SBU lines needs to be connected, disconnected and swapped depending on the altmode and orientation. This binding describes a family of hardware solutions which switches between these modes using GPIO signals. properties: compatible: items: - enum: - nxp,cbdtu02043 - onnn,fsusb43l10x - pericom,pi3usb102 - ti,tmuxhs4212 - const: gpio-sbu-mux enable-gpios: description: Switch enable GPIO select-gpios: description: Orientation select vcc-supply: description: power supply mode-switch: true orientation-switch: true port: $ref: /schemas/graph.yaml#/properties/port description: A port node to link the SBU mux to a TypeC controller for the purpose of handling altmode muxing and orientation switching. required: - compatible - select-gpios - orientation-switch - port allOf: - $ref: usb-switch.yaml# - if: required: - mode-switch then: required: - enable-gpios additionalProperties: false examples: - | #include <dt-bindings/gpio/gpio.h> tcpm { connector { compatible = "usb-c-connector"; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; tcpm_hs_out: endpoint { remote-endpoint = <&usb_hs_phy_in>; }; }; port@1 { reg = <1>; tcpm_ss_out: endpoint { remote-endpoint = <&usb_ss_phy_in>; }; }; port@2 { reg = <2>; tcpm_sbu_out: endpoint { remote-endpoint = <&sbu_mux_in>; }; }; }; }; }; sbu-mux { compatible = "pericom,pi3usb102", "gpio-sbu-mux"; enable-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>; select-gpios = <&tlmm 164 GPIO_ACTIVE_HIGH>; mode-switch; orientation-switch; port { sbu_mux_in: endpoint { remote-endpoint = <&tcpm_sbu_out>; }; }; }; ... |