# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/usb/renesas,rzv2m-usb3drd.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Renesas RZ/V2M USB 3.1 DRD controller maintainers: - Biju Das <biju.das.jz@bp.renesas.com> description: | The RZ/V2{M, MA} USB3.1 DRD module supports the following functions * Role swapping function by the ID pin of the Micro-AB receptacle * Battery Charging Specification Revision 1.2 properties: compatible: items: - enum: - renesas,r9a09g011-usb3drd # RZ/V2M - renesas,r9a09g055-usb3drd # RZ/V2MA - const: renesas,rzv2m-usb3drd reg: maxItems: 1 interrupts: items: - description: Dual Role Device (DRD) - description: Battery Charging - description: Global Purpose Input interrupt-names: items: - const: drd - const: bc - const: gpi clocks: items: - description: Peripheral AXI clock - description: APB clock clock-names: items: - const: axi - const: reg power-domains: maxItems: 1 resets: maxItems: 1 ranges: true '#address-cells': enum: [ 1, 2 ] '#size-cells': enum: [ 1, 2 ] patternProperties: "^usb3peri@[0-9a-f]+$": type: object $ref: /schemas/usb/renesas,usb3-peri.yaml "^usb@[0-9a-f]+$": type: object $ref: renesas,usb-xhci.yaml# required: - compatible - reg - interrupts - interrupt-names - clocks - clock-names - power-domains - resets additionalProperties: false examples: - | #include <dt-bindings/clock/r9a09g011-cpg.h> #include <dt-bindings/interrupt-controller/arm-gic.h> usb3drd: usb@85070400 { compatible = "renesas,r9a09g011-usb3drd", "renesas,rzv2m-usb3drd"; reg = <0x85070400 0x100>; interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>; interrupt-names = "drd", "bc", "gpi"; clocks = <&cpg CPG_MOD R9A09G011_USB_ACLK_P>, <&cpg CPG_MOD R9A09G011_USB_PCLK>; clock-names = "axi", "reg"; power-domains = <&cpg>; resets = <&cpg R9A09G011_USB_DRD_RESET>; ranges; #address-cells = <1>; #size-cells = <1>; usb3host: usb@85060000 { compatible = "renesas,r9a09g011-xhci", "renesas,rzv2m-xhci"; reg = <0x85060000 0x2000>; interrupts = <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD R9A09G011_USB_ACLK_H>, <&cpg CPG_MOD R9A09G011_USB_PCLK>; clock-names = "axi", "reg"; power-domains = <&cpg>; resets = <&cpg R9A09G011_USB_ARESETN_H>; }; usb3peri: usb3peri@85070000 { compatible = "renesas,r9a09g011-usb3-peri", "renesas,rzv2m-usb3-peri"; reg = <0x85070000 0x400>; interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD R9A09G011_USB_ACLK_P>, <&cpg CPG_MOD R9A09G011_USB_PCLK>; clock-names = "axi", "reg"; power-domains = <&cpg>; resets = <&cpg R9A09G011_USB_ARESETN_P>; }; };