# Copyright 2019-2020, Peter Bigot Consulting, LLC
# Copyright 2022 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

description: |
  Voltage/Current Regulators

  Properties are inherited from Linux. See
  linux/Documentation/devicetree/bindings/regulator/regulator.yaml.

include: power.yaml

properties:
  regulator-name:
    type: string
    description: A string used as a descriptive name for regulator outputs

  regulator-min-microvolt:
    type: int
    description: smallest voltage consumers may set

  regulator-max-microvolt:
    type: int
    description: largest voltage consumers may set

  regulator-microvolt-offset:
    type: int
    description: Offset applied to voltages to compensate for voltage drops

  regulator-min-microamp:
    type: int
    description: smallest current consumers may set

  regulator-max-microamp:
    type: int
    description: largest current consumers may set

  regulator-input-current-limit-microamp:
    type: int
    description: maximum input current regulator allows

  regulator-always-on:
    type: boolean
    description: boolean, regulator should never be disabled

  regulator-boot-on:
    type: boolean
    description: |
      bootloader/firmware enabled regulator.
      It's expected that this regulator was left on by the bootloader.
      If the bootloader didn't leave it on then OS should turn it on
      at boot but shouldn't prevent it from being turned off later.
      This property is intended to only be used for regulators where
      software cannot read the state of the regulator.

  regulator-allow-bypass:
    type: boolean
    description: allow the regulator to go into bypass mode

  regulator-allow-set-load:
    type: boolean
    description: allow the regulator performance level to be configured

  regulator-ramp-delay:
    type: int
    description: |
      ramp delay for regulator(in uV/us) For hardware which supports disabling
      ramp rate, it should be explicitly initialised to zero
      (regulator-ramp-delay = <0>) for disabling ramp delay.

  regulator-enable-ramp-delay:
    type: int
    description: |
      The time taken, in microseconds, for the supply rail to reach the target
      voltage, plus/minus whatever tolerance the board design requires. This
      property describes the total system ramp time required due to the
      combination of internal ramping of the regulator itself, and board design
      issues such as trace capacitance and load on the supply.

  regulator-settling-time-us:
    type: int
    description: |
      Settling time, in microseconds, for voltage change if regulator have the
      constant time for any level voltage change. This is useful when regulator
      have exponential voltage change.

  regulator-settling-time-up-us:
    type: int
    description: |
      Settling time, in microseconds, for voltage increase if the regulator
      needs a constant time to settle after voltage increases of any level. This
      is useful for regulators with exponential voltage changes.

  regulator-settling-time-down-us:
    type: int
    description: |
      Settling time, in microseconds, for voltage decrease if the regulator
      needs a constant time to settle after voltage decreases of any level. This
      is useful for regulators with exponential voltage changes.

  regulator-soft-start:
    type: boolean
    description: Enable soft start so that voltage ramps slowly

  regulator-initial-mode:
    type: int
    description: |
      Initial operating mode. The set of possible operating modes depends on the
      capabilities of every hardware so each device binding documentation
      explains which values the regulator supports.

  regulator-allowed-modes:
    type: array
    description: |
      List of operating modes that software is allowed to configure for the
      regulator at run-time. Elements may be specified in any order. The set of
      possible operating modes depends on the capabilities of every hardware so
      each device binding document explains which values the regulator supports.

  regulator-system-load:
    type: int
    description: |
      Load in uA present on regulator that is not captured by any consumer
      request.

  regulator-pull-down:
    type: boolean
    description: Enable pull down resistor when the regulator is disabled.

  regulator-over-current-protection:
    type: boolean
    description: Enable over current protection.

  regulator-oc-protection-microamp:
    type: int
    description: |
      Set over current protection limit. This is a limit where hardware performs
      emergency shutdown. Zero can be passed to disable protection and value '1'
      indicates that protection should be enabled but limit setting can be
      omitted.

  regulator-oc-error-microamp:
    type: int
    description: |
      Set over current error limit. This is a limit where part of the hardware
      propably is malfunctional and damage prevention is requested. Zero can be
      passed to disable error detection and value '1' indicates that detection
      should be enabled but limit setting can be omitted.

  regulator-oc-warn-microamp:
    type: int
    description: |
      Set over current warning limit. This is a limit where hardware is assumed
      still to be functional but approaching limit where it gets damaged.
      Recovery actions should be initiated. Zero can be passed to disable
      detection and value '1' indicates that detection should be enabled but
      limit setting can be omitted.

  regulator-ov-protection-microvolt:
    type: int
    description: |
      Set over voltage protection limit. This is a limit where hardware performs
      emergency shutdown. Zero can be passed to disable protection and value '1'
      indicates that protection should be enabled but limit setting can be
      omitted. Limit is given as microvolt offset from voltage set to regulator.

  regulator-ov-error-microvolt:
    type: int
    description: |
      Set over voltage error limit. This is a limit where part of the hardware
      propably is malfunctional and damage prevention is requested Zero can be
      passed to disable error detection and value '1' indicates that detection
      should be enabled but limit setting can be omitted. Limit is given as
      microvolt offset from voltage set to regulator.

  regulator-ov-warn-microvolt:
    type: int
    description: |
      Set over voltage warning limit. This is a limit where hardware is assumed
      still to be functional but approaching limit where it gets damaged.
      Recovery actions should be initiated. Zero can be passed to disable
      detection and value '1' indicates that detection should be enabled but
      limit setting can be omitted. Limit is given as microvolt offset from
      voltage set to regulator.

  regulator-uv-protection-microvolt:
    type: int
    description: |
      Set over under voltage protection limit. This is a limit where hardware
      performs emergency shutdown. Zero can be passed to disable protection and
      value '1' indicates that protection should be enabled but limit setting
      can be omitted. Limit is given as microvolt offset from voltage set to
      regulator.

  regulator-uv-error-microvolt:
    type: int
    description: |
      Set under voltage error limit. This is a limit where part of the hardware
      propably is malfunctional and damage prevention is requested Zero can be
      passed to disable error detection and value '1' indicates that detection
      should be enabled but limit setting can be omitted. Limit is given as
      microvolt offset from voltage set to regulator.

  regulator-uv-warn-microvolt:
    type: int
    description: |
      Set over under voltage warning limit. This is a limit where hardware is
      assumed still to be functional but approaching limit where it gets
      damaged. Recovery actions should be initiated. Zero can be passed to
      disable detection and value '1' indicates that detection should be enabled
      but limit setting can be omitted. Limit is given as microvolt offset from
      voltage set to regulator.

  regulator-temp-protection-kelvin:
    type: int
    description: |
      Set over temperature protection limit. This is a limit where hardware
      performs emergency shutdown. Zero can be passed to disable protection and
      value '1' indicates that protection should be enabled but limit setting
      can be omitted.

  regulator-temp-error-kelvin:
    type: int
    description: |
      Set over temperature error limit. This is a limit where part of the
      hardware propably is malfunctional and damage prevention is requested Zero
      can be passed to disable error detection and value '1' indicates that
      detection should be enabled but limit setting can be omitted.

  regulator-temp-warn-kelvin:
    type: int
    description: |
      Set over temperature warning limit. This is a limit where hardware is
      assumed still to be functional but approaching limit where it gets
      damaged. Recovery actions should be initiated. Zero can be passed to
      disable detection and value '1' indicates that detection should be enabled
      but limit setting can be omitted.

  regulator-active-discharge:
    type: int
    enum:
      - 0
      - 1
    description: |
      tristate, enable/disable active discharge of regulators. The values are:
      0: Disable active discharge.
      1: Enable active discharge.
      Absence of this property will leave configuration to default.

  regulator-coupled-with:
    type: phandle-array
    description: |
      Regulators with which the regulator is coupled. The linkage is 2-way - all
      coupled regulators should be linked with each other. A regulator should
      not be coupled with its supplier.

  regulator-coupled-max-spread:
    type: array
    description: |
      Array of maximum spread between voltages of coupled regulators in
      microvolts, each value in the array relates to the corresponding couple
      specified by the regulator-coupled-with property.

  regulator-max-step-microvolt:
    type: int
    description: |
      Maximum difference between current and target voltages that can be changed
      safely in a single step.
