brintos

brintos / linux-shallow public Read only

0
0
Text · 12.4 KiB · 1ef380d Raw
305 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/regulator/regulator.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Voltage/Current Regulators8 9maintainers:10  - Liam Girdwood <lgirdwood@gmail.com>11  - Mark Brown <broonie@kernel.org>12 13properties:14  regulator-name:15    description: A string used as a descriptive name for regulator outputs16    $ref: /schemas/types.yaml#/definitions/string17 18  regulator-min-microvolt:19    description: smallest voltage consumers may set20 21  regulator-max-microvolt:22    description: largest voltage consumers may set23 24  regulator-microvolt-offset:25    description: Offset applied to voltages to compensate for voltage drops26    $ref: /schemas/types.yaml#/definitions/uint3227 28  regulator-min-microamp:29    description: smallest current consumers may set30 31  regulator-max-microamp:32    description: largest current consumers may set33 34  regulator-input-current-limit-microamp:35    description: maximum input current regulator allows36 37  regulator-always-on:38    description: boolean, regulator should never be disabled39    type: boolean40 41  regulator-boot-on:42    description: bootloader/firmware enabled regulator.43      It's expected that this regulator was left on by the bootloader.44      If the bootloader didn't leave it on then OS should turn it on45      at boot but shouldn't prevent it from being turned off later.46      This property is intended to only be used for regulators where47      software cannot read the state of the regulator.48    type: boolean49 50  regulator-allow-bypass:51    description: allow the regulator to go into bypass mode52    type: boolean53 54  regulator-allow-set-load:55    description: allow the regulator performance level to be configured56    type: boolean57 58  regulator-ramp-delay:59    description: ramp delay for regulator(in uV/us) For hardware which supports60      disabling ramp rate, it should be explicitly initialised to zero (regulator-ramp-delay61      = <0>) for disabling ramp delay.62    $ref: /schemas/types.yaml#/definitions/uint3263 64  regulator-enable-ramp-delay:65    description: The time taken, in microseconds, for the supply rail to66      reach the target voltage, plus/minus whatever tolerance the board67      design requires. This property describes the total system ramp time68      required due to the combination of internal ramping of the regulator69      itself, and board design issues such as trace capacitance and load70      on the supply.71    $ref: /schemas/types.yaml#/definitions/uint3272 73  regulator-settling-time-us:74    description: Settling time, in microseconds, for voltage change if regulator75      have the constant time for any level voltage change. This is useful76      when regulator have exponential voltage change.77 78  regulator-settling-time-up-us:79    description: Settling time, in microseconds, for voltage increase if80      the regulator needs a constant time to settle after voltage increases81      of any level. This is useful for regulators with exponential voltage82      changes.83 84  regulator-settling-time-down-us:85    description: Settling time, in microseconds, for voltage decrease if86      the regulator needs a constant time to settle after voltage decreases87      of any level. This is useful for regulators with exponential voltage88      changes.89 90  regulator-soft-start:91    description: Enable soft start so that voltage ramps slowly92    type: boolean93 94  regulator-initial-mode:95    description: initial operating mode. The set of possible operating modes96      depends on the capabilities of every hardware so each device binding97      documentation explains which values the regulator supports.98    $ref: /schemas/types.yaml#/definitions/uint3299 100  regulator-allowed-modes:101    description: list of operating modes that software is allowed to configure102      for the regulator at run-time.  Elements may be specified in any order.103      The set of possible operating modes depends on the capabilities of104      every hardware so each device binding document explains which values105      the regulator supports.106    $ref: /schemas/types.yaml#/definitions/uint32-array107 108  regulator-system-load:109    description: Load in uA present on regulator that is not captured by110      any consumer request.111    $ref: /schemas/types.yaml#/definitions/uint32112 113  regulator-pull-down:114    description: Enable pull down resistor when the regulator is disabled.115    type: boolean116 117  system-critical-regulator:118    description: Set if the regulator is critical to system stability or119      functionality.120    type: boolean121 122  regulator-over-current-protection:123    description: Enable over current protection.124    type: boolean125 126  regulator-oc-protection-microamp:127    description: Set over current protection limit. This is a limit where128      hardware performs emergency shutdown. Zero can be passed to disable129      protection and value '1' indicates that protection should be enabled but130      limit setting can be omitted.131 132  regulator-oc-error-microamp:133    description: Set over current error limit. This is a limit where part of134      the hardware probably is malfunctional and damage prevention is requested.135      Zero can be passed to disable error detection and value '1' indicates136      that detection should be enabled but limit setting can be omitted.137 138  regulator-oc-warn-microamp:139    description: Set over current warning limit. This is a limit where hardware140      is assumed still to be functional but approaching limit where it gets141      damaged. Recovery actions should be initiated. Zero can be passed to142      disable detection and value '1' indicates that detection should143      be enabled but limit setting can be omitted.144 145  regulator-ov-protection-microvolt:146    description: Set over voltage protection limit. This is a limit where147      hardware performs emergency shutdown. Zero can be passed to disable148      protection and value '1' indicates that protection should be enabled but149      limit setting can be omitted. Limit is given as microvolt offset from150      voltage set to regulator.151 152  regulator-ov-error-microvolt:153    description: Set over voltage error limit. This is a limit where part of154      the hardware probably is malfunctional and damage prevention is requested155      Zero can be passed to disable error detection and value '1' indicates156      that detection should be enabled but limit setting can be omitted. Limit157      is given as microvolt offset from voltage set to regulator.158 159  regulator-ov-warn-microvolt:160    description: Set over voltage warning limit. This is a limit where hardware161      is assumed still to be functional but approaching limit where it gets162      damaged. Recovery actions should be initiated. Zero can be passed to163      disable detection and value '1' indicates that detection should164      be enabled but limit setting can be omitted. Limit is given as microvolt165      offset from voltage set to regulator.166 167  regulator-uv-protection-microvolt:168    description: Set over under voltage protection limit. This is a limit where169      hardware performs emergency shutdown. Zero can be passed to disable170      protection and value '1' indicates that protection should be enabled but171      limit setting can be omitted. Limit is given as microvolt offset from172      voltage set to regulator.173 174  regulator-uv-error-microvolt:175    description: Set under voltage error limit. This is a limit where part of176      the hardware probably is malfunctional and damage prevention is requested177      Zero can be passed to disable error detection and value '1' indicates178      that detection should be enabled but limit setting can be omitted. Limit179      is given as microvolt offset from voltage set to regulator.180 181  regulator-uv-warn-microvolt:182    description: Set over under voltage warning limit. This is a limit where183      hardware is assumed still to be functional but approaching limit where184      it gets damaged. Recovery actions should be initiated. Zero can be passed185      to disable detection and value '1' indicates that detection should186      be enabled but limit setting can be omitted. Limit is given as microvolt187      offset from voltage set to regulator.188 189  regulator-uv-less-critical-window-ms:190    description: Specifies the time window (in milliseconds) following a191      critical under-voltage event during which the system can continue to192      operate safely while performing less critical operations. This property193      provides a defined duration before a more severe reaction to the194      under-voltage event is needed, allowing for certain non-urgent actions to195      be carried out in preparation for potential power loss.196 197  regulator-temp-protection-kelvin:198    description: Set over temperature protection limit. This is a limit where199      hardware performs emergency shutdown. Zero can be passed to disable200      protection and value '1' indicates that protection should be enabled but201      limit setting can be omitted.202 203  regulator-temp-error-kelvin:204    description: Set over temperature error limit. This is a limit where part of205      the hardware probably is malfunctional and damage prevention is requested206      Zero can be passed to disable error detection and value '1' indicates207      that detection should be enabled but limit setting can be omitted.208 209  regulator-temp-warn-kelvin:210    description: Set over temperature warning limit. This is a limit where211      hardware is assumed still to be functional but approaching limit where it212      gets damaged. Recovery actions should be initiated. Zero can be passed to213      disable detection and value '1' indicates that detection should214      be enabled but limit setting can be omitted.215 216  regulator-active-discharge:217    description: |218      tristate, enable/disable active discharge of regulators. The values are:219      0: Disable active discharge.220      1: Enable active discharge.221      Absence of this property will leave configuration to default.222    $ref: /schemas/types.yaml#/definitions/uint32223    enum: [0, 1]224 225  regulator-coupled-with:226    description: Regulators with which the regulator is coupled. The linkage227      is 2-way - all coupled regulators should be linked with each other.228      A regulator should not be coupled with its supplier.229    $ref: /schemas/types.yaml#/definitions/phandle-array230    items:231      maxItems: 1232 233  regulator-coupled-max-spread:234    description: Array of maximum spread between voltages of coupled regulators235      in microvolts, each value in the array relates to the corresponding236      couple specified by the regulator-coupled-with property.237    $ref: /schemas/types.yaml#/definitions/uint32-array238 239  regulator-max-step-microvolt:240    description: Maximum difference between current and target voltages241      that can be changed safely in a single step.242 243patternProperties:244  ".*-supply$":245    description: Input supply phandle(s) for this node246 247  "^regulator-state-(standby|mem|disk)$":248    type: object249    description:250      sub-nodes for regulator state in Standby, Suspend-to-RAM, and251      Suspend-to-DISK modes. Equivalent with standby, mem, and disk Linux252      sleep states.253 254    properties:255      regulator-on-in-suspend:256        description: regulator should be on in suspend state.257        type: boolean258 259      regulator-off-in-suspend:260        description: regulator should be off in suspend state.261        type: boolean262 263      regulator-suspend-min-microvolt:264        description: minimum voltage may be set in suspend state.265 266      regulator-suspend-max-microvolt:267        description: maximum voltage may be set in suspend state.268 269      regulator-suspend-microvolt:270        description: the default voltage which regulator would be set in271          suspend. This property is now deprecated, instead setting voltage272          for suspend mode via the API which regulator driver provides is273          recommended.274 275      regulator-changeable-in-suspend:276        description: whether the default voltage and the regulator on/off277          in suspend can be changed in runtime.278        type: boolean279 280      regulator-mode:281        description: operating mode in the given suspend state. The set282          of possible operating modes depends on the capabilities of every283          hardware so the valid modes are documented on each regulator device284          tree binding document.285        $ref: /schemas/types.yaml#/definitions/uint32286 287    additionalProperties: false288 289additionalProperties: true290 291examples:292  - |293    xyzreg: regulator {294      regulator-min-microvolt = <1000000>;295      regulator-max-microvolt = <2500000>;296      regulator-always-on;297      vin-supply = <&vin>;298 299      regulator-state-mem {300        regulator-on-in-suspend;301      };302    };303 304...305