xref: /linux/Documentation/devicetree/bindings/usb/usb-uhci.yaml (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/usb-uhci.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Generic Platform UHCI Controller
8
9maintainers:
10  - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11
12properties:
13  compatible:
14    oneOf:
15      - const: generic-uhci
16      - const: platform-uhci
17        deprecated: true
18      - items:
19          - enum:
20              - aspeed,ast2400-uhci
21              - aspeed,ast2500-uhci
22              - aspeed,ast2600-uhci
23          - const: generic-uhci
24
25  reg:
26    maxItems: 1
27
28  interrupts:
29    maxItems: 1
30
31  '#ports':
32    $ref: /schemas/types.yaml#/definitions/uint32
33
34  clocks:
35    maxItems: 1
36
37required:
38  - compatible
39  - reg
40  - interrupts
41
42allOf:
43  - $ref: usb-hcd.yaml
44  - if:
45      properties:
46        compatible:
47          contains:
48            const: generic-uhci
49    then:
50      required:
51        - clocks
52
53unevaluatedProperties: false
54
55examples:
56  - |
57    #include <dt-bindings/clock/aspeed-clock.h>
58
59    usb@d8007b00 {
60        compatible = "generic-uhci";
61        reg = <0xd8007b00 0x200>;
62        interrupts = <43>;
63        clocks = <&syscon ASPEED_CLK_GATE_USBUHCICLK>;
64    };
65  - |
66    #include <dt-bindings/clock/aspeed-clock.h>
67
68    usb@1e6b0000 {
69        compatible = "aspeed,ast2500-uhci", "generic-uhci";
70        reg = <0x1e6b0000 0x100>;
71        interrupts = <14>;
72        #ports = <2>;
73        clocks = <&syscon ASPEED_CLK_GATE_USBUHCICLK>;
74    };
75...
76