130 lines
3.3 KiB
YAML
130 lines
3.3 KiB
YAML
|
# 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>;
|
||
|
};
|
||
|
};
|