# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/phy/rockchip,rk3399-emmc-phy.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Rockchip EMMC PHY

maintainers:
  - Heiko Stuebner <heiko@sntech.de>

properties:
  compatible:
    const: rockchip,rk3399-emmc-phy

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    const: emmcclk

  drive-impedance-ohm:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Specifies the drive impedance in Ohm.
    enum: [33, 40, 50, 66, 100]
    default: 50

  rockchip,enable-strobe-pulldown:
    type: boolean
    description: |
      Enable internal pull-down for the strobe
      line.  If not set, pull-down is not used.

  rockchip,output-tapdelay-select:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Specifies the phyctrl_otapdlysec register.
    default: 0x4
    maximum: 0xf

  "#phy-cells":
    const: 0

required:
  - compatible
  - reg
  - "#phy-cells"

additionalProperties: false

examples:
  - |
    phy@f780 {
      compatible = "rockchip,rk3399-emmc-phy";
      reg = <0xf780 0x20>;
      clocks = <&sdhci>;
      clock-names = "emmcclk";
      drive-impedance-ohm = <50>;
      #phy-cells = <0>;
    };
