# Copyright 2021 The Chromium OS Authors
# SPDX-License-Identifier: Apache-2.0

description: |
    ST STM32 family USB Type-C / Power Delivery. The default values were
    taken from the LL_UCPD_StructInit function defined in the HAL.

compatible: "st,stm32-ucpd"

include: [base.yaml, pinctrl-device.yaml]

properties:
    reg:
      required: true

    clocks:
      required: true

    interrupts:
      required: true

    psc-ucpdclk:
      default: 2
      type: int
      enum:
        - 1
        - 2
        - 4
        - 8
        - 16
        - 32
        - 64
        - 128
      description: |
        Determines the division ratio of a kernel clock pre-scaler
        producing UCPD peripheral clock (ucpd_clk). It is recommended
        to use the pre-scaler so as to set the ucpd_clk frequency in
        the range from 6 to 9 MHz.

    ifrgap:
      type: int
      default: 17
      description: |
        Determines the division ratio of a ucpd_clk divider producing
        inter-frame gap timer clock (tInterFrameGap).
        The division ratio 15 is to apply for Tx clock at the USB PD 2.0
        specification nominal value.
        Valid range: 2 - 32

    transwin:
      type: int
      default: 8
      description: |
        Determines the division ratio of a hbit_clk divider producing
        tTransitionWindow interval.
        Valid range: 2 - 32

    hbitclkdiv:
      type: int
      default: 14
      description: |
        Determines the division ratio of a ucpd_clk divider producing
        half-bit clock (hbit_clk)
        Valid range: 1 - 64

    pinctrl-0:
      required: true

    pinctrl-names:
      required: true
