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 items: 15 - items: !! 15 - enum: 16 - enum: !! 16 - renesas,r8a774a1-usb3-peri # RZ/G2M 17 - renesas,r8a774a1-usb3-peri # R !! 17 - renesas,r8a774b1-usb3-peri # RZ/G2N 18 - renesas,r8a774b1-usb3-peri # R !! 18 - renesas,r8a774c0-usb3-peri # RZ/G2E 19 - renesas,r8a774c0-usb3-peri # R !! 19 - renesas,r8a774e1-usb3-peri # RZ/G2H 20 - renesas,r8a774e1-usb3-peri # R !! 20 - renesas,r8a7795-usb3-peri # R-Car H3 21 - renesas,r8a7795-usb3-peri # R !! 21 - renesas,r8a7796-usb3-peri # R-Car M3-W 22 - renesas,r8a7796-usb3-peri # R !! 22 - renesas,r8a77961-usb3-peri # R-Car M3-W+ 23 - renesas,r8a77961-usb3-peri # R !! 23 - renesas,r8a77965-usb3-peri # R-Car M3-N 24 - renesas,r8a77965-usb3-peri # R !! 24 - renesas,r8a77990-usb3-peri # R-Car E3 25 - renesas,r8a77990-usb3-peri # R !! 25 - const: renesas,rcar-gen3-usb3-peri 26 - const: renesas,rcar-gen3-usb3-peri << 27 << 28 - items: << 29 - enum: << 30 - renesas,r9a09g011-usb3-peri # << 31 - renesas,r9a09g055-usb3-peri # << 32 - const: renesas,rzv2m-usb3-peri << 33 26 34 reg: 27 reg: 35 maxItems: 1 28 maxItems: 1 36 29 37 interrupts: 30 interrupts: 38 maxItems: 1 31 maxItems: 1 39 32 40 clocks: 33 clocks: 41 minItems: 1 !! 34 maxItems: 1 42 items: << 43 - description: Main clock << 44 - description: Register access clock << 45 << 46 clock-names: << 47 minItems: 1 << 48 items: << 49 - const: axi << 50 - const: reg << 51 35 52 phys: 36 phys: 53 maxItems: 1 37 maxItems: 1 54 38 55 phy-names: 39 phy-names: 56 const: usb 40 const: usb 57 41 58 power-domains: 42 power-domains: 59 maxItems: 1 43 maxItems: 1 60 44 61 resets: 45 resets: 62 maxItems: 1 46 maxItems: 1 63 47 64 usb-role-switch: 48 usb-role-switch: 65 $ref: /schemas/types.yaml#/definitions/fla 49 $ref: /schemas/types.yaml#/definitions/flag 66 description: Support role switch. 50 description: Support role switch. 67 51 68 companion: 52 companion: 69 $ref: /schemas/types.yaml#/definitions/pha 53 $ref: /schemas/types.yaml#/definitions/phandle 70 description: phandle of a companion. 54 description: phandle of a companion. 71 55 72 ports: 56 ports: 73 $ref: /schemas/graph.yaml#/properties/port 57 $ref: /schemas/graph.yaml#/properties/ports 74 description: | 58 description: | 75 any connector to the data bus of this co 59 any connector to the data bus of this controller should be modelled 76 using the OF graph bindings specified, i 60 using the OF graph bindings specified, if the "usb-role-switch" 77 property is used. 61 property is used. 78 62 79 properties: 63 properties: 80 port@0: 64 port@0: 81 $ref: /schemas/graph.yaml#/properties/ 65 $ref: /schemas/graph.yaml#/properties/port 82 description: High Speed (HS) data bus. 66 description: High Speed (HS) data bus. 83 67 84 port@1: 68 port@1: 85 $ref: /schemas/graph.yaml#/properties/ 69 $ref: /schemas/graph.yaml#/properties/port 86 description: Super Speed (SS) data bus 70 description: Super Speed (SS) data bus. 87 71 88 required: 72 required: 89 - port@0 73 - port@0 90 - port@1 74 - port@1 91 75 92 required: 76 required: 93 - compatible 77 - compatible 94 - interrupts 78 - interrupts 95 - clocks 79 - clocks 96 << 97 allOf: << 98 - if: << 99 properties: << 100 compatible: << 101 contains: << 102 enum: << 103 - renesas,rzv2m-usb3-peri << 104 then: << 105 properties: << 106 clocks: << 107 minItems: 2 << 108 clock-names: << 109 minItems: 2 << 110 required: << 111 - clock-names << 112 - resets << 113 else: << 114 properties: << 115 clocks: << 116 maxItems: 1 << 117 80 118 additionalProperties: false 81 additionalProperties: false 119 82 120 examples: 83 examples: 121 - | 84 - | 122 #include <dt-bindings/clock/r8a774c0-cpg-m 85 #include <dt-bindings/clock/r8a774c0-cpg-mssr.h> 123 #include <dt-bindings/interrupt-controller 86 #include <dt-bindings/interrupt-controller/arm-gic.h> 124 #include <dt-bindings/power/r8a774c0-sysc. 87 #include <dt-bindings/power/r8a774c0-sysc.h> 125 88 126 usb3_peri0: usb@ee020000 { 89 usb3_peri0: usb@ee020000 { 127 compatible = "renesas,r8a774c0-usb3-pe 90 compatible = "renesas,r8a774c0-usb3-peri", "renesas,rcar-gen3-usb3-peri"; 128 reg = <0xee020000 0x400>; 91 reg = <0xee020000 0x400>; 129 interrupts = <GIC_SPI 104 IRQ_TYPE_LEV 92 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 130 clocks = <&cpg CPG_MOD 328>; 93 clocks = <&cpg CPG_MOD 328>; 131 companion = <&xhci0>; 94 companion = <&xhci0>; 132 usb-role-switch; 95 usb-role-switch; 133 96 134 ports { 97 ports { 135 #address-cells = <1>; 98 #address-cells = <1>; 136 #size-cells = <0>; 99 #size-cells = <0>; 137 port@0 { 100 port@0 { 138 reg = <0>; 101 reg = <0>; 139 usb3_hs_ep: endpoint { 102 usb3_hs_ep: endpoint { 140 remote-endpoin 103 remote-endpoint = <&hs_ep>; 141 }; 104 }; 142 }; 105 }; 143 port@1 { 106 port@1 { 144 reg = <1>; 107 reg = <1>; 145 usb3_role_switch: endp 108 usb3_role_switch: endpoint { 146 remote-endpoin 109 remote-endpoint = <&hd3ss3220_out_ep>; 147 }; 110 }; 148 }; 111 }; 149 }; 112 }; 150 }; 113 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.