0001 # SPDX-License-Identifier: GPL-2.0-only
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/usb/renesas,usb3-peri.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Renesas USB 3.0 Peripheral controller
0008
0009 maintainers:
0010 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
0011
0012 properties:
0013 compatible:
0014 items:
0015 - enum:
0016 - renesas,r8a774a1-usb3-peri # RZ/G2M
0017 - renesas,r8a774b1-usb3-peri # RZ/G2N
0018 - renesas,r8a774c0-usb3-peri # RZ/G2E
0019 - renesas,r8a774e1-usb3-peri # RZ/G2H
0020 - renesas,r8a7795-usb3-peri # R-Car H3
0021 - renesas,r8a7796-usb3-peri # R-Car M3-W
0022 - renesas,r8a77961-usb3-peri # R-Car M3-W+
0023 - renesas,r8a77965-usb3-peri # R-Car M3-N
0024 - renesas,r8a77990-usb3-peri # R-Car E3
0025 - const: renesas,rcar-gen3-usb3-peri
0026
0027 reg:
0028 maxItems: 1
0029
0030 interrupts:
0031 maxItems: 1
0032
0033 clocks:
0034 maxItems: 1
0035
0036 phys:
0037 maxItems: 1
0038
0039 phy-names:
0040 const: usb
0041
0042 power-domains:
0043 maxItems: 1
0044
0045 resets:
0046 maxItems: 1
0047
0048 usb-role-switch:
0049 $ref: /schemas/types.yaml#/definitions/flag
0050 description: Support role switch.
0051
0052 companion:
0053 $ref: /schemas/types.yaml#/definitions/phandle
0054 description: phandle of a companion.
0055
0056 ports:
0057 $ref: /schemas/graph.yaml#/properties/ports
0058 description: |
0059 any connector to the data bus of this controller should be modelled
0060 using the OF graph bindings specified, if the "usb-role-switch"
0061 property is used.
0062
0063 properties:
0064 port@0:
0065 $ref: /schemas/graph.yaml#/properties/port
0066 description: High Speed (HS) data bus.
0067
0068 port@1:
0069 $ref: /schemas/graph.yaml#/properties/port
0070 description: Super Speed (SS) data bus.
0071
0072 required:
0073 - port@0
0074 - port@1
0075
0076 required:
0077 - compatible
0078 - interrupts
0079 - clocks
0080
0081 additionalProperties: false
0082
0083 examples:
0084 - |
0085 #include <dt-bindings/clock/r8a774c0-cpg-mssr.h>
0086 #include <dt-bindings/interrupt-controller/arm-gic.h>
0087 #include <dt-bindings/power/r8a774c0-sysc.h>
0088
0089 usb3_peri0: usb@ee020000 {
0090 compatible = "renesas,r8a774c0-usb3-peri", "renesas,rcar-gen3-usb3-peri";
0091 reg = <0xee020000 0x400>;
0092 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
0093 clocks = <&cpg CPG_MOD 328>;
0094 companion = <&xhci0>;
0095 usb-role-switch;
0096
0097 ports {
0098 #address-cells = <1>;
0099 #size-cells = <0>;
0100 port@0 {
0101 reg = <0>;
0102 usb3_hs_ep: endpoint {
0103 remote-endpoint = <&hs_ep>;
0104 };
0105 };
0106 port@1 {
0107 reg = <1>;
0108 usb3_role_switch: endpoint {
0109 remote-endpoint = <&hd3ss3220_out_ep>;
0110 };
0111 };
0112 };
0113 };