blob: 5d2fc391682563e6d2d9e2c6acd39804da74e12d [file] [log] [blame]
# Copyright (c), 2021 NXP
# SPDX -License-Identifier: Apache-2.0
description: PMIC controlled regulator
include: regulator.yaml
compatible: "regulator-pmic"
properties:
voltage-range:
type: array
required: true
description: |
array of voltage values in uV, followed by the register value that
must be written to enable the voltage. For example, [3300000, 0x3]
denotes a value of 0x3 must be written to the register to set 3.3V
num-voltages:
type: int
required: true
description: number of voltages present in the voltage-range array.
vsel-reg:
type: int
required: true
description: I2C register to write voltage selection value to
vsel-mask:
type: int
required: true
description: |
Mask to apply to the voltage range value when written to vsel
register
enable-reg:
type: int
required: true
description: I2C register to write enable value to
enable-mask:
type: int
required: true
description: |
Mask to apply to the enable bit (either 1 for enabled,
or 0 for disabled) when writing it to the I2C enable register.
enable-val:
type: int
required: true
description: |
value to apply enable-mask to, and write to enable-reg in order
to enable the regulator output.
min-uV:
type: int
required: true
description: |
Minimum voltage in microvolts that this regulator supports
max-uV:
type: int
required: true
description: |
Maximum voltage in microvolts that this regulator supports
enable-inverted:
type: boolean
required: false
description: |
If the enable bit should be zero to turn the regulator on, add this
property.
current-levels:
type: array
required: false
description: |
Array of current limit values in uA, followed by the register value
that must be written to enable the current limit. For example,
[800000, 0x3] denotes a value of 0x3 must be written to the register
to set a current limit of 800mA
num-current-levels:
type: int
required: false
default: 0
description: |
Number of current limit levels this regulator supports. If left as
default, regulator current support will be disabled.
ilim-reg:
type: int
required: false
description: |
Register to write the register value given in current-levels into
to set the current limit
ilim-mask:
type: int
required: false
description: |
Mask to apply to the current-levels value before writing it to the
ilim-reg value to set the current limit