File Index
Files and directories
Sign in
FILE

genesys,gl850g.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/usb/genesys,gl850g.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/genesys,gl850g.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Genesys Logic USB hub controller
  8
  9maintainers:
 10  - Icenowy Zheng <uwu@icenowy.me>
 11
 12properties:
 13  compatible:
 14    enum:
 15      - usb5e3,608
 16      - usb5e3,610
 17      - usb5e3,620
 18      - usb5e3,626
 19
 20  reg: true
 21
 22  reset-gpios:
 23    description: GPIO controlling the RESET# pin.
 24
 25  vdd-supply:
 26    description:
 27      The regulator that provides 3.3V or 5.0V core power to the hub.
 28
 29  peer-hub: true
 30
 31  ports:
 32    $ref: /schemas/graph.yaml#/properties/ports
 33
 34    patternProperties:
 35      '^port@':
 36        $ref: /schemas/graph.yaml#/properties/port
 37
 38        properties:
 39          reg:
 40            minimum: 1
 41            maximum: 4
 42
 43required:
 44  - compatible
 45  - reg
 46
 47allOf:
 48  - $ref: usb-hub.yaml#
 49  - if:
 50      properties:
 51        compatible:
 52          contains:
 53            enum:
 54              - usb5e3,608
 55    then:
 56      properties:
 57        peer-hub: false
 58        vdd-supply: false
 59
 60  - if:
 61      properties:
 62        compatible:
 63          contains:
 64            enum:
 65              - usb5e3,610
 66              - usb5e3,620
 67    then:
 68      properties:
 69        peer-hub: true
 70        vdd-supply: true
 71
 72unevaluatedProperties: false
 73
 74examples:
 75  - |
 76    #include <dt-bindings/gpio/gpio.h>
 77    usb {
 78        dr_mode = "host";
 79        #address-cells = <1>;
 80        #size-cells = <0>;
 81
 82        hub: hub@1 {
 83            compatible = "usb5e3,608";
 84            reg = <1>;
 85            reset-gpios = <&pio 7 2 GPIO_ACTIVE_LOW>;
 86        };
 87    };
 88
 89  - |
 90    #include <dt-bindings/gpio/gpio.h>
 91    usb {
 92        dr_mode = "host";
 93        #address-cells = <1>;
 94        #size-cells = <0>;
 95
 96        /* 2.0 hub on port 1 */
 97        hub_2_0: hub@1 {
 98            compatible = "usb5e3,610";
 99            reg = <1>;
100            peer-hub = <&hub_3_0>;
101            reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
102            vdd-supply = <&vcc_5v>;
103        };
104
105        /* 3.1 hub on port 4 */
106        hub_3_0: hub@2 {
107            compatible = "usb5e3,620";
108            reg = <2>;
109            peer-hub = <&hub_2_0>;
110            reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
111            vdd-supply = <&vcc_5v>;
112        };
113    };
~/ Read-only file preview.