# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/usb/renesas,usb-xhci.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Renesas USB xHCI controllers maintainers: - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> properties: compatible: oneOf: - items: - enum: - renesas,xhci-r8a7742 # RZ/G1H - renesas,xhci-r8a7743 # RZ/G1M - renesas,xhci-r8a7744 # RZ/G1N - renesas,xhci-r8a7790 # R-Car H2 - renesas,xhci-r8a7791 # R-Car M2-W - renesas,xhci-r8a7793 # R-Car M2-N - const: renesas,rcar-gen2-xhci # R-Car Gen2 and RZ/G1 - items: - enum: - renesas,xhci-r8a774a1 # RZ/G2M - renesas,xhci-r8a774b1 # RZ/G2N - renesas,xhci-r8a774c0 # RZ/G2E - renesas,xhci-r8a774e1 # RZ/G2H - renesas,xhci-r8a7795 # R-Car H3 - renesas,xhci-r8a7796 # R-Car M3-W - renesas,xhci-r8a77961 # R-Car M3-W+ - renesas,xhci-r8a77965 # R-Car M3-N - renesas,xhci-r8a77990 # R-Car E3 - const: renesas,rcar-gen3-xhci # R-Car Gen3 and RZ/G2 - items: - enum: - renesas,r9a09g011-xhci # RZ/V2M - renesas,r9a09g055-xhci # RZ/V2MA - const: renesas,rzv2m-xhci # RZ/{V2M, V2MA} reg: maxItems: 1 interrupts: maxItems: 1 clocks: minItems: 1 items: - description: Main clock for host - description: Register access clock clock-names: minItems: 1 items: - const: axi - const: reg phys: maxItems: 1 phy-names: items: - const: usb power-domains: maxItems: 1 resets: maxItems: 1 required: - compatible - reg - interrupts - clocks - power-domains - resets allOf: - $ref: usb-xhci.yaml - if: properties: compatible: contains: enum: - renesas,rzv2m-xhci then: properties: clocks: minItems: 2 clock-names: minItems: 2 required: - clock-names else: properties: clocks: maxItems: 1 unevaluatedProperties: false examples: - | #include <dt-bindings/clock/r8a7795-cpg-mssr.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/power/r8a7795-sysc.h> xhci0: usb@ee000000 { compatible = "renesas,xhci-r8a7795", "renesas,rcar-gen3-xhci"; reg = <0xee000000 0xc00>; interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 328>; power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; resets = <&cpg 328>; };