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

title: Amlogic Meson8, Meson8b, Meson8m2 and GXBB USB2 PHY

maintainers:
  - Martin Blumenstingl <martin.blumenstingl@googlemail.com>

properties:
  compatible:
    oneOf:
      - items:
          - enum:
              - amlogic,meson8-usb2-phy
              - amlogic,meson8b-usb2-phy
              - amlogic,meson8m2-usb2-phy
          - const: amlogic,meson-mx-usb2-phy
      - const: amlogic,meson-gxbb-usb2-phy

  reg:
    maxItems: 1

  clocks:
    minItems: 2

  clock-names:
    items:
      - const: usb_general
      - const: usb

  resets:
    minItems: 1

  "#phy-cells":
    const: 0

  phy-supply:
    description:
      Phandle to a regulator that provides power to the PHY. This
      regulator will be managed during the PHY power on/off sequence.

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - "#phy-cells"

additionalProperties: false

examples:
  - |
    usb-phy@c0000000 {
      compatible = "amlogic,meson-gxbb-usb2-phy";
      reg = <0xc0000000 0x20>;
      resets = <&reset_usb_phy>;
      clocks = <&clk_usb_general>, <&reset_usb>;
      clock-names = "usb_general", "usb";
      phy-supply = <&usb_vbus>;
      #phy-cells = <0>;
    };
