xref: /freebsd/sys/contrib/device-tree/Bindings/usb/aspeed,ast2600-udc.yaml (revision 058ac3e8063366dafa634d9107642e12b038bf09)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (c) 2020 Facebook Inc.
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/usb/aspeed,ast2600-udc.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: ASPEED USB 2.0 Device Controller
9
10maintainers:
11  - Neal Liu <neal_liu@aspeedtech.com>
12
13description: |+
14  The ASPEED USB 2.0 Device Controller implements 1 control endpoint and
15  4 generic endpoints for AST260x.
16
17  Supports independent DMA channel for each generic endpoint.
18  Supports 32/256 stages descriptor mode for all generic endpoints.
19
20properties:
21  compatible:
22    enum:
23      - aspeed,ast2600-udc
24
25  reg:
26    maxItems: 1
27
28  clocks:
29    maxItems: 1
30
31  interrupts:
32    maxItems: 1
33
34required:
35  - compatible
36  - reg
37  - clocks
38  - interrupts
39
40additionalProperties: false
41
42examples:
43  - |
44    #include <dt-bindings/clock/aspeed-clock.h>
45    udc: usb@1e6a2000 {
46        compatible = "aspeed,ast2600-udc";
47        reg = <0x1e6a2000 0x300>;
48        interrupts = <9>;
49        clocks = <&syscon ASPEED_CLK_GATE_USBPORT2CLK>;
50        pinctrl-names = "default";
51        pinctrl-0 = <&pinctrl_usb2bd_default>;
52    };
53