1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 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,rzv2m-usb3drd.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Renesas RZ/V2M USB 3.1 DRD controller 7 title: Renesas RZ/V2M USB 3.1 DRD controller 8 8 9 maintainers: 9 maintainers: 10 - Biju Das <biju.das.jz@bp.renesas.com> 10 - Biju Das <biju.das.jz@bp.renesas.com> 11 11 12 description: | 12 description: | 13 The RZ/V2{M, MA} USB3.1 DRD module supports 13 The RZ/V2{M, MA} USB3.1 DRD module supports the following functions 14 * Role swapping function by the ID pin of th 14 * Role swapping function by the ID pin of the Micro-AB receptacle 15 * Battery Charging Specification Revision 1. 15 * Battery Charging Specification Revision 1.2 16 16 17 properties: 17 properties: 18 compatible: 18 compatible: 19 items: 19 items: 20 - enum: 20 - enum: 21 - renesas,r9a09g011-usb3drd # RZ/V2 21 - renesas,r9a09g011-usb3drd # RZ/V2M 22 - renesas,r9a09g055-usb3drd # RZ/V2 22 - renesas,r9a09g055-usb3drd # RZ/V2MA 23 - const: renesas,rzv2m-usb3drd 23 - const: renesas,rzv2m-usb3drd 24 24 25 reg: 25 reg: 26 maxItems: 1 26 maxItems: 1 27 27 28 interrupts: 28 interrupts: 29 items: 29 items: 30 - description: Dual Role Device (DRD) 30 - description: Dual Role Device (DRD) 31 - description: Battery Charging 31 - description: Battery Charging 32 - description: Global Purpose Input 32 - description: Global Purpose Input 33 33 34 interrupt-names: 34 interrupt-names: 35 items: 35 items: 36 - const: drd 36 - const: drd 37 - const: bc 37 - const: bc 38 - const: gpi 38 - const: gpi 39 39 40 clocks: 40 clocks: 41 items: 41 items: 42 - description: Peripheral AXI clock 42 - description: Peripheral AXI clock 43 - description: APB clock 43 - description: APB clock 44 44 45 clock-names: 45 clock-names: 46 items: 46 items: 47 - const: axi 47 - const: axi 48 - const: reg 48 - const: reg 49 49 50 power-domains: 50 power-domains: 51 maxItems: 1 51 maxItems: 1 52 52 53 resets: 53 resets: 54 maxItems: 1 54 maxItems: 1 55 55 56 ranges: true 56 ranges: true 57 57 58 '#address-cells': 58 '#address-cells': 59 enum: [ 1, 2 ] 59 enum: [ 1, 2 ] 60 60 61 '#size-cells': 61 '#size-cells': 62 enum: [ 1, 2 ] 62 enum: [ 1, 2 ] 63 63 64 patternProperties: 64 patternProperties: 65 "^usb3peri@[0-9a-f]+$": 65 "^usb3peri@[0-9a-f]+$": 66 type: object 66 type: object 67 $ref: /schemas/usb/renesas,usb3-peri.yaml 67 $ref: /schemas/usb/renesas,usb3-peri.yaml 68 68 69 "^usb@[0-9a-f]+$": 69 "^usb@[0-9a-f]+$": 70 type: object 70 type: object 71 $ref: renesas,usb-xhci.yaml# 71 $ref: renesas,usb-xhci.yaml# 72 72 73 required: 73 required: 74 - compatible 74 - compatible 75 - reg 75 - reg 76 - interrupts 76 - interrupts 77 - interrupt-names 77 - interrupt-names 78 - clocks 78 - clocks 79 - clock-names 79 - clock-names 80 - power-domains 80 - power-domains 81 - resets 81 - resets 82 82 83 additionalProperties: false 83 additionalProperties: false 84 84 85 examples: 85 examples: 86 - | 86 - | 87 #include <dt-bindings/clock/r9a09g011-cpg. 87 #include <dt-bindings/clock/r9a09g011-cpg.h> 88 #include <dt-bindings/interrupt-controller 88 #include <dt-bindings/interrupt-controller/arm-gic.h> 89 89 90 usb3drd: usb@85070400 { 90 usb3drd: usb@85070400 { 91 compatible = "renesas,r9a09g011-usb3dr 91 compatible = "renesas,r9a09g011-usb3drd", "renesas,rzv2m-usb3drd"; 92 reg = <0x85070400 0x100>; 92 reg = <0x85070400 0x100>; 93 interrupts = <GIC_SPI 242 IRQ_TYPE_LEV 93 interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>, 94 <GIC_SPI 243 IRQ_TYPE_LEV 94 <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>, 95 <GIC_SPI 244 IRQ_TYPE_LEV 95 <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>; 96 interrupt-names = "drd", "bc", "gpi"; 96 interrupt-names = "drd", "bc", "gpi"; 97 clocks = <&cpg CPG_MOD R9A09G011_USB_A 97 clocks = <&cpg CPG_MOD R9A09G011_USB_ACLK_P>, 98 <&cpg CPG_MOD R9A09G011_USB_P 98 <&cpg CPG_MOD R9A09G011_USB_PCLK>; 99 clock-names = "axi", "reg"; 99 clock-names = "axi", "reg"; 100 power-domains = <&cpg>; 100 power-domains = <&cpg>; 101 resets = <&cpg R9A09G011_USB_DRD_RESET 101 resets = <&cpg R9A09G011_USB_DRD_RESET>; 102 ranges; 102 ranges; 103 #address-cells = <1>; 103 #address-cells = <1>; 104 #size-cells = <1>; 104 #size-cells = <1>; 105 105 106 usb3host: usb@85060000 { 106 usb3host: usb@85060000 { 107 compatible = "renesas,r9a09g011-xhc 107 compatible = "renesas,r9a09g011-xhci", 108 "renesas,rzv2m-xhci"; 108 "renesas,rzv2m-xhci"; 109 reg = <0x85060000 0x2000>; 109 reg = <0x85060000 0x2000>; 110 interrupts = <GIC_SPI 245 IRQ_TYPE_ 110 interrupts = <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>; 111 clocks = <&cpg CPG_MOD R9A09G011_US 111 clocks = <&cpg CPG_MOD R9A09G011_USB_ACLK_H>, 112 <&cpg CPG_MOD R9A09G011_US 112 <&cpg CPG_MOD R9A09G011_USB_PCLK>; 113 clock-names = "axi", "reg"; 113 clock-names = "axi", "reg"; 114 power-domains = <&cpg>; 114 power-domains = <&cpg>; 115 resets = <&cpg R9A09G011_USB_ARESET 115 resets = <&cpg R9A09G011_USB_ARESETN_H>; 116 }; 116 }; 117 117 118 usb3peri: usb3peri@85070000 { 118 usb3peri: usb3peri@85070000 { 119 compatible = "renesas,r9a09g011-usb 119 compatible = "renesas,r9a09g011-usb3-peri", 120 "renesas,rzv2m-usb3-pe 120 "renesas,rzv2m-usb3-peri"; 121 reg = <0x85070000 0x400>; 121 reg = <0x85070000 0x400>; 122 interrupts = <GIC_SPI 246 IRQ_TYPE_ 122 interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>; 123 clocks = <&cpg CPG_MOD R9A09G011_US 123 clocks = <&cpg CPG_MOD R9A09G011_USB_ACLK_P>, 124 <&cpg CPG_MOD R9A09G011_US 124 <&cpg CPG_MOD R9A09G011_USB_PCLK>; 125 clock-names = "axi", "reg"; 125 clock-names = "axi", "reg"; 126 power-domains = <&cpg>; 126 power-domains = <&cpg>; 127 resets = <&cpg R9A09G011_USB_ARESET 127 resets = <&cpg R9A09G011_USB_ARESETN_P>; 128 }; 128 }; 129 }; 129 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.