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