xref: /linux/Documentation/devicetree/bindings/usb/usb.yaml (revision a4eb44a6435d6d8f9e642407a4a06f65eb90ca04)
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/usb.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Generic USB Controller Device Tree Bindings
8
9maintainers:
10  - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11
12select: false
13
14properties:
15  $nodename:
16    pattern: "^usb(@.*)?"
17
18  phys:
19    description:
20      List of all the USB PHYs on this HCD
21
22  phy-names:
23    description:
24      Name specifier for the USB PHY
25
26  usb-phy:
27    $ref: /schemas/types.yaml#/definitions/phandle-array
28    description:
29      List of all the USB PHYs on this HCD to be accepted by the legacy USB
30      Physical Layer subsystem.
31    deprecated: true
32
33  phy_type:
34    description:
35      Tells USB controllers that we want to configure the core to support a
36      UTMI+ PHY with an 8- or 16-bit interface if UTMI+ is selected, UTMI+ low
37      pin interface if ULPI is specified, Serial core/PHY interconnect if
38      serial is specified and High-Speed Inter-Chip feature if HSIC is
39      selected. In case this isn't passed via DT, USB controllers should
40      default to HW capability.
41    $ref: /schemas/types.yaml#/definitions/string
42    enum: [utmi, utmi_wide, ulpi, serial, hsic]
43
44  maximum-speed:
45    description:
46      Tells USB controllers we want to work up to a certain speed. In case this
47      isn't passed via DT, USB controllers should default to their maximum HW
48      capability.
49    $ref: /schemas/types.yaml#/definitions/string
50    enum:
51      - low-speed
52      - full-speed
53      - high-speed
54      - super-speed
55      - super-speed-plus
56      - super-speed-plus-gen2x1
57      - super-speed-plus-gen1x2
58      - super-speed-plus-gen2x2
59
60additionalProperties: true
61
62...
63