blob: 5512ccd670efb4d707bb48a22e8abab1b2eff4a7 [file] [log] [blame]
/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
/* Stub Regulators */
/ {
pm8110_s1_corner: regulator-s1-corner {
compatible = "qcom,stub-regulator";
regulator-name = "8110_s1_corner";
qcom,hpm-min-load = <100000>;
regulator-min-microvolt = <1>;
regulator-max-microvolt = <7>;
qcom,consumer-supplies = "vdd_dig", "";
};
};
/* SPM controlled regulators */
&spmi_bus {
qcom,pm8110@1 {
pm8110_s2: spm-regulator@1700 {
compatible = "qcom,spm-regulator";
regulator-name = "8110_s2";
reg = <0x1700 0x100>;
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1350000>;
};
};
};
/* CPR controlled regulator */
/ {
apc_vreg_corner: regulator@f9018000 {
status = "okay";
compatible = "qcom,cpr-regulator";
reg = <0xf9018000 0x1000>,
<0xfc4b80b0 8>;
reg-names = "rbcpr", "efuse_phys";
regulator-name = "apc_corner";
regulator-min-microvolt = <1>;
regulator-max-microvolt = <4>;
qcom,num-efuse-bits = <5>;
qcom,efuse-bit-pos = <6 7 8 9 10>;
qcom,pvs-bin-process = <0 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2
2 2 2 2 3 3 3 3 3 3 3 3 0 0 0 0>;
qcom,pvs-corner-ceiling-slow = <1050000 1150000 1275000 1350000>;
qcom,pvs-corner-ceiling-nom = <975000 1075000 1200000 1200000>;
qcom,pvs-corner-ceiling-fast = <900000 1000000 1140000 1140000>;
vdd-apc-supply = <&pm8110_s2>;
};
};
/* QPNP controlled regulators: */
&spmi_bus {
qcom,pm8110@1 {
pm8110_s1: regulator@1400 {
status = "okay";
regulator-min-microvolt = <1150000>;
regulator-max-microvolt = <1150000>;
qcom,enable-time = <500>;
qcom,system-load = <100000>;
regulator-always-on;
};
pm8110_s3: regulator@1a00 {
status = "okay";
regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1350000>;
qcom,enable-time = <500>;
qcom,system-load = <100000>;
regulator-always-on;
};
pm8110_s4: regulator@1d00 {
status = "okay";
regulator-min-microvolt = <2150000>;
regulator-max-microvolt = <2150000>;
qcom,enable-time = <500>;
qcom,system-load = <100000>;
regulator-always-on;
};
pm8110_l1: regulator@4000 {
status = "okay";
parent-supply = <&pm8110_s3>;
regulator-min-microvolt = <1225000>;
regulator-max-microvolt = <1225000>;
qcom,enable-time = <200>;
};
pm8110_l2: regulator@4100 {
status = "okay";
parent-supply = <&pm8110_s3>;
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,enable-time = <200>;
qcom,system-load = <10000>;
regulator-always-on;
};
pm8110_l3: regulator@4200 {
status = "okay";
parent-supply = <&pm8110_s3>;
regulator-min-microvolt = <1150000>;
regulator-max-microvolt = <1150000>;
qcom,enable-time = <200>;
qcom,system-load = <10000>;
regulator-always-on;
};
pm8110_l4: regulator@4300 {
status = "okay";
parent-supply = <&pm8110_s3>;
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,enable-time = <200>;
};
pm8110_l5: regulator@4400 {
status = "okay";
parent-supply = <&pm8110_s3>;
regulator-min-microvolt = <1300000>;
regulator-max-microvolt = <1300000>;
qcom,enable-time = <200>;
};
pm8110_l6: regulator@4500 {
status = "okay";
parent-supply = <&pm8110_s4>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,enable-time = <200>;
qcom,system-load = <10000>;
regulator-always-on;
};
pm8110_l7: regulator@4600 {
status = "okay";
parent-supply = <&pm8110_s4>;
regulator-min-microvolt = <2050000>;
regulator-max-microvolt = <2050000>;
qcom,enable-time = <200>;
};
pm8110_l8: regulator@4700 {
status = "okay";
parent-supply = <&pm8110_s4>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,enable-time = <200>;
};
pm8110_l9: regulator@4800 {
status = "okay";
parent-supply = <&pm8110_s4>;
regulator-min-microvolt = <2050000>;
regulator-max-microvolt = <2050000>;
qcom,enable-time = <200>;
};
pm8110_l10: regulator@4900 {
status = "okay";
parent-supply = <&pm8110_s4>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,enable-time = <200>;
qcom,consumer-supplies = "vdd_sr2_pll", "";
};
pm8110_l12: regulator@4b00 {
status = "okay";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
qcom,enable-time = <200>;
};
pm8110_l14: regulator@4d00 {
status = "okay";
parent-supply = <&pm8110_s4>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,enable-time = <200>;
};
pm8110_l15: regulator@4e00 {
status = "okay";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
qcom,enable-time = <200>;
};
pm8110_l16: regulator@4f00 {
status = "okay";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
qcom,enable-time = <200>;
};
pm8110_l17: regulator@5000 {
status = "okay";
regulator-min-microvolt = <2900000>;
regulator-max-microvolt = <2900000>;
qcom,enable-time = <200>;
};
pm8110_l18: regulator@5100 {
status = "okay";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2950000>;
qcom,enable-time = <200>;
};
pm8110_l19: regulator@5200 {
status = "okay";
regulator-min-microvolt = <2850000>;
regulator-max-microvolt = <2850000>;
qcom,enable-time = <200>;
};
pm8110_l20: regulator@5300 {
status = "okay";
regulator-min-microvolt = <3075000>;
regulator-max-microvolt = <3075000>;
qcom,enable-time = <200>;
};
pm8110_l21: regulator@5400 {
status = "okay";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2950000>;
qcom,enable-time = <200>;
};
pm8110_l22: regulator@5500 {
status = "okay";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
qcom,enable-time = <200>;
};
};
};