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