# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/phy/mediatek,mt7628-usbphy.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Mediatek/Ralink USB PHY

maintainers:
  - Sergio Paracuellos <sergio.paracuellos@gmail.com>

properties:
  compatible:
    enum:
      - mediatek,mt7620-usbphy
      - mediatek,mt7628-usbphy
      - ralink,rt3352-usbphy

  reg:
    maxItems: 1

  "#phy-cells":
    const: 0

  ralink,sysctl:
    description:
      phandle to a ralink syscon register region.
    $ref: /schemas/types.yaml#/definitions/phandle

  resets:
    items:
      - description: USB Host reset controller
      - description: USB Device reset controller

  reset-names:
    items:
      - const: host
      - const: device

required:
  - compatible
  - "#phy-cells"
  - ralink,sysctl
  - resets
  - reset-names

allOf:
  - if:
      properties:
        compatible:
          contains:
            const: mediatek,mt7628-usbphy
    then:
      required:
        - reg
    else:
      properties:
        reg: false

additionalProperties: false

examples:
  - |
    phy@10120000 {
      compatible = "mediatek,mt7628-usbphy";
      reg = <0x10120000 0x1000>;
      #phy-cells = <0>;
      ralink,sysctl = <&sysc>;
      resets = <&rstctrl 22>,
               <&rstctrl 25>;
      reset-names = "host", "device";
    };

...
