forked from Minki/linux
93bfe79b03
The mvs1 and mvs2 switches are actually called 5vs1 and 5vs2 on
some datasheets. Let's rename them to match the datasheets and
also match the RPM based regulator driver which calls these by
their 5vs names (see qcom_smd-regulator.c). There aren't any
users of these regulators so far, so there aren't any concerns of
DT ABI breakage here. While we're here making updates to the
switches, also mandate usage of the OCP irq for these switches
too.
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Fixes: e92a404741
("regulator: Add QCOM SPMI regulator driver")
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
211 lines
5.6 KiB
Plaintext
211 lines
5.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"
|
|
"qcom,pm8994-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.
|
|
|
|
- vdd_s1-supply:
|
|
- vdd_s2-supply:
|
|
- vdd_s3-supply:
|
|
- vdd_s4-supply:
|
|
- vdd_s5-supply:
|
|
- vdd_s6-supply:
|
|
- vdd_s7-supply:
|
|
- vdd_s8-supply:
|
|
- vdd_s9-supply:
|
|
- vdd_s10-supply:
|
|
- vdd_s11-supply:
|
|
- vdd_s12-supply:
|
|
- vdd_l1-supply:
|
|
- vdd_l2_l26_l28-supply:
|
|
- vdd_l3_l11-supply:
|
|
- vdd_l4_l27_l31-supply:
|
|
- vdd_l5_l7-supply:
|
|
- vdd_l6_l12_l32-supply:
|
|
- vdd_l8_l16_l30-supply:
|
|
- vdd_l9_l10_l18_l22-supply:
|
|
- vdd_l13_l19_l23_l24-supply:
|
|
- vdd_l14_l15-supply:
|
|
- vdd_l17_l29-supply:
|
|
- vdd_l20_l21-supply:
|
|
- vdd_l25-supply:
|
|
- vdd_lvs_1_2-supply:
|
|
Usage: optional (pm8994 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, s4, 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,
|
|
5vs1, 5vs2
|
|
|
|
pm8994:
|
|
s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3, l4, l5,
|
|
l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19, l20,
|
|
l21, l22, l23, l24, l25, l26, l27, l28, l29, l30, l31, l32, lvs1, lvs2
|
|
|
|
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>;
|
|
};
|
|
|
|
....
|
|
};
|