1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/regulator/qcom,spmi-regulator.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Qualcomm SPMI Regulators 8 9maintainers: 10 - Robert Marko <robimarko@gmail.com> 11 12properties: 13 compatible: 14 enum: 15 - qcom,pm6125-regulators 16 - qcom,pm660-regulators 17 - qcom,pm660l-regulators 18 - qcom,pm8004-regulators 19 - qcom,pm8005-regulators 20 - qcom,pm8226-regulators 21 - qcom,pm8841-regulators 22 - qcom,pm8916-regulators 23 - qcom,pm8941-regulators 24 - qcom,pm8950-regulators 25 - qcom,pm8994-regulators 26 - qcom,pmi8994-regulators 27 - qcom,pmp8074-regulators 28 - qcom,pms405-regulators 29 30 qcom,saw-reg: 31 description: Reference to syscon node defining the SAW registers 32 $ref: /schemas/types.yaml#/definitions/phandle 33 34patternProperties: 35 "^(5vs[1-2]|(l|s)[1-9][0-9]?|lvs[1-3])$": 36 description: List of regulators and its properties 37 type: object 38 $ref: regulator.yaml# 39 unevaluatedProperties: false 40 41 properties: 42 qcom,ocp-max-retries: 43 description: 44 Maximum number of times to try toggling a voltage switch off and 45 back on as a result of consecutive over current events 46 $ref: /schemas/types.yaml#/definitions/uint32 47 48 qcom,ocp-retry-delay: 49 description: 50 Time to delay in milliseconds between each voltage switch toggle 51 after an over current event takes place 52 $ref: /schemas/types.yaml#/definitions/uint32 53 54 qcom,pin-ctrl-enable: 55 description: 56 Bit mask specifying which hardware pins should be used to enable the 57 regulator, if any. 58 Supported bits are 59 0 = ignore all hardware enable signals 60 BIT(0) = follow HW0_EN signal 61 BIT(1) = follow HW1_EN signal 62 BIT(2) = follow HW2_EN signal 63 BIT(3) = follow HW3_EN signal 64 $ref: /schemas/types.yaml#/definitions/uint32 65 minimum: 0 66 maximum: 15 67 68 qcom,pin-ctrl-hpm: 69 description: 70 Bit mask specifying which hardware pins should be used to force the 71 regulator into high power mode, if any. 72 Supported bits are 73 0 = ignore all hardware enable signals 74 BIT(0) = follow HW0_EN signal 75 BIT(1) = follow HW1_EN signal 76 BIT(2) = follow HW2_EN signal 77 BIT(3) = follow HW3_EN signal 78 BIT(4) = follow PMIC awake state 79 $ref: /schemas/types.yaml#/definitions/uint32 80 minimum: 0 81 maximum: 31 82 83 qcom,vs-soft-start-strength: 84 description: 85 This property sets the soft start strength for voltage switch type 86 regulators. 87 Supported values are 88 0 = 0.05 uA 89 1 = 0.25 uA 90 2 = 0.55 uA 91 3 = 0.75 uA 92 $ref: /schemas/types.yaml#/definitions/uint32 93 minimum: 0 94 maximum: 3 95 96 qcom,saw-slave: 97 description: SAW controlled gang slave. Will not be configured. 98 type: boolean 99 100 qcom,saw-leader: 101 description: 102 SAW controlled gang leader. Will be configured as SAW regulator. 103 type: boolean 104 105required: 106 - compatible 107 108allOf: 109 - if: 110 properties: 111 compatible: 112 contains: 113 enum: 114 - qcom,pm6125-regulators 115 then: 116 properties: 117 vdd_l1_l7_l17_l18-supply: true 118 vdd_l2_l3_l4-supply: true 119 vdd_l5_l15_l19_l20_l21_l22-supply: true 120 vdd_l6_l8-supply: true 121 vdd_l9_l11-supply: true 122 vdd_l10_l13_l14-supply: true 123 vdd_l12_l16-supply: true 124 vdd_l23_l24-supply: true 125 patternProperties: 126 "^vdd_s[1-8]-supply$": true 127 128 - if: 129 properties: 130 compatible: 131 contains: 132 enum: 133 - qcom,pm660-regulators 134 then: 135 properties: 136 vdd_l15_l16_l17_l18_l19-supply: true 137 vdd_l1_l6_l7-supply: true 138 vdd_l2_l3-supply: true 139 vdd_l5-supply: true 140 vdd_l8_l9_l10_l11_l12_l13_l14-supply: true 141 patternProperties: 142 "^vdd_s[1-6]-supply$": true 143 144 - if: 145 properties: 146 compatible: 147 contains: 148 enum: 149 - qcom,pm660l-regulators 150 then: 151 properties: 152 vdd_l1_l9_l10-supply: true 153 vdd_l2-supply: true 154 vdd_l3_l5_l7_l8-supply: true 155 vdd_l4_l6-supply: true 156 patternProperties: 157 "^vdd_s[1-5]-supply$": true 158 159 - if: 160 properties: 161 compatible: 162 contains: 163 enum: 164 - qcom,pm8004-regulators 165 then: 166 patternProperties: 167 "^vdd_s[25]-supply$": true 168 169 - if: 170 properties: 171 compatible: 172 contains: 173 enum: 174 - qcom,pm8005-regulators 175 then: 176 patternProperties: 177 "^vdd_s[1-4]-supply$": true 178 179 - if: 180 properties: 181 compatible: 182 contains: 183 enum: 184 - qcom,pm8226-regulators 185 then: 186 properties: 187 vdd_l10_l11_l13-supply: true 188 vdd_l12_l14-supply: true 189 vdd_l15_l16_l17_l18-supply: true 190 vdd_l19_l20_l21_l22_l23_l28-supply: true 191 vdd_l1_l2_l4_l5-supply: true 192 vdd_l25-supply: true 193 vdd_l3_l24_l26-supply: true 194 vdd_l6_l7_l8_l9_l27-supply: true 195 vdd_lvs1-supply: true 196 patternProperties: 197 "^vdd_s[1-5]-supply$": true 198 199 - if: 200 properties: 201 compatible: 202 contains: 203 enum: 204 - qcom,pm8841-regulators 205 then: 206 patternProperties: 207 "^vdd_s[1-8]-supply$": true 208 209 - if: 210 properties: 211 compatible: 212 contains: 213 enum: 214 - qcom,pm8916-regulators 215 then: 216 properties: 217 vdd_l1_l3-supply: true 218 vdd_l4_l5_l6-supply: true 219 vdd_l8_l11_l14_l15_l16-supply: true 220 vdd_l9_l10_l12_l13_l17_l18-supply: true 221 patternProperties: 222 "^vdd_l[27]-supply$": true 223 "^vdd_s[1-4]-supply$": true 224 225 - if: 226 properties: 227 compatible: 228 contains: 229 enum: 230 - qcom,pm8941-regulators 231 then: 232 properties: 233 interrupts: 234 items: 235 - description: Over-current protection interrupt for 5V S1 236 - description: Over-current protection interrupt for 5V S2 237 interrupt-names: 238 items: 239 - const: ocp-5vs1 240 - const: ocp-5vs2 241 vdd_l13_l20_l23_l24-supply: true 242 vdd_l1_l3-supply: true 243 vdd_l21-supply: true 244 vdd_l2_lvs_1_2_3-supply: true 245 vdd_l4_l11-supply: true 246 vdd_l5_l7-supply: true 247 vdd_l6_l12_l14_l15-supply: true 248 vdd_l8_l16_l18_19-supply: true 249 vdd_l9_l10_l17_l22-supply: true 250 vin_5vs-supply: true 251 patternProperties: 252 "^vdd_s[1-3]-supply$": true 253 254 - if: 255 properties: 256 compatible: 257 contains: 258 enum: 259 - qcom,pm8950-regulators 260 then: 261 properties: 262 vdd_l1_l19-supply: true 263 vdd_l20-supply: true 264 vdd_l21-supply: true 265 vdd_l2_l23-supply: true 266 vdd_l3-supply: true 267 vdd_l4_l5_l6_l7_l16-supply: true 268 vdd_l8_l11_l12_l17_l22-supply: true 269 vdd_l9_l10_l13_l14_l15_l18-supply: true 270 patternProperties: 271 "^vdd_s[1-6]-supply$": true 272 273 - if: 274 properties: 275 compatible: 276 contains: 277 enum: 278 - qcom,pm8994-regulators 279 then: 280 properties: 281 vdd_l1-supply: true 282 vdd_l13_l19_l23_l24-supply: true 283 vdd_l14_l15-supply: true 284 vdd_l17_l29-supply: true 285 vdd_l20_l21-supply: true 286 vdd_l25-supply: true 287 vdd_l2_l26_l28-supply: true 288 vdd_l3_l11-supply: true 289 vdd_l4_l27_l31-supply: true 290 vdd_l5_l7-supply: true 291 vdd_l6_l12_l32-supply: true 292 vdd_l8_l16_l30-supply: true 293 vdd_l9_l10_l18_l22-supply: true 294 vdd_lvs_1_2-supply: true 295 patternProperties: 296 "^vdd_s[1-9][0-2]?-supply$": true 297 298 - if: 299 properties: 300 compatible: 301 contains: 302 enum: 303 - qcom,pmi8994-regulators 304 then: 305 properties: 306 vdd_l1-supply: true 307 patternProperties: 308 "^vdd_s[1-3]-supply$": true 309 310 - if: 311 properties: 312 compatible: 313 contains: 314 enum: 315 - qcom,pmp8074-regulators 316 then: 317 properties: 318 vdd_l10_l11_l12_l13-supply: true 319 vdd_l1_l2-supply: true 320 vdd_l3_l8-supply: true 321 vdd_l5_l6_l15-supply: true 322 patternProperties: 323 "^vdd_l[479]-supply$": true 324 "^vdd_s[1-5]-supply$": true 325 326 - if: 327 properties: 328 compatible: 329 contains: 330 enum: 331 - qcom,pms405-regulators 332 then: 333 properties: 334 vdd_s3-supply: true 335 336unevaluatedProperties: false 337 338examples: 339 - | 340 regulators { 341 compatible = "qcom,pm8941-regulators"; 342 vdd_l1_l3-supply = <&s1>; 343 344 s1: s1 { 345 regulator-min-microvolt = <1300000>; 346 regulator-max-microvolt = <1400000>; 347 }; 348 349 l1: l1 { 350 regulator-min-microvolt = <1225000>; 351 regulator-max-microvolt = <1300000>; 352 }; 353 }; 354... 355