xref: /linux/Documentation/devicetree/bindings/usb/fsl,usb2.yaml (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/fsl,usb2.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Freescale SOC USB controllers
8
9maintainers:
10  - Frank Li <Frank.Li@nxp.com>
11
12description: |
13  The device node for a USB controller that is part of a Freescale
14  SOC is as described in the document "Open Firmware Recommended
15  Practice: Universal Serial Bus" with the following modifications
16  and additions.
17
18properties:
19  compatible:
20    oneOf:
21      - enum:
22          - fsl-usb2-mph
23          - fsl-usb2-dr
24      - items:
25          - enum:
26              - fsl-usb2-dr-v2.2
27              - fsl-usb2-dr-v2.5
28          - const: fsl-usb2-dr
29
30  reg:
31    maxItems: 1
32
33  interrupts:
34    maxItems: 1
35
36  phy_type:
37    $ref: /schemas/types.yaml#/definitions/string
38    enum: [ulpi, serial, utmi, utmi_wide]
39
40  port0:
41    $ref: /schemas/types.yaml#/definitions/flag
42    description:
43      Indicates port0 is connected for fsl-usb2-mph compatible controllers.
44
45  port1:
46    $ref: /schemas/types.yaml#/definitions/flag
47    description:
48      Indicates port1 is connected for "fsl-usb2-mph" compatible controllers.
49
50  fsl,invert-drvvbus:
51    $ref: /schemas/types.yaml#/definitions/flag
52    description:
53      for MPC5121 USB0 only. Indicates the
54      port power polarity of internal PHY signal DRVVBUS is inverted.
55
56  fsl,invert-pwr-fault:
57    $ref: /schemas/types.yaml#/definitions/flag
58    description:
59      for MPC5121 USB0 only. Indicates
60      the PWR_FAULT signal polarity is inverted.
61
62required:
63  - compatible
64  - reg
65  - interrupts
66  - phy_type
67
68allOf:
69  - $ref: usb-drd.yaml#
70
71unevaluatedProperties: false
72
73examples:
74  - |
75    #include <dt-bindings/interrupt-controller/irq.h>
76
77    usb@22000 {
78        compatible = "fsl-usb2-mph";
79        reg = <22000 1000>;
80        interrupts = <27 IRQ_TYPE_EDGE_RISING>;
81        phy_type = "ulpi";
82        port0;
83        port1;
84    };
85
86  - |
87    #include <dt-bindings/interrupt-controller/irq.h>
88
89    usb@23000 {
90        compatible = "fsl-usb2-dr";
91        reg = <23000 1000>;
92        interrupts = <26 IRQ_TYPE_EDGE_RISING>;
93        dr_mode = "otg";
94        phy_type = "ulpi";
95    };
96