Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quellcode-Bibliothek gpio-sbu-mux.yaml   Sprache: unbekannt

 
# 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,fsusb42
          - 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>;
            };
        };
    };
...

[ 0.2Quellennavigators  Projekt   ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge