1 # SPDX-License-Identifier: GPL-2.0-only 1 # SPDX-License-Identifier: GPL-2.0-only 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/usb/renesas 4 $id: http://devicetree.org/schemas/usb/renesas,usb3-peri.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Renesas USB 3.0 Peripheral controller 7 title: Renesas USB 3.0 Peripheral controller 8 8 9 maintainers: 9 maintainers: 10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@ren 10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> 11 11 12 properties: 12 properties: 13 compatible: 13 compatible: 14 oneOf: 14 oneOf: 15 - items: 15 - items: 16 - enum: 16 - enum: 17 - renesas,r8a774a1-usb3-peri # R 17 - renesas,r8a774a1-usb3-peri # RZ/G2M 18 - renesas,r8a774b1-usb3-peri # R 18 - renesas,r8a774b1-usb3-peri # RZ/G2N 19 - renesas,r8a774c0-usb3-peri # R 19 - renesas,r8a774c0-usb3-peri # RZ/G2E 20 - renesas,r8a774e1-usb3-peri # R 20 - renesas,r8a774e1-usb3-peri # RZ/G2H 21 - renesas,r8a7795-usb3-peri # R 21 - renesas,r8a7795-usb3-peri # R-Car H3 22 - renesas,r8a7796-usb3-peri # R 22 - renesas,r8a7796-usb3-peri # R-Car M3-W 23 - renesas,r8a77961-usb3-peri # R 23 - renesas,r8a77961-usb3-peri # R-Car M3-W+ 24 - renesas,r8a77965-usb3-peri # R 24 - renesas,r8a77965-usb3-peri # R-Car M3-N 25 - renesas,r8a77990-usb3-peri # R 25 - renesas,r8a77990-usb3-peri # R-Car E3 26 - const: renesas,rcar-gen3-usb3-peri 26 - const: renesas,rcar-gen3-usb3-peri 27 27 28 - items: 28 - items: 29 - enum: 29 - enum: 30 - renesas,r9a09g011-usb3-peri # 30 - renesas,r9a09g011-usb3-peri # RZ/V2M 31 - renesas,r9a09g055-usb3-peri # << 32 - const: renesas,rzv2m-usb3-peri 31 - const: renesas,rzv2m-usb3-peri 33 32 34 reg: 33 reg: 35 maxItems: 1 34 maxItems: 1 36 35 37 interrupts: 36 interrupts: 38 maxItems: 1 !! 37 minItems: 1 >> 38 items: >> 39 - description: Combined interrupt for DMA, SYS and ERR >> 40 - description: Dual Role Device (DRD) >> 41 - description: Battery Charging >> 42 - description: Global Purpose Input >> 43 >> 44 interrupt-names: >> 45 minItems: 1 >> 46 items: >> 47 - const: all_p >> 48 - const: drd >> 49 - const: bc >> 50 - const: gpi 39 51 40 clocks: 52 clocks: 41 minItems: 1 53 minItems: 1 42 items: 54 items: 43 - description: Main clock 55 - description: Main clock 44 - description: Register access clock 56 - description: Register access clock 45 57 46 clock-names: 58 clock-names: 47 minItems: 1 59 minItems: 1 48 items: 60 items: 49 - const: axi !! 61 - const: aclk 50 - const: reg 62 - const: reg 51 63 52 phys: 64 phys: 53 maxItems: 1 65 maxItems: 1 54 66 55 phy-names: 67 phy-names: 56 const: usb 68 const: usb 57 69 58 power-domains: 70 power-domains: 59 maxItems: 1 71 maxItems: 1 60 72 61 resets: 73 resets: 62 maxItems: 1 !! 74 minItems: 1 >> 75 items: >> 76 - description: Peripheral reset >> 77 - description: DRD reset >> 78 >> 79 reset-names: >> 80 items: >> 81 - const: aresetn_p >> 82 - const: drd_reset 63 83 64 usb-role-switch: 84 usb-role-switch: 65 $ref: /schemas/types.yaml#/definitions/fla 85 $ref: /schemas/types.yaml#/definitions/flag 66 description: Support role switch. 86 description: Support role switch. 67 87 68 companion: 88 companion: 69 $ref: /schemas/types.yaml#/definitions/pha 89 $ref: /schemas/types.yaml#/definitions/phandle 70 description: phandle of a companion. 90 description: phandle of a companion. 71 91 72 ports: 92 ports: 73 $ref: /schemas/graph.yaml#/properties/port 93 $ref: /schemas/graph.yaml#/properties/ports 74 description: | 94 description: | 75 any connector to the data bus of this co 95 any connector to the data bus of this controller should be modelled 76 using the OF graph bindings specified, i 96 using the OF graph bindings specified, if the "usb-role-switch" 77 property is used. 97 property is used. 78 98 79 properties: 99 properties: 80 port@0: 100 port@0: 81 $ref: /schemas/graph.yaml#/properties/ 101 $ref: /schemas/graph.yaml#/properties/port 82 description: High Speed (HS) data bus. 102 description: High Speed (HS) data bus. 83 103 84 port@1: 104 port@1: 85 $ref: /schemas/graph.yaml#/properties/ 105 $ref: /schemas/graph.yaml#/properties/port 86 description: Super Speed (SS) data bus 106 description: Super Speed (SS) data bus. 87 107 88 required: 108 required: 89 - port@0 109 - port@0 90 - port@1 110 - port@1 91 111 92 required: 112 required: 93 - compatible 113 - compatible 94 - interrupts 114 - interrupts 95 - clocks 115 - clocks 96 116 97 allOf: 117 allOf: 98 - if: 118 - if: 99 properties: 119 properties: 100 compatible: 120 compatible: 101 contains: 121 contains: 102 enum: 122 enum: 103 - renesas,rzv2m-usb3-peri 123 - renesas,rzv2m-usb3-peri 104 then: 124 then: 105 properties: 125 properties: 106 clocks: 126 clocks: 107 minItems: 2 127 minItems: 2 108 clock-names: 128 clock-names: 109 minItems: 2 129 minItems: 2 >> 130 interrupts: >> 131 minItems: 4 >> 132 interrupt-names: >> 133 minItems: 4 >> 134 resets: >> 135 minItems: 2 110 required: 136 required: 111 - clock-names 137 - clock-names >> 138 - interrupt-names 112 - resets 139 - resets >> 140 - reset-names 113 else: 141 else: 114 properties: 142 properties: 115 clocks: 143 clocks: >> 144 maxItems: 1 >> 145 interrupts: >> 146 maxItems: 1 >> 147 resets: 116 maxItems: 1 148 maxItems: 1 117 149 118 additionalProperties: false 150 additionalProperties: false 119 151 120 examples: 152 examples: 121 - | 153 - | 122 #include <dt-bindings/clock/r8a774c0-cpg-m 154 #include <dt-bindings/clock/r8a774c0-cpg-mssr.h> 123 #include <dt-bindings/interrupt-controller 155 #include <dt-bindings/interrupt-controller/arm-gic.h> 124 #include <dt-bindings/power/r8a774c0-sysc. 156 #include <dt-bindings/power/r8a774c0-sysc.h> 125 157 126 usb3_peri0: usb@ee020000 { 158 usb3_peri0: usb@ee020000 { 127 compatible = "renesas,r8a774c0-usb3-pe 159 compatible = "renesas,r8a774c0-usb3-peri", "renesas,rcar-gen3-usb3-peri"; 128 reg = <0xee020000 0x400>; 160 reg = <0xee020000 0x400>; 129 interrupts = <GIC_SPI 104 IRQ_TYPE_LEV 161 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 130 clocks = <&cpg CPG_MOD 328>; 162 clocks = <&cpg CPG_MOD 328>; 131 companion = <&xhci0>; 163 companion = <&xhci0>; 132 usb-role-switch; 164 usb-role-switch; 133 165 134 ports { 166 ports { 135 #address-cells = <1>; 167 #address-cells = <1>; 136 #size-cells = <0>; 168 #size-cells = <0>; 137 port@0 { 169 port@0 { 138 reg = <0>; 170 reg = <0>; 139 usb3_hs_ep: endpoint { 171 usb3_hs_ep: endpoint { 140 remote-endpoin 172 remote-endpoint = <&hs_ep>; 141 }; 173 }; 142 }; 174 }; 143 port@1 { 175 port@1 { 144 reg = <1>; 176 reg = <1>; 145 usb3_role_switch: endp 177 usb3_role_switch: endpoint { 146 remote-endpoin 178 remote-endpoint = <&hd3ss3220_out_ep>; 147 }; 179 }; 148 }; 180 }; 149 }; 181 }; 150 }; 182 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.