12f8e9284SJohan Jonker# SPDX-License-Identifier: GPL-2.0
22f8e9284SJohan Jonker%YAML 1.2
32f8e9284SJohan Jonker---
42f8e9284SJohan Jonker$id: http://devicetree.org/schemas/usb/rockchip,dwc3.yaml#
52f8e9284SJohan Jonker$schema: http://devicetree.org/meta-schemas/core.yaml#
62f8e9284SJohan Jonker
72f8e9284SJohan Jonkertitle: Rockchip SuperSpeed DWC3 USB SoC controller
82f8e9284SJohan Jonker
92f8e9284SJohan Jonkermaintainers:
102f8e9284SJohan Jonker  - Heiko Stuebner <heiko@sntech.de>
112f8e9284SJohan Jonker
122f8e9284SJohan Jonkerdescription:
132f8e9284SJohan Jonker  The common content of the node is defined in snps,dwc3.yaml.
142f8e9284SJohan Jonker
152f8e9284SJohan Jonker  Phy documentation is provided in the following places.
162f8e9284SJohan Jonker
172f8e9284SJohan Jonker  USB2.0 PHY
182f8e9284SJohan Jonker  Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.yaml
192f8e9284SJohan Jonker
202f8e9284SJohan Jonker  Type-C PHY
212f8e9284SJohan Jonker  Documentation/devicetree/bindings/phy/phy-rockchip-typec.txt
222f8e9284SJohan Jonker
232f8e9284SJohan JonkerallOf:
242f8e9284SJohan Jonker  - $ref: snps,dwc3.yaml#
252f8e9284SJohan Jonker
262f8e9284SJohan Jonkerselect:
272f8e9284SJohan Jonker  properties:
282f8e9284SJohan Jonker    compatible:
292f8e9284SJohan Jonker      contains:
302f8e9284SJohan Jonker        enum:
3108f4a6b9SJohan Jonker          - rockchip,rk3328-dwc3
3262a13a9cSMichael Riesch          - rockchip,rk3568-dwc3
332f8e9284SJohan Jonker  required:
342f8e9284SJohan Jonker    - compatible
352f8e9284SJohan Jonker
362f8e9284SJohan Jonkerproperties:
372f8e9284SJohan Jonker  compatible:
382f8e9284SJohan Jonker    items:
392f8e9284SJohan Jonker      - enum:
4008f4a6b9SJohan Jonker          - rockchip,rk3328-dwc3
4162a13a9cSMichael Riesch          - rockchip,rk3568-dwc3
422f8e9284SJohan Jonker      - const: snps,dwc3
432f8e9284SJohan Jonker
442f8e9284SJohan Jonker  reg:
452f8e9284SJohan Jonker    maxItems: 1
462f8e9284SJohan Jonker
472f8e9284SJohan Jonker  interrupts:
482f8e9284SJohan Jonker    maxItems: 1
492f8e9284SJohan Jonker
502f8e9284SJohan Jonker  clocks:
5108f4a6b9SJohan Jonker    minItems: 3
522f8e9284SJohan Jonker    items:
532f8e9284SJohan Jonker      - description:
542f8e9284SJohan Jonker          Controller reference clock, must to be 24 MHz
552f8e9284SJohan Jonker      - description:
562f8e9284SJohan Jonker          Controller suspend clock, must to be 24 MHz or 32 KHz
572f8e9284SJohan Jonker      - description:
582f8e9284SJohan Jonker          Master/Core clock, must to be >= 62.5 MHz for SS
592f8e9284SJohan Jonker          operation and >= 30MHz for HS operation
602f8e9284SJohan Jonker      - description:
612f8e9284SJohan Jonker          Controller grf clock
622f8e9284SJohan Jonker
632f8e9284SJohan Jonker  clock-names:
6408f4a6b9SJohan Jonker    minItems: 3
652f8e9284SJohan Jonker    items:
662f8e9284SJohan Jonker      - const: ref_clk
672f8e9284SJohan Jonker      - const: suspend_clk
682f8e9284SJohan Jonker      - const: bus_clk
692f8e9284SJohan Jonker      - const: grf_clk
702f8e9284SJohan Jonker
712f8e9284SJohan Jonker  power-domains:
722f8e9284SJohan Jonker    maxItems: 1
732f8e9284SJohan Jonker
742f8e9284SJohan Jonker  resets:
752f8e9284SJohan Jonker    maxItems: 1
762f8e9284SJohan Jonker
772f8e9284SJohan Jonker  reset-names:
782f8e9284SJohan Jonker    const: usb3-otg
792f8e9284SJohan Jonker
802f8e9284SJohan JonkerunevaluatedProperties: false
812f8e9284SJohan Jonker
822f8e9284SJohan Jonkerrequired:
832f8e9284SJohan Jonker  - compatible
842f8e9284SJohan Jonker  - reg
852f8e9284SJohan Jonker  - interrupts
862f8e9284SJohan Jonker  - clocks
872f8e9284SJohan Jonker  - clock-names
882f8e9284SJohan Jonker
892f8e9284SJohan Jonkerexamples:
902f8e9284SJohan Jonker  - |
91*5442e791SRob Herring    #include <dt-bindings/clock/rk3328-cru.h>
922f8e9284SJohan Jonker    #include <dt-bindings/interrupt-controller/arm-gic.h>
932f8e9284SJohan Jonker
942f8e9284SJohan Jonker    bus {
952f8e9284SJohan Jonker      #address-cells = <2>;
962f8e9284SJohan Jonker      #size-cells = <2>;
972f8e9284SJohan Jonker
982f8e9284SJohan Jonker      usbdrd3_0: usb@fe800000 {
99*5442e791SRob Herring        compatible = "rockchip,rk3328-dwc3", "snps,dwc3";
1002f8e9284SJohan Jonker        reg = <0x0 0xfe800000 0x0 0x100000>;
1012f8e9284SJohan Jonker        interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
102*5442e791SRob Herring        clocks = <&cru SCLK_USB3OTG_REF>, <&cru SCLK_USB3OTG_SUSPEND>,
103*5442e791SRob Herring                 <&cru ACLK_USB3OTG>;
1042f8e9284SJohan Jonker        clock-names = "ref_clk", "suspend_clk",
1052f8e9284SJohan Jonker                      "bus_clk", "grf_clk";
1062f8e9284SJohan Jonker        dr_mode = "otg";
1072f8e9284SJohan Jonker      };
1082f8e9284SJohan Jonker    };
109