# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/generic-ehci.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: USB EHCI Controller

maintainers:
  - Greg Kroah-Hartman <gregkh@linuxfoundation.org>

allOf:
  - $ref: usb-hcd.yaml
  - if:
      properties:
        compatible:
          not:
            contains:
              const: ibm,usb-ehci-440epx
    then:
      properties:
        reg:
          maxItems: 1

properties:
  compatible:
    oneOf:
      - items:
          - enum:
              - allwinner,sun4i-a10-ehci
              - allwinner,sun50i-a64-ehci
              - allwinner,sun50i-h6-ehci
              - allwinner,sun50i-h616-ehci
              - allwinner,sun5i-a13-ehci
              - allwinner,sun6i-a31-ehci
              - allwinner,sun7i-a20-ehci
              - allwinner,sun8i-a23-ehci
              - allwinner,sun8i-a83t-ehci
              - allwinner,sun8i-h3-ehci
              - allwinner,sun8i-r40-ehci
              - allwinner,sun8i-v3s-ehci
              - allwinner,sun9i-a80-ehci
              - allwinner,sun20i-d1-ehci
              - aspeed,ast2400-ehci
              - aspeed,ast2500-ehci
              - aspeed,ast2600-ehci
              - brcm,bcm3384-ehci
              - brcm,bcm63268-ehci
              - brcm,bcm6328-ehci
              - brcm,bcm6358-ehci
              - brcm,bcm6362-ehci
              - brcm,bcm6368-ehci
              - brcm,bcm7125-ehci
              - brcm,bcm7346-ehci
              - brcm,bcm7358-ehci
              - brcm,bcm7360-ehci
              - brcm,bcm7362-ehci
              - brcm,bcm7420-ehci
              - brcm,bcm7425-ehci
              - brcm,bcm7435-ehci
              - hpe,gxp-ehci
              - ibm,476gtr-ehci
              - nxp,lpc1850-ehci
              - qca,ar7100-ehci
              - rockchip,rk3588-ehci
              - snps,hsdk-v1.0-ehci
              - socionext,uniphier-ehci
          - const: generic-ehci
      - items:
          - enum:
              - atmel,at91sam9g45-ehci
              - cavium,octeon-6335-ehci
              - ibm,usb-ehci-440epx
              - ibm,usb-ehci-460ex
              - nintendo,hollywood-usb-ehci
              - st,spear600-ehci
          - const: usb-ehci
      - enum:
          - generic-ehci
          - marvell,ac5-ehci
          - marvell,armada-3700-ehci
          - marvell,orion-ehci
          - nuvoton,npcm750-ehci
          - nuvoton,npcm845-ehci
          - ti,ehci-omap
          - usb-ehci

  reg:
    minItems: 1
    maxItems: 2

  interrupts:
    maxItems: 1

  resets:
    minItems: 1
    maxItems: 4

  clocks:
    minItems: 1
    maxItems: 4
    description: |
      In case the Renesas R-Car Gen3 SoCs:
        - if a host only channel: first clock should be host.
        - if a USB DRD channel: first clock should be host and second
          one should be peripheral

  power-domains:
    maxItems: 1

  big-endian:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Set this flag for HCDs with big endian descriptors and big
      endian registers.

  big-endian-desc:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Set this flag for HCDs with big endian descriptors.

  big-endian-regs:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Set this flag for HCDs with big endian registers.

  has-transaction-translator:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Set this flag if EHCI has a Transaction Translator built into
      the root hub.

  needs-reset-on-resume:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Set this flag to force EHCI reset after resume.

  spurious-oc:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Set this flag to indicate that the hardware sometimes turns on
      the OC bit when an over-current isn't actually present.

  phys:
    minItems: 1
    maxItems: 3

  phy-names:
    const: usb

  iommus:
    maxItems: 1

  dr_mode:
    enum:
      - host
      - otg

required:
  - compatible
  - reg
  - interrupts

unevaluatedProperties: false

examples:
  - |
    usb@e0000300 {
        compatible = "ibm,usb-ehci-440epx", "usb-ehci";
        interrupt-parent = <&UIC0>;
        interrupts = <0x1a 4>;
        reg = <0xe0000300 90>, <0xe0000390 70>;
        big-endian;
    };

  - |
    ehci0: usb@1c14000 {
        compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
        reg = <0x01c14000 0x100>;
        interrupts = <39>;
        clocks = <&ahb_gates 1>;
        phys = <&usbphy 1>;
        phy-names = "usb";
    };

...
