forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
195 lines
6.1 KiB
195 lines
6.1 KiB
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause |
|
%YAML 1.2 |
|
--- |
|
$id: http://devicetree.org/schemas/regulator/nxp,pca9450-regulator.yaml# |
|
$schema: http://devicetree.org/meta-schemas/core.yaml# |
|
|
|
title: NXP PCA9450A/B/C Power Management Integrated Circuit regulators |
|
|
|
maintainers: |
|
- Robin Gong <[email protected]> |
|
|
|
description: | |
|
Regulator nodes should be named to BUCK_<number> and LDO_<number>. The |
|
definition for each of these nodes is defined using the standard |
|
binding for regulators at |
|
Documentation/devicetree/bindings/regulator/regulator.txt. |
|
Datasheet is available at |
|
https://www.nxp.com/docs/en/data-sheet/PCA9450DS.pdf |
|
|
|
#The valid names for PCA9450 regulator nodes are: |
|
#BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, |
|
#LDO1, LDO2, LDO3, LDO4, LDO5 |
|
#Note: Buck3 removed on PCA9450B and connect with Buck1 on PCA9450C. |
|
|
|
properties: |
|
compatible: |
|
enum: |
|
- nxp,pca9450a |
|
- nxp,pca9450b |
|
- nxp,pca9450c |
|
|
|
reg: |
|
maxItems: 1 |
|
|
|
interrupts: |
|
maxItems: 1 |
|
|
|
regulators: |
|
type: object |
|
description: | |
|
list of regulators provided by this controller |
|
|
|
patternProperties: |
|
"^LDO[1-5]$": |
|
type: object |
|
$ref: regulator.yaml# |
|
description: |
|
Properties for single LDO regulator. |
|
|
|
unevaluatedProperties: false |
|
|
|
"^BUCK[1-6]$": |
|
type: object |
|
$ref: regulator.yaml# |
|
description: |
|
Properties for single BUCK regulator. |
|
|
|
properties: |
|
nxp,dvs-run-voltage: |
|
$ref: "/schemas/types.yaml#/definitions/uint32" |
|
minimum: 600000 |
|
maximum: 2187500 |
|
description: |
|
PMIC default "RUN" state voltage in uV. Only Buck1~3 have such |
|
dvs(dynamic voltage scaling) property. |
|
|
|
nxp,dvs-standby-voltage: |
|
$ref: "/schemas/types.yaml#/definitions/uint32" |
|
minimum: 600000 |
|
maximum: 2187500 |
|
description: |
|
PMIC default "STANDBY" state voltage in uV. Only Buck1~3 have such |
|
dvs(dynamic voltage scaling) property. |
|
|
|
unevaluatedProperties: false |
|
|
|
additionalProperties: false |
|
|
|
sd-vsel-gpios: |
|
description: GPIO that is used to switch LDO5 between being configured by |
|
LDO5CTRL_L or LDO5CTRL_H register. Use this if the SD_VSEL signal is |
|
connected to a host GPIO. |
|
|
|
nxp,i2c-lt-enable: |
|
type: boolean |
|
description: |
|
Indicates that the I2C Level Translator is used. |
|
|
|
nxp,wdog_b-warm-reset: |
|
type: boolean |
|
description: |
|
When WDOG_B signal is asserted a warm reset will be done instead of cold |
|
reset. |
|
|
|
required: |
|
- compatible |
|
- reg |
|
- interrupts |
|
- regulators |
|
|
|
additionalProperties: false |
|
|
|
examples: |
|
- | |
|
#include <dt-bindings/interrupt-controller/irq.h> |
|
|
|
i2c { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
pmic: pmic@25 { |
|
compatible = "nxp,pca9450b"; |
|
reg = <0x25>; |
|
pinctrl-0 = <&pinctrl_pmic>; |
|
interrupt-parent = <&gpio1>; |
|
interrupts = <3 IRQ_TYPE_LEVEL_LOW>; |
|
|
|
regulators { |
|
buck1: BUCK1 { |
|
regulator-name = "BUCK1"; |
|
regulator-min-microvolt = <600000>; |
|
regulator-max-microvolt = <2187500>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
regulator-ramp-delay = <3125>; |
|
}; |
|
buck2: BUCK2 { |
|
regulator-name = "BUCK2"; |
|
regulator-min-microvolt = <600000>; |
|
regulator-max-microvolt = <2187500>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
regulator-ramp-delay = <3125>; |
|
nxp,dvs-run-voltage = <950000>; |
|
nxp,dvs-standby-voltage = <850000>; |
|
}; |
|
buck4: BUCK4 { |
|
regulator-name = "BUCK4"; |
|
regulator-min-microvolt = <600000>; |
|
regulator-max-microvolt = <3400000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
buck5: BUCK5 { |
|
regulator-name = "BUCK5"; |
|
regulator-min-microvolt = <600000>; |
|
regulator-max-microvolt = <3400000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
buck6: BUCK6 { |
|
regulator-name = "BUCK6"; |
|
regulator-min-microvolt = <600000>; |
|
regulator-max-microvolt = <3400000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
|
|
ldo1: LDO1 { |
|
regulator-name = "LDO1"; |
|
regulator-min-microvolt = <1600000>; |
|
regulator-max-microvolt = <3300000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
ldo2: LDO2 { |
|
regulator-name = "LDO2"; |
|
regulator-min-microvolt = <800000>; |
|
regulator-max-microvolt = <1150000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
ldo3: LDO3 { |
|
regulator-name = "LDO3"; |
|
regulator-min-microvolt = <800000>; |
|
regulator-max-microvolt = <3300000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
ldo4: LDO4 { |
|
regulator-name = "LDO4"; |
|
regulator-min-microvolt = <800000>; |
|
regulator-max-microvolt = <3300000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
ldo5: LDO5 { |
|
regulator-name = "LDO5"; |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <3300000>; |
|
regulator-boot-on; |
|
regulator-always-on; |
|
}; |
|
}; |
|
}; |
|
};
|
|
|