108 lines
2.5 KiB
YAML
108 lines
2.5 KiB
YAML
|
# 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:
|
||
|
- Piyush Mehta <piyush.mehta@amd.com>
|
||
|
- Michal Simek <michal.simek@amd.com>
|
||
|
|
||
|
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:
|
||
|
VDD 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
|
||
|
peer-hub: false
|
||
|
i2c-bus: false
|
||
|
else:
|
||
|
$ref: /schemas/usb/usb-device.yaml
|
||
|
required:
|
||
|
- peer-hub
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/gpio/gpio.h>
|
||
|
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>;
|
||
|
};
|
||
|
};
|