blob: 55cd4385141dcb3be8c4f262c2c402f16cdec65d [file] [log] [blame]
# Copyright (c), 2021 NXP
# SPDX -License-Identifier: Apache-2.0
description: NXP PCA9420 PMIC
compatible: "nxp,pca9420"
include: base.yaml
properties:
regulator-initial-mode:
type: int
description: |
Initial operating mode of the regulator. Regulators modes can be
used for better power saving, or different voltage configurations,
and are hardware specific.
regulator-allowed-modes:
type: array
description: |
Array of operating modes that software may configure for the
regulator at runtime. The set of possible operating modes depends on
what the hardware supports.
modesel-reg:
type: int
description: |
Mode selection register. This register is used by the regulator driver
to select the target mode of the regulator
modesel-mask:
type: int
description: |
Mode selection mask. Applied to a mode selection when it is written
to the modesel-reg.
child-binding:
include:
- name: regulator.yaml
property-allowlist:
- regulator-boot-on
description: Voltage output of PMIC controller regulator
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
description: |
If the enable bit should be zero to turn the regulator on, add this
property.
current-levels:
type: array
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
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
description: |
Register to write the register value given in current-levels into
to set the current limit
ilim-mask:
type: int
description: |
Mask to apply to the current-levels value before writing it to the
ilim-reg value to set the current limit