1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/regulator/qcom,rpm-regulator.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Qualcomm RPM regulator 8 9description: 10 The Qualcomm RPM regulator is modelled as a subdevice of the RPM. 11 12 Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,rpm.yaml 13 for information regarding the RPM node. 14 15 The regulator node houses sub-nodes for each regulator within the device. 16 Each sub-node is identified using the node's name, with valid values listed 17 for each of the pmics below. 18 19 For pm8058 l0, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, 20 l16, l17, l18, l19, l20, l21, l22, l23, l24, l25, s0, s1, s2, s3, s4, 21 lvs0, lvs1, ncp 22 23 For pm8901 l0, l1, l2, l3, l4, l5, l6, s0, s1, s2, s3, s4, lvs0, lvs1, lvs2, lvs3, 24 mvs 25 26 For pm8921 s1, s2, s3, s4, s7, s8, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, 27 l12, l14, l15, l16, l17, l18, l21, l22, l23, l24, l25, l26, l27, l28, 28 l29, lvs1, lvs2, lvs3, lvs4, lvs5, lvs6, lvs7, usb-switch, hdmi-switch, 29 ncp 30 31 For pm8018 s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, 32 l12, l14, lvs1 33 34 For smb208 s1a, s1b, s2a, s2b 35 36maintainers: 37 - Bjorn Andersson <andersson@kernel.org> 38 39properties: 40 compatible: 41 enum: 42 - qcom,rpm-pm8058-regulators 43 - qcom,rpm-pm8901-regulators 44 - qcom,rpm-pm8921-regulators 45 - qcom,rpm-pm8018-regulators 46 - qcom,rpm-smb208-regulators 47 48patternProperties: 49 ".*-supply$": 50 description: Input supply phandle(s) for this node 51 52 "^((s|l|lvs)[0-9]*)|(s[1-2][a-b])|(ncp)|(mvs)|(usb-switch)|(hdmi-switch)$": 53 description: List of regulators and its properties 54 $ref: regulator.yaml# 55 unevaluatedProperties: false 56 properties: 57 bias-pull-down: 58 description: enable pull down of the regulator when inactive 59 type: boolean 60 61 qcom,switch-mode-frequency: 62 description: Frequency (Hz) of the switch-mode power supply 63 $ref: /schemas/types.yaml#/definitions/uint32 64 enum: 65 - 19200000 66 - 9600000 67 - 6400000 68 - 4800000 69 - 3840000 70 - 3200000 71 - 2740000 72 - 2400000 73 - 2130000 74 - 1920000 75 - 1750000 76 - 1600000 77 - 1480000 78 - 1370000 79 - 1280000 80 - 1200000 81 82 qcom,force-mode: 83 description: Indicates that the regulator should be forced to a particular mode 84 $ref: /schemas/types.yaml#/definitions/uint32 85 enum: 86 - 0 # QCOM_RPM_FORCE_MODE_NONE do not force any mode 87 - 1 # QCOM_RPM_FORCE_MODE_LPM force into low power mode 88 - 2 # QCOM_RPM_FORCE_MODE_HPM force into high power mode 89 - 3 # QCOM_RPM_FORCE_MODE_AUTO allow regulator to automatically select its own mode 90 # based on realtime current draw, only for pm8921 smps and ftsmps 91 92 qcom,power-mode-hysteretic: 93 description: select that the power supply should operate in hysteretic mode, 94 instead of the default pwm mode 95 type: boolean 96 97additionalProperties: false 98 99required: 100 - compatible 101 102examples: 103 - | 104 #include <dt-bindings/mfd/qcom-rpm.h> 105 regulators { 106 compatible = "qcom,rpm-pm8921-regulators"; 107 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 108 109 s1 { 110 regulator-min-microvolt = <1225000>; 111 regulator-max-microvolt = <1225000>; 112 113 bias-pull-down; 114 115 qcom,switch-mode-frequency = <3200000>; 116 }; 117 118 pm8921_s4: s4 { 119 regulator-min-microvolt = <1800000>; 120 regulator-max-microvolt = <1800000>; 121 122 qcom,switch-mode-frequency = <1600000>; 123 bias-pull-down; 124 125 qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>; 126 }; 127 }; 128... 129