1# Copyright 2019-2020, Peter Bigot Consulting, LLC 2# Copyright 2022 Nordic Semiconductor ASA 3# SPDX-License-Identifier: Apache-2.0 4 5description: | 6 Voltage/Current Regulators 7 8 Properties are inherited from Linux. See 9 linux/Documentation/devicetree/bindings/regulator/regulator.yaml. 10 11include: power.yaml 12 13properties: 14 regulator-name: 15 type: string 16 description: A string used as a descriptive name for regulator outputs 17 18 regulator-init-microvolt: 19 type: int 20 description: Voltage set during initialisation 21 22 regulator-min-microvolt: 23 type: int 24 description: smallest voltage consumers may set 25 26 regulator-max-microvolt: 27 type: int 28 description: largest voltage consumers may set 29 30 regulator-microvolt-offset: 31 type: int 32 description: Offset applied to voltages to compensate for voltage drops 33 34 regulator-min-microamp: 35 type: int 36 description: smallest current consumers may set 37 38 regulator-max-microamp: 39 type: int 40 description: largest current consumers may set 41 42 regulator-input-current-limit-microamp: 43 type: int 44 description: maximum input current regulator allows 45 46 regulator-always-on: 47 type: boolean 48 description: boolean, regulator should never be disabled 49 50 regulator-boot-on: 51 type: boolean 52 description: | 53 bootloader/firmware enabled regulator. 54 It's expected that this regulator was left on by the bootloader. 55 If the bootloader didn't leave it on then OS should turn it on 56 at boot but shouldn't prevent it from being turned off later. 57 This property is intended to only be used for regulators where 58 software cannot read the state of the regulator. 59 60 regulator-allow-bypass: 61 type: boolean 62 description: allow the regulator to go into bypass mode 63 64 regulator-allow-set-load: 65 type: boolean 66 description: allow the regulator performance level to be configured 67 68 regulator-ramp-delay: 69 type: int 70 description: | 71 ramp delay for regulator(in uV/us) For hardware which supports disabling 72 ramp rate, it should be explicitly initialised to zero 73 (regulator-ramp-delay = <0>) for disabling ramp delay. 74 75 regulator-enable-ramp-delay: 76 type: int 77 description: | 78 The time taken, in microseconds, for the supply rail to reach the target 79 voltage, plus/minus whatever tolerance the board design requires. This 80 property describes the total system ramp time required due to the 81 combination of internal ramping of the regulator itself, and board design 82 issues such as trace capacitance and load on the supply. 83 84 regulator-settling-time-us: 85 type: int 86 description: | 87 Settling time, in microseconds, for voltage change if regulator have the 88 constant time for any level voltage change. This is useful when regulator 89 have exponential voltage change. 90 91 regulator-settling-time-up-us: 92 type: int 93 description: | 94 Settling time, in microseconds, for voltage increase if the regulator 95 needs a constant time to settle after voltage increases of any level. This 96 is useful for regulators with exponential voltage changes. 97 98 regulator-settling-time-down-us: 99 type: int 100 description: | 101 Settling time, in microseconds, for voltage decrease if the regulator 102 needs a constant time to settle after voltage decreases of any level. This 103 is useful for regulators with exponential voltage changes. 104 105 regulator-soft-start: 106 type: boolean 107 description: Enable soft start so that voltage ramps slowly 108 109 regulator-initial-mode: 110 type: int 111 description: | 112 Initial operating mode. The set of possible operating modes depends on the 113 capabilities of every hardware so each device binding documentation 114 explains which values the regulator supports. 115 116 regulator-allowed-modes: 117 type: array 118 description: | 119 List of operating modes that software is allowed to configure for the 120 regulator at run-time. Elements may be specified in any order. The set of 121 possible operating modes depends on the capabilities of every hardware so 122 each device binding document explains which values the regulator supports. 123 124 regulator-system-load: 125 type: int 126 description: | 127 Load in uA present on regulator that is not captured by any consumer 128 request. 129 130 regulator-pull-down: 131 type: boolean 132 description: Enable pull down resistor when the regulator is disabled. 133 134 regulator-over-current-protection: 135 type: boolean 136 description: Enable over current protection. 137 138 regulator-oc-protection-microamp: 139 type: int 140 description: | 141 Set over current protection limit. This is a limit where hardware performs 142 emergency shutdown. Zero can be passed to disable protection and value '1' 143 indicates that protection should be enabled but limit setting can be 144 omitted. 145 146 regulator-oc-error-microamp: 147 type: int 148 description: | 149 Set over current error limit. This is a limit where part of the hardware 150 propably is malfunctional and damage prevention is requested. Zero can be 151 passed to disable error detection and value '1' indicates that detection 152 should be enabled but limit setting can be omitted. 153 154 regulator-oc-warn-microamp: 155 type: int 156 description: | 157 Set over current warning limit. This is a limit where hardware is assumed 158 still to be functional but approaching limit where it gets damaged. 159 Recovery actions should be initiated. Zero can be passed to disable 160 detection and value '1' indicates that detection should be enabled but 161 limit setting can be omitted. 162 163 regulator-ov-protection-microvolt: 164 type: int 165 description: | 166 Set over voltage protection limit. This is a limit where hardware performs 167 emergency shutdown. Zero can be passed to disable protection and value '1' 168 indicates that protection should be enabled but limit setting can be 169 omitted. Limit is given as microvolt offset from voltage set to regulator. 170 171 regulator-ov-error-microvolt: 172 type: int 173 description: | 174 Set over voltage error limit. This is a limit where part of the hardware 175 propably is malfunctional and damage prevention is requested Zero can be 176 passed to disable error detection and value '1' indicates that detection 177 should be enabled but limit setting can be omitted. Limit is given as 178 microvolt offset from voltage set to regulator. 179 180 regulator-ov-warn-microvolt: 181 type: int 182 description: | 183 Set over voltage warning limit. This is a limit where hardware is assumed 184 still to be functional but approaching limit where it gets damaged. 185 Recovery actions should be initiated. Zero can be passed to disable 186 detection and value '1' indicates that detection should be enabled but 187 limit setting can be omitted. Limit is given as microvolt offset from 188 voltage set to regulator. 189 190 regulator-uv-protection-microvolt: 191 type: int 192 description: | 193 Set over under voltage protection limit. This is a limit where hardware 194 performs emergency shutdown. Zero can be passed to disable protection and 195 value '1' indicates that protection should be enabled but limit setting 196 can be omitted. Limit is given as microvolt offset from voltage set to 197 regulator. 198 199 regulator-uv-error-microvolt: 200 type: int 201 description: | 202 Set under voltage error limit. This is a limit where part of the hardware 203 propably is malfunctional and damage prevention is requested Zero can be 204 passed to disable error detection and value '1' indicates that detection 205 should be enabled but limit setting can be omitted. Limit is given as 206 microvolt offset from voltage set to regulator. 207 208 regulator-uv-warn-microvolt: 209 type: int 210 description: | 211 Set over under voltage warning limit. This is a limit where hardware is 212 assumed still to be functional but approaching limit where it gets 213 damaged. Recovery actions should be initiated. Zero can be passed to 214 disable detection and value '1' indicates that detection should be enabled 215 but limit setting can be omitted. Limit is given as microvolt offset from 216 voltage set to regulator. 217 218 regulator-temp-protection-kelvin: 219 type: int 220 description: | 221 Set over temperature protection limit. This is a limit where hardware 222 performs emergency shutdown. Zero can be passed to disable protection and 223 value '1' indicates that protection should be enabled but limit setting 224 can be omitted. 225 226 regulator-temp-error-kelvin: 227 type: int 228 description: | 229 Set over temperature error limit. This is a limit where part of the 230 hardware propably is malfunctional and damage prevention is requested Zero 231 can be passed to disable error detection and value '1' indicates that 232 detection should be enabled but limit setting can be omitted. 233 234 regulator-temp-warn-kelvin: 235 type: int 236 description: | 237 Set over temperature warning limit. This is a limit where hardware is 238 assumed still to be functional but approaching limit where it gets 239 damaged. Recovery actions should be initiated. Zero can be passed to 240 disable detection and value '1' indicates that detection should be enabled 241 but limit setting can be omitted. 242 243 regulator-active-discharge: 244 type: int 245 enum: 246 - 0 247 - 1 248 description: | 249 tristate, enable/disable active discharge of regulators. The values are: 250 0: Disable active discharge. 251 1: Enable active discharge. 252 Absence of this property will leave configuration to default. 253 254 regulator-max-step-microvolt: 255 type: int 256 description: | 257 Maximum difference between current and target voltages that can be changed 258 safely in a single step. 259