ARM: dts: msm: add pin control regulators for WLAN and BT on msmcobalt

Initialize PMCOBALT regulators SMPS 7 and LDO 5 to use HW_EN0 pin
control to force high power mode. Whenever HW_EN0 is driven high these
regulators will be forced into high power mode.

HW_EN0 is driven high whenever WLAN is transmitting or receiving, thereby
reducing power when it is not active.

Initialize PMCOBALT regulators SMPS 3 and SMPS 5 to use HW_EN2 pin
control to force high power mode. Whenever HW_EN2 is driven high these
regulators will be forced into high power mode.

Add pin control regulator devices for PMCOBALT regulators LDO 7, LDO
17, and LDO 25. When any of these pin control regulators are enabled by
software their output will be physically enabled whenever HW_EN2 is driven
high. When disabled HW_EN2 is ignored.

HW_EN2 is driven high whenever BT is transmitting or receiving, thereby
reducing power when it is not active.

CRs-Fixed: 971169
Change-Id: I819299fefde72400a18fb8503aedd1a1f32bfe7b
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
This commit is contained in:
Nicholas Troast 2016-02-02 13:50:59 -08:00 committed by David Keitel
parent 4f80702272
commit 189a11723e

View file

@ -63,6 +63,8 @@
pmcobalt_s3: regulator-s3 {
regulator-min-microvolt = <1352000>;
regulator-max-microvolt = <1352000>;
/* Force PWM follows HW2_EN */
qcom,init-pin-ctrl-mode = <4>;
status = "okay";
};
};
@ -81,6 +83,8 @@
pmcobalt_s5: regulator-s5 {
regulator-min-microvolt = <2040000>;
regulator-max-microvolt = <2040000>;
/* Force PWM follows HW2_EN */
qcom,init-pin-ctrl-mode = <4>;
status = "okay";
};
};
@ -90,6 +94,8 @@
pmcobalt_s7: regulator-s7 {
regulator-min-microvolt = <1028000>;
regulator-max-microvolt = <1028000>;
/* Force PWM follows HW0_EN */
qcom,init-pin-ctrl-mode = <1>;
status = "okay";
};
};
@ -200,6 +206,8 @@
pmcobalt_l5: regulator-l5 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
/* Force NPM follows HW0_EN */
qcom,init-pin-ctrl-mode = <1>;
status = "okay";
};
};
@ -220,6 +228,16 @@
regulator-max-microvolt = <1800000>;
status = "okay";
};
pmcobalt_l7_pin_ctrl: regulator-l7-pin-ctrl {
compatible = "qcom,rpm-smd-regulator";
regulator-name = "pmcobalt_l7_pin_ctrl";
qcom,set = <3>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
/* Enable follows HW_EN2 */
qcom,enable-with-pin-ctrl = <0 4>;
};
};
rpm-regulator-ldoa8 {
@ -310,6 +328,16 @@
regulator-max-microvolt = <1304000>;
status = "okay";
};
pmcobalt_l17_pin_ctrl: regulator-l17-pin-ctrl {
compatible = "qcom,rpm-smd-regulator";
regulator-name = "pmcobalt_l17_pin_ctrl";
qcom,set = <3>;
regulator-min-microvolt = <1304000>;
regulator-max-microvolt = <1304000>;
/* Enable follows HW_EN2 */
qcom,enable-with-pin-ctrl = <0 4>;
};
};
rpm-regulator-ldoa18 {
@ -381,6 +409,16 @@
regulator-max-microvolt = <3312000>;
status = "okay";
};
pmcobalt_l25_pin_ctrl: regulator-l25-pin-ctrl {
compatible = "qcom,rpm-smd-regulator";
regulator-name = "pmcobalt_l25_pin_ctrl";
qcom,set = <3>;
regulator-min-microvolt = <3312000>;
regulator-max-microvolt = <3312000>;
/* Enable follows HW_EN2 */
qcom,enable-with-pin-ctrl = <0 4>;
};
};
rpm-regulator-ldoa26 {