18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/usb/renesas,usbhs.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Renesas USBHS (HS-USB) controller
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciproperties:
138c2ecf20Sopenharmony_ci  compatible:
148c2ecf20Sopenharmony_ci    oneOf:
158c2ecf20Sopenharmony_ci      - items:
168c2ecf20Sopenharmony_ci          - const: renesas,usbhs-r7s72100 # RZ/A1
178c2ecf20Sopenharmony_ci          - const: renesas,rza1-usbhs
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci      - items:
208c2ecf20Sopenharmony_ci          - const: renesas,usbhs-r7s9210 # RZ/A2
218c2ecf20Sopenharmony_ci          - const: renesas,rza2-usbhs
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci      - items:
248c2ecf20Sopenharmony_ci          - enum:
258c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7742  # RZ/G1H
268c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7743  # RZ/G1M
278c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7744  # RZ/G1N
288c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7745  # RZ/G1E
298c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a77470 # RZ/G1C
308c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7790  # R-Car H2
318c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7791  # R-Car M2-W
328c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7792  # R-Car V2H
338c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7793  # R-Car M2-N
348c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7794  # R-Car E2
358c2ecf20Sopenharmony_ci          - const: renesas,rcar-gen2-usbhs
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci      - items:
388c2ecf20Sopenharmony_ci          - enum:
398c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a774a1 # RZ/G2M
408c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a774b1 # RZ/G2N
418c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a774c0 # RZ/G2E
428c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a774e1 # RZ/G2H
438c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7795  # R-Car H3
448c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a7796  # R-Car M3-W
458c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a77961 # R-Car M3-W+
468c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a77965 # R-Car M3-N
478c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a77990 # R-Car E3
488c2ecf20Sopenharmony_ci              - renesas,usbhs-r8a77995 # R-Car D3
498c2ecf20Sopenharmony_ci          - const: renesas,rcar-gen3-usbhs
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci  reg:
528c2ecf20Sopenharmony_ci    maxItems: 1
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci  clocks:
558c2ecf20Sopenharmony_ci    minItems: 1
568c2ecf20Sopenharmony_ci    maxItems: 3
578c2ecf20Sopenharmony_ci    items:
588c2ecf20Sopenharmony_ci      - description: USB 2.0 host
598c2ecf20Sopenharmony_ci      - description: USB 2.0 peripheral
608c2ecf20Sopenharmony_ci      - description: USB 2.0 clock selector
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ci  interrupts:
638c2ecf20Sopenharmony_ci    maxItems: 1
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ci  renesas,buswait:
668c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
678c2ecf20Sopenharmony_ci    description: |
688c2ecf20Sopenharmony_ci      Integer to use BUSWAIT register.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci  renesas,enable-gpio:
718c2ecf20Sopenharmony_ci    description: |
728c2ecf20Sopenharmony_ci      gpio specifier to check GPIO determining if USB function should be
738c2ecf20Sopenharmony_ci      enabled.
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ci  phys:
768c2ecf20Sopenharmony_ci    maxItems: 1
778c2ecf20Sopenharmony_ci    items:
788c2ecf20Sopenharmony_ci      - description: phandle + phy specifier pair.
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci  phy-names:
818c2ecf20Sopenharmony_ci    maxItems: 1
828c2ecf20Sopenharmony_ci    items:
838c2ecf20Sopenharmony_ci      - const: usb
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci  dmas:
868c2ecf20Sopenharmony_ci    minItems: 2
878c2ecf20Sopenharmony_ci    maxItems: 4
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ci  dma-names:
908c2ecf20Sopenharmony_ci    minItems: 2
918c2ecf20Sopenharmony_ci    maxItems: 4
928c2ecf20Sopenharmony_ci    items:
938c2ecf20Sopenharmony_ci      - const: ch0
948c2ecf20Sopenharmony_ci      - const: ch1
958c2ecf20Sopenharmony_ci      - const: ch2
968c2ecf20Sopenharmony_ci      - const: ch3
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci  dr_mode: true
998c2ecf20Sopenharmony_ci
1008c2ecf20Sopenharmony_ci  power-domains:
1018c2ecf20Sopenharmony_ci    maxItems: 1
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ci  resets:
1048c2ecf20Sopenharmony_ci    minItems: 1
1058c2ecf20Sopenharmony_ci    maxItems: 2
1068c2ecf20Sopenharmony_ci    items:
1078c2ecf20Sopenharmony_ci      - description: USB 2.0 host
1088c2ecf20Sopenharmony_ci      - description: USB 2.0 peripheral
1098c2ecf20Sopenharmony_ci
1108c2ecf20Sopenharmony_cirequired:
1118c2ecf20Sopenharmony_ci  - compatible
1128c2ecf20Sopenharmony_ci  - reg
1138c2ecf20Sopenharmony_ci  - clocks
1148c2ecf20Sopenharmony_ci  - interrupts
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ciadditionalProperties: false
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ciexamples:
1198c2ecf20Sopenharmony_ci  - |
1208c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
1218c2ecf20Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
1228c2ecf20Sopenharmony_ci    #include <dt-bindings/power/r8a7790-sysc.h>
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ci    usbhs: usb@e6590000 {
1258c2ecf20Sopenharmony_ci        compatible = "renesas,usbhs-r8a7790", "renesas,rcar-gen2-usbhs";
1268c2ecf20Sopenharmony_ci        reg = <0xe6590000 0x100>;
1278c2ecf20Sopenharmony_ci        interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
1288c2ecf20Sopenharmony_ci        clocks = <&cpg CPG_MOD 704>;
1298c2ecf20Sopenharmony_ci    };
130