80 lines
2.4 KiB
YAML
80 lines
2.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/usb/usb-drd.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Generic USB OTG Controller
|
|
|
|
maintainers:
|
|
- Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
|
|
properties:
|
|
otg-rev:
|
|
description:
|
|
Tells usb driver the release number of the OTG and EH supplement with
|
|
which the device and its descriptors are compliant, in binary-coded
|
|
decimal (i.e. 2.0 is 0200H). This property is used if any real OTG
|
|
features (HNP/SRP/ADP) is enabled. If ADP is required, otg-rev should be
|
|
0x0200 or above.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
enum: [0x0100, 0x0120, 0x0130, 0x0200]
|
|
|
|
dr_mode:
|
|
description:
|
|
Tells Dual-Role USB controllers that we want to work on a particular
|
|
mode. In case this attribute isn't passed via DT, USB DRD controllers
|
|
should default to OTG.
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
enum: [host, peripheral, otg]
|
|
default: otg
|
|
|
|
hnp-disable:
|
|
description:
|
|
Tells OTG controllers we want to disable OTG HNP. Normally HNP is the
|
|
basic function of real OTG except you want it to be a srp-capable only B
|
|
device.
|
|
type: boolean
|
|
|
|
srp-disable:
|
|
description:
|
|
Tells OTG controllers we want to disable OTG SRP. SRP is optional for OTG
|
|
device.
|
|
type: boolean
|
|
|
|
adp-disable:
|
|
description:
|
|
Tells OTG controllers we want to disable OTG ADP. ADP is optional for OTG
|
|
device.
|
|
type: boolean
|
|
|
|
usb-role-switch:
|
|
description:
|
|
Indicates that the device is capable of assigning the USB data role
|
|
(USB host or USB device) for a given USB connector, such as Type-C,
|
|
Type-B(micro). See connector/usb-connector.yaml.
|
|
|
|
role-switch-default-mode:
|
|
description:
|
|
Indicates if usb-role-switch is enabled, the device default operation
|
|
mode of controller while usb role is USB_ROLE_NONE.
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
enum: [host, peripheral]
|
|
default: peripheral
|
|
|
|
additionalProperties: true
|
|
|
|
examples:
|
|
- |
|
|
usb@4a030000 {
|
|
compatible = "snps,dwc3";
|
|
reg = <0x4a030000 0xcfff>;
|
|
interrupts = <0 92 4>;
|
|
usb-phy = <&usb2_phy>, <&usb3_phy>;
|
|
maximum-speed = "super-speed";
|
|
dr_mode = "otg";
|
|
phy_type = "utmi_wide";
|
|
otg-rev = <0x0200>;
|
|
adp-disable;
|
|
};
|