mirror of
https://github.com/torvalds/linux.git
synced 2024-12-24 20:01:55 +00:00
e2adfacde6
Add support for over current protection (OCP), pin control selection, soft start strength, and auto-mode. Cc: <devicetree@vger.kernel.org> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Mark Brown <broonie@kernel.org>
174 lines
4.6 KiB
Plaintext
174 lines
4.6 KiB
Plaintext
Qualcomm SPMI Regulators
|
|
|
|
- compatible:
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: must be one of:
|
|
"qcom,pm8841-regulators"
|
|
"qcom,pm8916-regulators"
|
|
"qcom,pm8941-regulators"
|
|
|
|
- interrupts:
|
|
Usage: optional
|
|
Value type: <prop-encoded-array>
|
|
Definition: List of OCP interrupts.
|
|
|
|
- interrupt-names:
|
|
Usage: required if 'interrupts' property present
|
|
Value type: <string-array>
|
|
Definition: List of strings defining the names of the
|
|
interrupts in the 'interrupts' property 1-to-1.
|
|
Supported values are "ocp-<regulator_name>", where
|
|
<regulator_name> corresponds to a voltage switch
|
|
type regulator.
|
|
|
|
- vdd_s1-supply:
|
|
- vdd_s2-supply:
|
|
- vdd_s3-supply:
|
|
- vdd_s4-supply:
|
|
- vdd_s5-supply:
|
|
- vdd_s6-supply:
|
|
- vdd_s7-supply:
|
|
- vdd_s8-supply:
|
|
Usage: optional (pm8841 only)
|
|
Value type: <phandle>
|
|
Definition: Reference to regulator supplying the input pin, as
|
|
described in the data sheet.
|
|
|
|
- vdd_s1-supply:
|
|
- vdd_s2-supply:
|
|
- vdd_s3-supply:
|
|
- vdd_s4-supply:
|
|
- vdd_l1_l3-supply:
|
|
- vdd_l2-supply:
|
|
- vdd_l4_l5_l6-supply:
|
|
- vdd_l7-supply:
|
|
- vdd_l8_l11_l14_l15_l16-supply:
|
|
- vdd_l9_l10_l12_l13_l17_l18-supply:
|
|
Usage: optional (pm8916 only)
|
|
Value type: <phandle>
|
|
Definition: Reference to regulator supplying the input pin, as
|
|
described in the data sheet.
|
|
|
|
- vdd_s1-supply:
|
|
- vdd_s2-supply:
|
|
- vdd_s3-supply:
|
|
- vdd_l1_l3-supply:
|
|
- vdd_l2_lvs_1_2_3-supply:
|
|
- vdd_l4_l11-supply:
|
|
- vdd_l5_l7-supply:
|
|
- vdd_l6_l12_l14_l15-supply:
|
|
- vdd_l8_l16_l18_19-supply:
|
|
- vdd_l9_l10_l17_l22-supply:
|
|
- vdd_l13_l20_l23_l24-supply:
|
|
- vdd_l21-supply:
|
|
- vin_5vs-supply:
|
|
Usage: optional (pm8941 only)
|
|
Value type: <phandle>
|
|
Definition: Reference to regulator supplying the input pin, as
|
|
described in the data sheet.
|
|
|
|
|
|
The regulator node houses sub-nodes for each regulator within the device. Each
|
|
sub-node is identified using the node's name, with valid values listed for each
|
|
of the PMICs below.
|
|
|
|
pm8841:
|
|
s1, s2, s3, s4, s5, s6, s7, s8
|
|
|
|
pm8916:
|
|
s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
|
|
l14, l15, l16, l17, l18
|
|
|
|
pm8941:
|
|
s1, s2, s3, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14,
|
|
l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2, lvs3,
|
|
mvs1, mvs2
|
|
|
|
The content of each sub-node is defined by the standard binding for regulators -
|
|
see regulator.txt - with additional custom properties described below:
|
|
|
|
- regulator-initial-mode:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Description: 2 = Set initial mode to auto mode (automatically select
|
|
between HPM and LPM); not available on boost type
|
|
regulators.
|
|
|
|
1 = Set initial mode to high power mode (HPM), also referred
|
|
to as NPM. HPM consumes more ground current than LPM, but
|
|
it can source significantly higher load current. HPM is not
|
|
available on boost type regulators. For voltage switch type
|
|
regulators, HPM implies that over current protection and
|
|
soft start are active all the time.
|
|
|
|
0 = Set initial mode to low power mode (LPM).
|
|
|
|
- qcom,ocp-max-retries:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Description: Maximum number of times to try toggling a voltage switch
|
|
off and back on as a result of consecutive over current
|
|
events.
|
|
|
|
- qcom,ocp-retry-delay:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Description: Time to delay in milliseconds between each voltage switch
|
|
toggle after an over current event takes place.
|
|
|
|
- qcom,pin-ctrl-enable:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Description: Bit mask specifying which hardware pins should be used to
|
|
enable the regulator, if any; supported bits are:
|
|
0 = ignore all hardware enable signals
|
|
BIT(0) = follow HW0_EN signal
|
|
BIT(1) = follow HW1_EN signal
|
|
BIT(2) = follow HW2_EN signal
|
|
BIT(3) = follow HW3_EN signal
|
|
|
|
- qcom,pin-ctrl-hpm:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Description: Bit mask specifying which hardware pins should be used to
|
|
force the regulator into high power mode, if any;
|
|
supported bits are:
|
|
0 = ignore all hardware enable signals
|
|
BIT(0) = follow HW0_EN signal
|
|
BIT(1) = follow HW1_EN signal
|
|
BIT(2) = follow HW2_EN signal
|
|
BIT(3) = follow HW3_EN signal
|
|
BIT(4) = follow PMIC awake state
|
|
|
|
- qcom,vs-soft-start-strength:
|
|
Usage: optional
|
|
Value type: <u32>
|
|
Description: This property sets the soft start strength for voltage
|
|
switch type regulators; supported values are:
|
|
0 = 0.05 uA
|
|
1 = 0.25 uA
|
|
2 = 0.55 uA
|
|
3 = 0.75 uA
|
|
|
|
Example:
|
|
|
|
regulators {
|
|
compatible = "qcom,pm8941-regulators";
|
|
vdd_l1_l3-supply = <&s1>;
|
|
|
|
s1: s1 {
|
|
regulator-min-microvolt = <1300000>;
|
|
regulator-max-microvolt = <1400000>;
|
|
};
|
|
|
|
...
|
|
|
|
l1: l1 {
|
|
regulator-min-microvolt = <1225000>;
|
|
regulator-max-microvolt = <1300000>;
|
|
};
|
|
|
|
....
|
|
};
|