Rtwo/kernel/motorola/sm8550-devicetrees/bindings/regulator/qcom,pm8008-regulator.txt
2025-09-30 19:22:48 -05:00

143 lines
4 KiB
Text

Qualcomm Technologies, Inc. PM8008 Regulator
PM8008 is an I2C based PMIC regulator chip.
=======================
Required Node Structure
=======================
==============================================
PM8008 chip specific device
==============================================
PM8008 chip specific properties:
- compatible:
Usage: required
Value type: <string>
Definition: must be "qcom,pm8008-chip"
- pinctrl-names:
Usage: required
Value type: <string>
Definition: must be "default"
- pinctrl-0:
Usage: required
Value type: <phandle>
Definition: pinctrol handle for chip enable GPIO.
- interrupts:
Usage: optional
Value type: <prop encoded array>
Definition: PM8008 LDO over current protection (OCP) summary interrupt.
- interrupt-names
Usage: required if 'interrupts' property is specified.
Value type: <string>
Definition: This should be "ocp" for the PM8008 LDO OCP interrupt.
- regulator sub-node:
Usage: required
Value type: <child sub node>
Definition: Chip enable regulator device to control chip enable
functionality. Must be "qcom,pm8008-chip-en".
Example:
qcom,pm8008-chip@900 {
compatible = "qcom,pm8008-chip";
interrupts = <0x09 4 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "ocp";
PM8008_EN: qcom,pm8008-chip-en {
regulator-name = "pm8008-chip-en";
};
};
========================================================
PM8008 regulator device
========================================================
PM8008 chip regulator specific properties:
- compatible:
Usage: required
Value type: <string>
Definition: must be "qcom,pm8008-regulator" or "qcom,pm8010-regulator"
- <pin>-supply:
Usage: optional
Value type: <phandle>
Definition: Reference to parent regulator supplying the input pin, as
described in the data sheet.
Must be one of the following:
vdd_l1_l2-supply: supply for LDO1/LDO2 of PM8008
vdd_l3_l4-supply: supply for LDO3/LDO4 of PM8008
vdd_l5-supply: supply for LDO5 of PM8008
vdd_l6-supply: supply for LDO6 of PM8008
vdd_l7-supply: supply for LDO7 of PM8008
- pm8008_en-supply:
Usage: required
Value type: <phandle>
Definition: Reference to PM8008 chip enable regulator, which manages
chip enable functionlity of PM8008.
- qcom,enable-ocp-broadcast:
Usage: optional
Value type: <bool>
Definition: Property if present enables the LDO OCP broadcast bit.
This property is required only when the "ocp" interrupt
in the pm8008 chip module is enabled.
============================================================================
Second Level Nodes - PM8008 regulator peripherals of PM8008 regulator device
============================================================================
- qcom,hpm-min-load:
Usage: optional
Value type: <u32>
Definition: Load current in uA which corresponds to the minimum load
which requires the regulator to be in high power mode.
- qcom,min-dropout-voltage:
Usage: optional
Value type: <u32>
Definition: Specifies the minimum voltage in microvolts that the parent
supply regulator must output above the output of this
regulator. It is only meaningful if the corresponding parent
supply property has been specified in the first level node.
- qcom,init-voltage
Usage: optional
Value type: <u32>
Definition: Specifies the initial voltage in microvolts to for a regulator.
- qcom,strong-pd
Usage: optional
Value type: <bool>
Definition: Property if present enables strong pull-down.
The content of each sub-node is defined by the standard binding for regulators -
see regulator.txt - with additional custom properties described below:
Example:
qcom,pm8008-regulator {
compatible = "qcom,pm8008-regulator";
pm8008_en-supply = <&PM8008_EN>;
vdd_l1_l2-supply = <&parent-supply>;
qcom,enable-ocp-broadcast;
...
L1: qcom,pm8008-l1@4000 {
reg = /bits/ 16 <0x4000>;
regulator-name = "pm8008_l1";
regulator-min-microvolt = <2900000>;
regulator-max-microvolt = <3100000>;
qcom,min-dropout-voltage = <100000>;
qcom,hpm-min-load = <10000>;
}
.....
};