xref: /freebsd/sys/contrib/device-tree/Bindings/usb/realtek,rtd-dwc3.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1*84943d6fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*84943d6fSEmmanuel Vadot# Copyright 2023 Realtek Semiconductor Corporation
3*84943d6fSEmmanuel Vadot%YAML 1.2
4*84943d6fSEmmanuel Vadot---
5*84943d6fSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/realtek,rtd-dwc3.yaml#
6*84943d6fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7*84943d6fSEmmanuel Vadot
8*84943d6fSEmmanuel Vadottitle: Realtek DWC3 USB SoC Controller Glue
9*84943d6fSEmmanuel Vadot
10*84943d6fSEmmanuel Vadotmaintainers:
11*84943d6fSEmmanuel Vadot  - Stanley Chang <stanley_chang@realtek.com>
12*84943d6fSEmmanuel Vadot
13*84943d6fSEmmanuel Vadotdescription:
14*84943d6fSEmmanuel Vadot  The Realtek DHC SoC embeds a DWC3 USB IP Core configured for USB 2.0
15*84943d6fSEmmanuel Vadot  and USB 3.0 in host or dual-role mode.
16*84943d6fSEmmanuel Vadot
17*84943d6fSEmmanuel Vadotproperties:
18*84943d6fSEmmanuel Vadot  compatible:
19*84943d6fSEmmanuel Vadot    items:
20*84943d6fSEmmanuel Vadot      - enum:
21*84943d6fSEmmanuel Vadot          - realtek,rtd1295-dwc3
22*84943d6fSEmmanuel Vadot          - realtek,rtd1315e-dwc3
23*84943d6fSEmmanuel Vadot          - realtek,rtd1319-dwc3
24*84943d6fSEmmanuel Vadot          - realtek,rtd1319d-dwc3
25*84943d6fSEmmanuel Vadot          - realtek,rtd1395-dwc3
26*84943d6fSEmmanuel Vadot          - realtek,rtd1619-dwc3
27*84943d6fSEmmanuel Vadot          - realtek,rtd1619b-dwc3
28*84943d6fSEmmanuel Vadot      - const: realtek,rtd-dwc3
29*84943d6fSEmmanuel Vadot
30*84943d6fSEmmanuel Vadot  reg:
31*84943d6fSEmmanuel Vadot    items:
32*84943d6fSEmmanuel Vadot      - description: Address and length of register set for wrapper of dwc3 core.
33*84943d6fSEmmanuel Vadot      - description: Address and length of register set for pm control.
34*84943d6fSEmmanuel Vadot
35*84943d6fSEmmanuel Vadot  '#address-cells':
36*84943d6fSEmmanuel Vadot    const: 1
37*84943d6fSEmmanuel Vadot
38*84943d6fSEmmanuel Vadot  '#size-cells':
39*84943d6fSEmmanuel Vadot    const: 1
40*84943d6fSEmmanuel Vadot
41*84943d6fSEmmanuel Vadot  ranges: true
42*84943d6fSEmmanuel Vadot
43*84943d6fSEmmanuel VadotpatternProperties:
44*84943d6fSEmmanuel Vadot  "^usb@[0-9a-f]+$":
45*84943d6fSEmmanuel Vadot    $ref: snps,dwc3.yaml#
46*84943d6fSEmmanuel Vadot    description: Required child node
47*84943d6fSEmmanuel Vadot
48*84943d6fSEmmanuel Vadotrequired:
49*84943d6fSEmmanuel Vadot  - compatible
50*84943d6fSEmmanuel Vadot  - reg
51*84943d6fSEmmanuel Vadot  - "#address-cells"
52*84943d6fSEmmanuel Vadot  - "#size-cells"
53*84943d6fSEmmanuel Vadot  - ranges
54*84943d6fSEmmanuel Vadot
55*84943d6fSEmmanuel VadotadditionalProperties: false
56*84943d6fSEmmanuel Vadot
57*84943d6fSEmmanuel Vadotexamples:
58*84943d6fSEmmanuel Vadot  - |
59*84943d6fSEmmanuel Vadot    usb@98013e00 {
60*84943d6fSEmmanuel Vadot        compatible = "realtek,rtd1319d-dwc3", "realtek,rtd-dwc3";
61*84943d6fSEmmanuel Vadot        reg = <0x98013e00 0x140>, <0x98013f60 0x4>;
62*84943d6fSEmmanuel Vadot        #address-cells = <1>;
63*84943d6fSEmmanuel Vadot        #size-cells = <1>;
64*84943d6fSEmmanuel Vadot        ranges;
65*84943d6fSEmmanuel Vadot
66*84943d6fSEmmanuel Vadot        usb@98050000 {
67*84943d6fSEmmanuel Vadot            compatible = "snps,dwc3";
68*84943d6fSEmmanuel Vadot            reg = <0x98050000 0x9000>;
69*84943d6fSEmmanuel Vadot            interrupts = <0 94 4>;
70*84943d6fSEmmanuel Vadot            phys = <&usb2phy &usb3phy>;
71*84943d6fSEmmanuel Vadot            phy-names = "usb2-phy", "usb3-phy";
72*84943d6fSEmmanuel Vadot            dr_mode = "otg";
73*84943d6fSEmmanuel Vadot            usb-role-switch;
74*84943d6fSEmmanuel Vadot            role-switch-default-mode = "host";
75*84943d6fSEmmanuel Vadot            snps,dis_u2_susphy_quirk;
76*84943d6fSEmmanuel Vadot            snps,parkmode-disable-ss-quirk;
77*84943d6fSEmmanuel Vadot            snps,parkmode-disable-hs-quirk;
78*84943d6fSEmmanuel Vadot            maximum-speed = "high-speed";
79*84943d6fSEmmanuel Vadot        };
80*84943d6fSEmmanuel Vadot    };
81