Loading Documentation/devicetree/bindings/regulator/pv88090.txt 0 → 100644 +65 −0 Original line number Diff line number Diff line * Powerventure Semiconductor PV88090 Voltage Regulator Required properties: - compatible: "pvs,pv88090". - reg: I2C slave address, usually 0x48. - interrupts: the interrupt outputs of the controller - regulators: A node that houses a sub-node for each regulator within the device. Each sub-node is identified using the node's name, with valid values listed below. The content of each sub-node is defined by the standard binding for regulators; see regulator.txt. BUCK1, BUCK2, BUCK3, LDO1, and LDO2. Optional properties: - Any optional property defined in regulator.txt Example pmic: pv88090@48 { compatible = "pvs,pv88090"; reg = <0x48>; interrupt-parent = <&gpio>; interrupts = <24 24>; regulators { BUCK1 { regulator-name = "buck1"; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1393750>; regulator-min-microamp = < 220000>; regulator-max-microamp = <7040000>; regulator-boot-on; }; BUCK2 { regulator-name = "buck2"; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1393750>; regulator-min-microamp = <1496000>; regulator-max-microamp = <4189000>; }; BUCK3 { regulator-name = "buck3"; regulator-min-microvolt = <600000>; regulator-max-microvolt = <1393750>; regulator-min-microamp = <1496000>; regulator-max-microamp = <4189000>; regulator-boot-on; }; LDO1 { regulator-name = "ldo1"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <4350000>; regulator-boot-on; }; LDO2 { regulator-name = "ldo2"; regulator-min-microvolt = < 650000>; regulator-max-microvolt = <2225000>; regulator-boot-on; }; }; }; Documentation/devicetree/bindings/soc/qcom,smd-rpm.txt→Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.txt +63 −21 Original line number Diff line number Diff line Qualcomm Resource Power Manager (RPM) over SMD QCOM SMD RPM REGULATOR This driver is used to interface with the Resource Power Manager (RPM) found in various Qualcomm platforms. The RPM allows each component in the system to vote for state of the system resources, such as clocks, regulators and bus frequencies. The Qualcomm RPM over SMD regulator is modelled as a subdevice of the RPM. Because SMD is used as the communication transport mechanism, the RPM resides as a subnode of the SMD. As such, the SMD-RPM regulator requires that the SMD and RPM nodes be present. - compatible: Usage: required Value type: <string> Definition: must be one of: "qcom,rpm-msm8974" Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt for information pertaining to the SMD node. - qcom,smd-channels: Usage: required Value type: <stringlist> Definition: Shared Memory channel used for communication with the RPM Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt for information regarding the RPM node. = SUBDEVICES The RPM exposes resources to its subnodes. The below bindings specify the set of valid subnodes that can operate on these resources. == Regulators == Regulator Regulator nodes are identified by their compatible: Loading @@ -30,7 +20,9 @@ Regulator nodes are identified by their compatible: Value type: <string> Definition: must be one of: "qcom,rpm-pm8841-regulators" "qcom,rpm-pm8916-regulators" "qcom,rpm-pm8941-regulators" "qcom,rpm-pma8084-regulators" - vdd_s1-supply: - vdd_s2-supply: Loading @@ -45,6 +37,19 @@ Regulator nodes are identified by their compatible: 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_l2_l3-supply: - vdd_l4_l5_l6-supply: - vdd_l7-supply: - vdd_l8_l9_l10_l11_l12_l13_l14_l15_l16_l17_l18-supply: Usage: optional (pm8916 only) Value type: <phandle> Definition: reference to regulator supplying the input pin, as described in the data sheet - vdd_s1-supply: - vdd_s2-supply: - vdd_s3-supply: Loading @@ -63,6 +68,35 @@ Regulator nodes are identified by their compatible: 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_l11-supply: - vdd_l2_l3_l4_l27-supply: - vdd_l5_l7-supply: - vdd_l6_l12_l14_l15_l26-supply: - vdd_l8-supply: - vdd_l9_l10_l13_l20_l23_l24-supply: - vdd_l16_l25-supply: - vdd_l17-supply: - vdd_l18-supply: - vdd_l19-supply: - vdd_l21-supply: - vdd_l22-supply: Usage: optional (pma8084 only) Value type: <phandle> Definition: reference to regulator supplying the input pin, as described in the data sheet 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. Loading @@ -70,11 +104,20 @@ 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 pma8084: 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, lvs1, lvs2, lvs3, lvs4, 5vs1 The content of each sub-node is defined by the standard binding for regulators - see regulator.txt. Loading Loading @@ -114,4 +157,3 @@ see regulator.txt. }; }; }; Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt 0 → 100644 +58 −0 Original line number Diff line number Diff line Qualcomm Resource Power Manager (RPM) over SMD This driver is used to interface with the Resource Power Manager (RPM) found in various Qualcomm platforms. The RPM allows each component in the system to vote for state of the system resources, such as clocks, regulators and bus frequencies. The SMD information for the RPM edge should be filled out. See qcom,smd.txt for the required edge properties. All SMD related properties will reside within the RPM node itself. = SUBDEVICES The RPM exposes resources to its subnodes. The rpm_requests node must be present and this subnode may contain children that designate regulator resources. - compatible: Usage: required Value type: <string> Definition: must be one of: "qcom,rpm-apq8084" "qcom,rpm-msm8916" "qcom,rpm-msm8974" - qcom,smd-channels: Usage: required Value type: <string> Definition: must be "rpm_requests" Refer to Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.txt for information on the regulator subnodes that can exist under the rpm_requests. Example: soc { apcs: syscon@f9011000 { compatible = "syscon"; reg = <0xf9011000 0x1000>; }; }; smd { compatible = "qcom,smd"; rpm { interrupts = <0 168 1>; qcom,ipc = <&apcs 8 0>; qcom,smd-edge = <15>; rpm_requests { compatible = "qcom,rpm-msm8974"; qcom,smd-channels = "rpm_requests"; ... }; }; }; drivers/regulator/Kconfig +15 −0 Original line number Diff line number Diff line Loading @@ -522,6 +522,14 @@ config REGULATOR_PV88060 Say y here to support the voltage regulators and convertors PV88060 config REGULATOR_PV88090 tristate "Powerventure Semiconductor PV88090 regulator" depends on I2C select REGMAP_I2C help Say y here to support the voltage regulators and convertors on PV88090 config REGULATOR_PWM tristate "PWM voltage regulator" depends on PWM Loading Loading @@ -698,6 +706,13 @@ config REGULATOR_TPS6507X three step-down converters and two general-purpose LDO voltage regulators. It supports TI's software based Class-2 SmartReflex implementation. config REGULATOR_TPS65086 tristate "TI TPS65086 Power regulators" depends on MFD_TPS65086 help This driver provides support for the voltage regulators on TI TPS65086 PMICs. config REGULATOR_TPS65090 tristate "TI TPS65090 Power regulator" depends on MFD_TPS65090 Loading drivers/regulator/Makefile +2 −0 Original line number Diff line number Diff line Loading @@ -68,6 +68,7 @@ obj-$(CONFIG_REGULATOR_QCOM_SPMI) += qcom_spmi-regulator.o obj-$(CONFIG_REGULATOR_PALMAS) += palmas-regulator.o obj-$(CONFIG_REGULATOR_PFUZE100) += pfuze100-regulator.o obj-$(CONFIG_REGULATOR_PV88060) += pv88060-regulator.o obj-$(CONFIG_REGULATOR_PV88090) += pv88090-regulator.o obj-$(CONFIG_REGULATOR_PWM) += pwm-regulator.o obj-$(CONFIG_REGULATOR_TPS51632) += tps51632-regulator.o obj-$(CONFIG_REGULATOR_PBIAS) += pbias-regulator.o Loading @@ -87,6 +88,7 @@ obj-$(CONFIG_REGULATOR_TPS6105X) += tps6105x-regulator.o obj-$(CONFIG_REGULATOR_TPS62360) += tps62360-regulator.o obj-$(CONFIG_REGULATOR_TPS65023) += tps65023-regulator.o obj-$(CONFIG_REGULATOR_TPS6507X) += tps6507x-regulator.o obj-$(CONFIG_REGULATOR_TPS65086) += tps65086-regulator.o obj-$(CONFIG_REGULATOR_TPS65090) += tps65090-regulator.o obj-$(CONFIG_REGULATOR_TPS65217) += tps65217-regulator.o obj-$(CONFIG_REGULATOR_TPS65218) += tps65218-regulator.o Loading Loading
Documentation/devicetree/bindings/regulator/pv88090.txt 0 → 100644 +65 −0 Original line number Diff line number Diff line * Powerventure Semiconductor PV88090 Voltage Regulator Required properties: - compatible: "pvs,pv88090". - reg: I2C slave address, usually 0x48. - interrupts: the interrupt outputs of the controller - regulators: A node that houses a sub-node for each regulator within the device. Each sub-node is identified using the node's name, with valid values listed below. The content of each sub-node is defined by the standard binding for regulators; see regulator.txt. BUCK1, BUCK2, BUCK3, LDO1, and LDO2. Optional properties: - Any optional property defined in regulator.txt Example pmic: pv88090@48 { compatible = "pvs,pv88090"; reg = <0x48>; interrupt-parent = <&gpio>; interrupts = <24 24>; regulators { BUCK1 { regulator-name = "buck1"; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1393750>; regulator-min-microamp = < 220000>; regulator-max-microamp = <7040000>; regulator-boot-on; }; BUCK2 { regulator-name = "buck2"; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1393750>; regulator-min-microamp = <1496000>; regulator-max-microamp = <4189000>; }; BUCK3 { regulator-name = "buck3"; regulator-min-microvolt = <600000>; regulator-max-microvolt = <1393750>; regulator-min-microamp = <1496000>; regulator-max-microamp = <4189000>; regulator-boot-on; }; LDO1 { regulator-name = "ldo1"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <4350000>; regulator-boot-on; }; LDO2 { regulator-name = "ldo2"; regulator-min-microvolt = < 650000>; regulator-max-microvolt = <2225000>; regulator-boot-on; }; }; };
Documentation/devicetree/bindings/soc/qcom,smd-rpm.txt→Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.txt +63 −21 Original line number Diff line number Diff line Qualcomm Resource Power Manager (RPM) over SMD QCOM SMD RPM REGULATOR This driver is used to interface with the Resource Power Manager (RPM) found in various Qualcomm platforms. The RPM allows each component in the system to vote for state of the system resources, such as clocks, regulators and bus frequencies. The Qualcomm RPM over SMD regulator is modelled as a subdevice of the RPM. Because SMD is used as the communication transport mechanism, the RPM resides as a subnode of the SMD. As such, the SMD-RPM regulator requires that the SMD and RPM nodes be present. - compatible: Usage: required Value type: <string> Definition: must be one of: "qcom,rpm-msm8974" Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt for information pertaining to the SMD node. - qcom,smd-channels: Usage: required Value type: <stringlist> Definition: Shared Memory channel used for communication with the RPM Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt for information regarding the RPM node. = SUBDEVICES The RPM exposes resources to its subnodes. The below bindings specify the set of valid subnodes that can operate on these resources. == Regulators == Regulator Regulator nodes are identified by their compatible: Loading @@ -30,7 +20,9 @@ Regulator nodes are identified by their compatible: Value type: <string> Definition: must be one of: "qcom,rpm-pm8841-regulators" "qcom,rpm-pm8916-regulators" "qcom,rpm-pm8941-regulators" "qcom,rpm-pma8084-regulators" - vdd_s1-supply: - vdd_s2-supply: Loading @@ -45,6 +37,19 @@ Regulator nodes are identified by their compatible: 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_l2_l3-supply: - vdd_l4_l5_l6-supply: - vdd_l7-supply: - vdd_l8_l9_l10_l11_l12_l13_l14_l15_l16_l17_l18-supply: Usage: optional (pm8916 only) Value type: <phandle> Definition: reference to regulator supplying the input pin, as described in the data sheet - vdd_s1-supply: - vdd_s2-supply: - vdd_s3-supply: Loading @@ -63,6 +68,35 @@ Regulator nodes are identified by their compatible: 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_l11-supply: - vdd_l2_l3_l4_l27-supply: - vdd_l5_l7-supply: - vdd_l6_l12_l14_l15_l26-supply: - vdd_l8-supply: - vdd_l9_l10_l13_l20_l23_l24-supply: - vdd_l16_l25-supply: - vdd_l17-supply: - vdd_l18-supply: - vdd_l19-supply: - vdd_l21-supply: - vdd_l22-supply: Usage: optional (pma8084 only) Value type: <phandle> Definition: reference to regulator supplying the input pin, as described in the data sheet 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. Loading @@ -70,11 +104,20 @@ 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 pma8084: 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, lvs1, lvs2, lvs3, lvs4, 5vs1 The content of each sub-node is defined by the standard binding for regulators - see regulator.txt. Loading Loading @@ -114,4 +157,3 @@ see regulator.txt. }; }; };
Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt 0 → 100644 +58 −0 Original line number Diff line number Diff line Qualcomm Resource Power Manager (RPM) over SMD This driver is used to interface with the Resource Power Manager (RPM) found in various Qualcomm platforms. The RPM allows each component in the system to vote for state of the system resources, such as clocks, regulators and bus frequencies. The SMD information for the RPM edge should be filled out. See qcom,smd.txt for the required edge properties. All SMD related properties will reside within the RPM node itself. = SUBDEVICES The RPM exposes resources to its subnodes. The rpm_requests node must be present and this subnode may contain children that designate regulator resources. - compatible: Usage: required Value type: <string> Definition: must be one of: "qcom,rpm-apq8084" "qcom,rpm-msm8916" "qcom,rpm-msm8974" - qcom,smd-channels: Usage: required Value type: <string> Definition: must be "rpm_requests" Refer to Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.txt for information on the regulator subnodes that can exist under the rpm_requests. Example: soc { apcs: syscon@f9011000 { compatible = "syscon"; reg = <0xf9011000 0x1000>; }; }; smd { compatible = "qcom,smd"; rpm { interrupts = <0 168 1>; qcom,ipc = <&apcs 8 0>; qcom,smd-edge = <15>; rpm_requests { compatible = "qcom,rpm-msm8974"; qcom,smd-channels = "rpm_requests"; ... }; }; };
drivers/regulator/Kconfig +15 −0 Original line number Diff line number Diff line Loading @@ -522,6 +522,14 @@ config REGULATOR_PV88060 Say y here to support the voltage regulators and convertors PV88060 config REGULATOR_PV88090 tristate "Powerventure Semiconductor PV88090 regulator" depends on I2C select REGMAP_I2C help Say y here to support the voltage regulators and convertors on PV88090 config REGULATOR_PWM tristate "PWM voltage regulator" depends on PWM Loading Loading @@ -698,6 +706,13 @@ config REGULATOR_TPS6507X three step-down converters and two general-purpose LDO voltage regulators. It supports TI's software based Class-2 SmartReflex implementation. config REGULATOR_TPS65086 tristate "TI TPS65086 Power regulators" depends on MFD_TPS65086 help This driver provides support for the voltage regulators on TI TPS65086 PMICs. config REGULATOR_TPS65090 tristate "TI TPS65090 Power regulator" depends on MFD_TPS65090 Loading
drivers/regulator/Makefile +2 −0 Original line number Diff line number Diff line Loading @@ -68,6 +68,7 @@ obj-$(CONFIG_REGULATOR_QCOM_SPMI) += qcom_spmi-regulator.o obj-$(CONFIG_REGULATOR_PALMAS) += palmas-regulator.o obj-$(CONFIG_REGULATOR_PFUZE100) += pfuze100-regulator.o obj-$(CONFIG_REGULATOR_PV88060) += pv88060-regulator.o obj-$(CONFIG_REGULATOR_PV88090) += pv88090-regulator.o obj-$(CONFIG_REGULATOR_PWM) += pwm-regulator.o obj-$(CONFIG_REGULATOR_TPS51632) += tps51632-regulator.o obj-$(CONFIG_REGULATOR_PBIAS) += pbias-regulator.o Loading @@ -87,6 +88,7 @@ obj-$(CONFIG_REGULATOR_TPS6105X) += tps6105x-regulator.o obj-$(CONFIG_REGULATOR_TPS62360) += tps62360-regulator.o obj-$(CONFIG_REGULATOR_TPS65023) += tps65023-regulator.o obj-$(CONFIG_REGULATOR_TPS6507X) += tps6507x-regulator.o obj-$(CONFIG_REGULATOR_TPS65086) += tps65086-regulator.o obj-$(CONFIG_REGULATOR_TPS65090) += tps65090-regulator.o obj-$(CONFIG_REGULATOR_TPS65217) += tps65217-regulator.o obj-$(CONFIG_REGULATOR_TPS65218) += tps65218-regulator.o Loading