# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/usb/microchip,usb5744.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Microchip USB5744 4-port Hub Controller description: Microchip's USB5744 SmartHubTM IC is a 4 port, SuperSpeed (SS)/Hi-Speed (HS), low power, low pin count configurable and fully compliant with the USB 3.1 Gen 1 specification. The USB5744 also supports Full Speed (FS) and Low Speed (LS) USB signaling, offering complete coverage of all defined USB operating speeds. The new SuperSpeed hubs operate in parallel with the USB 2.0 controller, so 5 Gbps SuperSpeed data transfers are not affected by slower USB 2.0 traffic. maintainers: - Michal Simek - Mubin Sayyed - Radhey Shyam Pandey properties: compatible: enum: - usb424,2744 - usb424,5744 - microchip,usb5744 reg: maxItems: 1 reset-gpios: maxItems: 1 description: GPIO controlling the GRST# pin. vdd-supply: description: 3V3 power supply to the hub vdd2-supply: description: 1V2 power supply to the hub peer-hub: $ref: /schemas/types.yaml#/definitions/phandle description: phandle to the peer hub on the controller. i2c-bus: $ref: /schemas/types.yaml#/definitions/phandle description: phandle of an usb hub connected via i2c bus. required: - compatible - reg allOf: - if: properties: compatible: contains: const: microchip,usb5744 then: properties: reset-gpios: false vdd-supply: false vdd2-supply: false peer-hub: false i2c-bus: false else: $ref: /schemas/usb/usb-device.yaml additionalProperties: false examples: - | #include i2c: i2c { #address-cells = <1>; #size-cells = <0>; hub: usb-hub@2d { compatible = "microchip,usb5744"; reg = <0x2d>; }; }; usb { #address-cells = <1>; #size-cells = <0>; /* 2.0 hub on port 1 */ hub_2_0: hub@1 { compatible = "usb424,2744"; reg = <1>; peer-hub = <&hub_3_0>; i2c-bus = <&hub>; reset-gpios = <&gpio 3 GPIO_ACTIVE_LOW>; }; /* 3.0 hub on port 2 */ hub_3_0: hub@2 { compatible = "usb424,5744"; reg = <2>; peer-hub = <&hub_2_0>; i2c-bus = <&hub>; reset-gpios = <&gpio 3 GPIO_ACTIVE_LOW>; }; };