Kernel-4.18.0-80.el8_qcom,spmi-regulator

Qualcomm SPMI Regulators

  • compatible:
    Usage: required
    Value type:
    Definition: must be one of:

          "qcom,pm8841-regulators"
          "qcom,pm8916-regulators"
          "qcom,pm8941-regulators"
          "qcom,pm8994-regulators"
          "qcom,pmi8994-regulators"
    
  • interrupts:
    Usage: optional
    Value type:
    Definition: List of OCP interrupts.

  • interrupt-names:
    Usage: required if ‘interrupts’ property present
    Value type:
    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:
    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:
    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:
    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:
    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-supply:
    Usage: optional (pmi8994 only)
    Value type:
    Definition: Reference to regulator supplying the input pin, as

          described in the data sheet.
    
  • qcom,saw-reg:
    Usage: optional
    Value type:
    Description: Reference to syscon node defining the SAW registers.

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

pmi8994:
s1, s2, s3, l1

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:
    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:
    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:
    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:
    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:
    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:
    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
    
  • qcom,saw-slave:
    Usage: optional
    Value type:
    Description: SAW controlled gang slave. Will not be configured.

  • qcom,saw-leader:
    Usage: optional
    Value type:
    Description: SAW controlled gang leader. Will be configured as

           SAW regulator.
    

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>;
    };

    ....
};

Example 2:

saw3: syscon@9A10000 {
    compatible = "syscon";
    reg = <0x9A10000 0x1000>;
};

...

spm-regulators {
    compatible = "qcom,pm8994-regulators";
    qcom,saw-reg = <&saw3>;
    s8 {
        qcom,saw-slave;
    };
    s9 {
        qcom,saw-slave;
    };
    s10 {
        qcom,saw-slave;
    };
    pm8994_s11_saw: s11 {
        qcom,saw-leader;
        regulator-always-on;
        regulator-min-microvolt = <900000>;
        regulator-max-microvolt = <1140000>;
    };
};