| # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause | |
| %YAML 1.2 | |
| --- | |
| $id: http://devicetree.org/schemas/regulator/vctrl-regulator.yaml# | |
| $schema: http://devicetree.org/meta-schemas/core.yaml# | |
| title: Voltage controlled regulators | |
| maintainers: | |
| - Heiko Stuebner <heiko@sntech.de> | |
| allOf: | |
| - $ref: regulator.yaml# | |
| properties: | |
| compatible: | |
| const: vctrl-regulator | |
| ctrl-supply: | |
| description: Regulator supplying the control voltage | |
| ctrl-voltage-range: | |
| description: | |
| Array of two integer values describing the range (min/max) of the | |
| control voltage. The values specify the control voltage needed to | |
| generate the corresponding regulator-min/max-microvolt output | |
| voltage. | |
| minItems: 2 | |
| maxItems: 2 | |
| $ref: /schemas/types.yaml#/definitions/uint32-array | |
| min-slew-down-rate: | |
| description: | |
| Describes how slowly the regulator voltage will decay down in the | |
| worst case (lightest expected load). Specified in uV / us (like | |
| main regulator ramp rate). This value is required when | |
| ovp-threshold-percent is specified. | |
| $ref: /schemas/types.yaml#/definitions/uint32 | |
| ovp-threshold-percent: | |
| description: | |
| Overvoltage protection (OVP) threshold of the regulator in percent. | |
| Some regulators have an OVP circuitry which shuts down the regulator | |
| when the actual output voltage deviates beyond a certain margin from | |
| the expected value for a given control voltage. On larger voltage | |
| decreases this can occur undesiredly since the output voltage does | |
| not adjust immediately to changes in the control voltage. To avoid | |
| this situation the vctrl driver breaks down larger voltage decreases | |
| into multiple steps, where each step is within the OVP threshold. | |
| minimum: 0 | |
| maximum: 100 | |
| unevaluatedProperties: false | |
| dependencies: | |
| ovp-threshold-percent: [ min-slew-down-rate ] | |
| required: | |
| - compatible | |
| - ctrl-supply | |
| - ctrl-voltage-range | |
| - regulator-min-microvolt | |
| - regulator-max-microvolt | |
| examples: | |
| - | | |
| vctrl-reg { | |
| compatible = "vctrl-regulator"; | |
| regulator-name = "vctrl_reg"; | |
| ctrl-supply = <&ctrl_reg>; | |
| ctrl-voltage-range = <200000 500000>; | |
| min-slew-down-rate = <225>; | |
| ovp-threshold-percent = <16>; | |
| regulator-min-microvolt = <800000>; | |
| regulator-max-microvolt = <1500000>; | |
| }; | |
| ... |