Kiran Gunda | 7e9e00a | 2017-10-16 16:10:08 +0530 | [diff] [blame] | 1 | Qualcomm Technologies Inc. SPM Regulators |
| 2 | |
| 3 | spm-regulator is a regulator device which supports PMIC processor supply |
| 4 | regulators via the SPM module. |
| 5 | |
| 6 | Required properties: |
| 7 | - compatible: Must be "qcom,spm-regulator" |
| 8 | - reg: Specifies the SPMI address and size for this regulator device |
| 9 | - regulator-name: A string used as a descriptive name for the regulator |
| 10 | |
| 11 | Required structure: |
| 12 | - A qcom,spm-regulator node must be a child of an SPMI node that has specified |
| 13 | the spmi-slave-container property |
| 14 | |
| 15 | Optional properties: |
| 16 | - qcom,mode: A string which specifies the mode to use for the regulator. |
| 17 | Supported values are "pwm" and "auto". PWM mode is more |
| 18 | robust, but draws more current than auto mode. If this |
| 19 | property is not specified, then the regulator will remain |
| 20 | in whatever mode hardware or bootloaders set it to. |
| 21 | - qcom,cpu-num: Specifies which CPU this regulator powers. This property is |
| 22 | not need when the SPM regulator is shared between all CPUs. |
| 23 | - qcom,bypass-spm: Boolean flag which indicates that voltage control should not |
| 24 | be managed by an SPM. Instead, the voltage should be |
| 25 | controlled via SPMI. |
| 26 | - qcom,max-voltage-step: Maximum single voltage step size in microvolts. |
| 27 | - qcom,recal-mask: Bit mask of the APSS clusters to recalibrate after each |
| 28 | voltage change. Bit 0 corresponds to the first cluster, |
| 29 | bit 1 corresponds to the second cluster, and so on. |
| 30 | |
| 31 | Optional structure: |
| 32 | - A child node may be specified within a qcom,spm-regulator node which defines |
| 33 | an additional regulator which controls the AVS minimum and maximum |
| 34 | voltage limits. |
| 35 | - The AVS child node must contain these properties defined in regulator.txt: |
| 36 | regulator-name, regulator-min-microvolt, regulator-max-microvolt. |
| 37 | |
| 38 | All properties specified within the core regulator framework can also be used. |
| 39 | These bindings can be found in regulator.txt. |
| 40 | |
| 41 | Example: |
| 42 | qcom,spmi@fc4c0000 { |
| 43 | |
| 44 | qcom,pm8226@1 { |
| 45 | spmi-slave-container; |
| 46 | |
| 47 | spm-regulator@1700 { |
| 48 | compatible = "qcom,spm-regulator"; |
| 49 | regulator-name = "8226_s2"; |
| 50 | reg = <0x1700 0x100>; |
| 51 | regulator-min-microvolt = <900000>; |
| 52 | regulator-max-microvolt = <1275000>; |
| 53 | |
| 54 | avs-limit-regulator { |
| 55 | regulator-name = "8226_s2_avs_limit"; |
| 56 | regulator-min-microvolt = <900000>; |
| 57 | regulator-max-microvolt = <1275000>; |
| 58 | } |
| 59 | }; |
| 60 | }; |
| 61 | }; |