107 lines
2.5 KiB
YAML
107 lines
2.5 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/usb/snps,dwc3.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Synopsys DesignWare USB3 Controller
|
|
|
|
maintainers:
|
|
- Felipe Balbi <balbi@kernel.org>
|
|
|
|
description:
|
|
This is usually a subnode to DWC3 glue to which it is connected, but can also
|
|
be presented as a standalone DT node with an optional vendor-specific
|
|
compatible string.
|
|
|
|
allOf:
|
|
- $ref: snps,dwc3-common.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
oneOf:
|
|
- const: snps,dwc3
|
|
- const: synopsys,dwc3
|
|
deprecated: true
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
description:
|
|
It's either a single common DWC3 interrupt (dwc_usb3) or individual
|
|
interrupts for the host, gadget and DRD modes.
|
|
minItems: 1
|
|
maxItems: 4
|
|
|
|
interrupt-names:
|
|
minItems: 1
|
|
maxItems: 4
|
|
oneOf:
|
|
- const: dwc_usb3
|
|
- items:
|
|
enum: [host, peripheral, otg, wakeup]
|
|
|
|
clocks:
|
|
description:
|
|
In general the core supports three types of clocks. bus_early is a
|
|
SoC Bus Clock (AHB/AXI/Native). ref generates ITP when the UTMI/ULPI
|
|
PHY is suspended. suspend clocks a small part of the USB3 core when
|
|
SS PHY in P3. But particular cases may differ from that having less
|
|
or more clock sources with another names.
|
|
|
|
clock-names:
|
|
contains:
|
|
anyOf:
|
|
- enum: [bus_early, ref, suspend]
|
|
- true
|
|
|
|
dma-coherent: true
|
|
|
|
iommus:
|
|
maxItems: 1
|
|
|
|
power-domains:
|
|
description:
|
|
The DWC3 has 2 power-domains. The power management unit (PMU) and
|
|
everything else. The PMU is typically always powered and may not have an
|
|
entry.
|
|
minItems: 1
|
|
items:
|
|
- description: Core
|
|
- description: Power management unit
|
|
|
|
resets:
|
|
minItems: 1
|
|
|
|
unevaluatedProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
|
|
examples:
|
|
- |
|
|
usb@4a030000 {
|
|
compatible = "snps,dwc3";
|
|
reg = <0x4a030000 0xcfff>;
|
|
interrupts = <0 92 4>;
|
|
usb-phy = <&usb2_phy>, <&usb3_phy>;
|
|
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
|
};
|
|
- |
|
|
usb@4a000000 {
|
|
compatible = "snps,dwc3";
|
|
reg = <0x4a000000 0xcfff>;
|
|
interrupts = <0 92 4>;
|
|
clocks = <&clk 1>, <&clk 2>, <&clk 3>;
|
|
clock-names = "bus_early", "ref", "suspend";
|
|
phys = <&usb2_phy>, <&usb3_phy>;
|
|
phy-names = "usb2-phy", "usb3-phy";
|
|
snps,dis_u2_susphy_quirk;
|
|
snps,dis_enblslpm_quirk;
|
|
};
|
|
...
|