151 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only2%YAML 1.23---4$id: http://devicetree.org/schemas/usb/renesas,usb3-peri.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Renesas USB 3.0 Peripheral controller8 9maintainers:10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>11 12properties:13 compatible:14 oneOf:15 - items:16 - enum:17 - renesas,r8a774a1-usb3-peri # RZ/G2M18 - renesas,r8a774b1-usb3-peri # RZ/G2N19 - renesas,r8a774c0-usb3-peri # RZ/G2E20 - renesas,r8a774e1-usb3-peri # RZ/G2H21 - renesas,r8a7795-usb3-peri # R-Car H322 - renesas,r8a7796-usb3-peri # R-Car M3-W23 - renesas,r8a77961-usb3-peri # R-Car M3-W+24 - renesas,r8a77965-usb3-peri # R-Car M3-N25 - renesas,r8a77990-usb3-peri # R-Car E326 - const: renesas,rcar-gen3-usb3-peri27 28 - items:29 - enum:30 - renesas,r9a09g011-usb3-peri # RZ/V2M31 - renesas,r9a09g055-usb3-peri # RZ/V2MA32 - const: renesas,rzv2m-usb3-peri33 34 reg:35 maxItems: 136 37 interrupts:38 maxItems: 139 40 clocks:41 minItems: 142 items:43 - description: Main clock44 - description: Register access clock45 46 clock-names:47 minItems: 148 items:49 - const: axi50 - const: reg51 52 phys:53 maxItems: 154 55 phy-names:56 const: usb57 58 power-domains:59 maxItems: 160 61 resets:62 maxItems: 163 64 usb-role-switch:65 $ref: /schemas/types.yaml#/definitions/flag66 description: Support role switch.67 68 companion:69 $ref: /schemas/types.yaml#/definitions/phandle70 description: phandle of a companion.71 72 ports:73 $ref: /schemas/graph.yaml#/properties/ports74 description: |75 any connector to the data bus of this controller should be modelled76 using the OF graph bindings specified, if the "usb-role-switch"77 property is used.78 79 properties:80 port@0:81 $ref: /schemas/graph.yaml#/properties/port82 description: High Speed (HS) data bus.83 84 port@1:85 $ref: /schemas/graph.yaml#/properties/port86 description: Super Speed (SS) data bus.87 88 required:89 - port@090 - port@191 92required:93 - compatible94 - interrupts95 - clocks96 97allOf:98 - if:99 properties:100 compatible:101 contains:102 enum:103 - renesas,rzv2m-usb3-peri104 then:105 properties:106 clocks:107 minItems: 2108 clock-names:109 minItems: 2110 required:111 - clock-names112 - resets113 else:114 properties:115 clocks:116 maxItems: 1117 118additionalProperties: false119 120examples:121 - |122 #include <dt-bindings/clock/r8a774c0-cpg-mssr.h>123 #include <dt-bindings/interrupt-controller/arm-gic.h>124 #include <dt-bindings/power/r8a774c0-sysc.h>125 126 usb3_peri0: usb@ee020000 {127 compatible = "renesas,r8a774c0-usb3-peri", "renesas,rcar-gen3-usb3-peri";128 reg = <0xee020000 0x400>;129 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;130 clocks = <&cpg CPG_MOD 328>;131 companion = <&xhci0>;132 usb-role-switch;133 134 ports {135 #address-cells = <1>;136 #size-cells = <0>;137 port@0 {138 reg = <0>;139 usb3_hs_ep: endpoint {140 remote-endpoint = <&hs_ep>;141 };142 };143 port@1 {144 reg = <1>;145 usb3_role_switch: endpoint {146 remote-endpoint = <&hd3ss3220_out_ep>;147 };148 };149 };150 };151