Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8babfbef authored by David Collins's avatar David Collins
Browse files

ARM: dts: msm: add VDD_APC0/1 CPR support for SDM845 SPEED_BIN 2 parts



Add support for SDM845 parts with SPEED_BIN fuse equal to 2.
These parts are fused at higher frequencies than what is present
on SPEED_BIN 1 parts.

SPEED_BIN 2 Fmax frequencies:
- Power Cluster:       1747.2 MHz
- L3 Cache:            1305.6 MHz
- Performance Cluster: 2208.0 MHz

Change-Id: I3a8a22229fe247e99c0a321d486645e365b0e5da
Signed-off-by: default avatarDavid Collins <collinsd@codeaurora.org>
parent 48f8e1cb
Loading
Loading
Loading
Loading
+155 −29
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
			reg = <0x3500 0x100>;
			regulator-name = "pm8998_s12";
			regulator-min-microvolt = <568000>;
			regulator-max-microvolt = <1056000>;
			regulator-max-microvolt = <1136000>;
			qcom,enable-time = <500>;
			regulator-always-on;
		};
@@ -114,9 +114,9 @@
				regulator-max-microvolt = <19>;

				qcom,cpr-fuse-corners = <4>;
				qcom,cpr-fuse-combos = <16>;
				qcom,cpr-speed-bins = <2>;
				qcom,cpr-speed-bin-corners = <19 19>;
				qcom,cpr-fuse-combos = <24>;
				qcom,cpr-speed-bins = <3>;
				qcom,cpr-speed-bin-corners = <19 19 19>;
				qcom,cpr-corners = <19>;

				qcom,cpr-corner-fmax-map = <6 12 17 19>;
@@ -134,6 +134,11 @@
					 584000  584000  632000  632000  632000
					 632000  672000  996000  996000>,
					/* Speed bin 1 */
					<568000  568000  568000  568000  568000
					 568000  568000  568000  568000  584000
					 584000  584000  632000  632000  632000
					 632000  672000  712000  712000>,
					/* Speed bin 2 */
					<568000  568000  568000  568000  568000
					 568000  568000  568000  568000  584000
					 584000  584000  632000  632000  632000
@@ -146,13 +151,30 @@
					 32000  32000  40000  40000>;

				qcom,corner-frequencies =
					/* Speed bin 0 */
					<300000000  422400000  499200000
					 576000000  652800000  748800000
					 825600000  902400000  979200000
					1056000000 1132800000 1209600000
					1286400000 1363200000 1440000000
					1516800000 1593600000 1651200000
					1708800000>,
					/* Speed bin 1 */
					<300000000  422400000  499200000
					 576000000  652800000  748800000
					 825600000  902400000  979200000
					1056000000 1132800000 1209600000
					1286400000 1363200000 1440000000
					1516800000 1593600000 1651200000
					1708800000>;
					1708800000>,
					/* Speed bin 2 */
					<300000000  422400000  499200000
					 576000000  652800000  748800000
					 825600000  902400000  979200000
					1056000000 1132800000 1209600000
					1286400000 1363200000 1440000000
					1516800000 1593600000 1670400000
					1747200000>;

				qcom,cpr-ro-scaling-factor =
					<2594 2795 2576 2761 2469 2673 2198
@@ -185,6 +207,8 @@
					/* Speed bin 0 */
					<0 1 1 1 1 1 1 1>,
					/* Speed bin 1 */
					<0 1 1 1 1 1 1 1>,
					/* Speed bin 2 */
					<0 1 1 1 1 1 1 1>;
				qcom,allow-aging-open-loop-voltage-adjustment =
					<1>;
@@ -201,20 +225,41 @@
			apc0_l3_vreg: regulator {
				regulator-name = "apc0_l3_corner";
				regulator-min-microvolt = <1>;
				regulator-max-microvolt = <11>;
				regulator-max-microvolt = <13>;

				qcom,cpr-fuse-corners = <4>;
				qcom,cpr-fuse-combos = <16>;
				qcom,cpr-speed-bins = <2>;
				qcom,cpr-speed-bin-corners = <11 11>;
				qcom,cpr-corners = <11>;
				qcom,cpr-fuse-combos = <24>;
				qcom,cpr-speed-bins = <3>;
				qcom,cpr-speed-bin-corners = <11 11 13>;
				qcom,cpr-corners =
					/* Speed bin 0 */
					<11 11 11 11 11 11 11 11>,
					/* Speed bin 1 */
					<11 11 11 11 11 11 11 11>,
					/* Speed bin 2 */
					<13 13 13 13 13 13 13 13>;

				qcom,cpr-corner-fmax-map = <4 7 9 11>;
				qcom,cpr-corner-fmax-map =
					/* Speed bin 0 */
					<4 7 9 11>,
					/* Speed bin 1 */
					<4 7 9 11>,
					/* Speed bin 2 */
					<4 7 9 13>;

				qcom,cpr-voltage-ceiling =
					/* Speed bin 0 */
					<872000  872000  872000  872000  872000
					 872000  872000  872000  928000  996000
					 996000>;
					 996000>,
					/* Speed bin 1 */
					<872000  872000  872000  872000  872000
					 872000  872000  872000  928000  996000
					 996000>,
					/* Speed bin 2 */
					<872000  872000  872000  872000  872000
					 872000  872000  872000  928000  996000
					 996000  996000  996000>;

				qcom,cpr-voltage-floor =
					/* Speed bin 0 */
@@ -224,18 +269,43 @@
					/* Speed bin 1 */
					<568000  568000  568000  568000  568000
					 584000  584000  632000  672000  712000
					 712000>;
					 712000>,
					/* Speed bin 2 */
					<568000  568000  568000  568000  568000
					 584000  584000  632000  672000  712000
					 712000  712000  712000>;

				qcom,cpr-floor-to-ceiling-max-range =
					/* Speed bin 0 */
					<32000  32000  32000  32000  32000
					 32000  32000  32000  32000  40000
					 40000>,
					/* Speed bin 1 */
					<32000  32000  32000  32000  32000
					 32000  32000  32000  32000  40000
					 40000>;
					 40000>,
					/* Speed bin 2 */
					<32000  32000  32000  32000  32000
					 32000  32000  32000  32000  40000
					 40000  40000  40000>;

				qcom,corner-frequencies =
					/* Speed bin 0 */
					<300000000  422400000  499200000
					 576000000  652800000  729600000
					 806400000  883200000  960000000
					1036800000 1094400000>,
					/* Speed bin 1 */
					<300000000  422400000  499200000
					 576000000  652800000  729600000
					 806400000  883200000  960000000
					1036800000 1094400000>,
					/* Speed bin 2 */
					<300000000  422400000  499200000
					 576000000  652800000  729600000
					 806400000  883200000  960000000
					1036800000 1094400000>;
					1036800000 1113600000 1209600000
					1305600000>;

				qcom,cpr-ro-scaling-factor =
					<2857 3056 2828 2952 2699 2796 2447
@@ -262,12 +332,14 @@
				qcom,cpr-scaled-open-loop-voltage-as-ceiling;

				qcom,cpr-aging-max-voltage-adjustment = <15000>;
				qcom,cpr-aging-ref-corner = <11>;
				qcom,cpr-aging-ref-corner = <11 11 13>;
				qcom,cpr-aging-ro-scaling-factor = <1620>;
				qcom,allow-aging-voltage-adjustment =
					/* Speed bin 0 */
					<0 1 1 1 1 1 1 1>,
					/* Speed bin 1 */
					<0 1 1 1 1 1 1 1>,
					/* Speed bin 2 */
					<0 1 1 1 1 1 1 1>;
				qcom,allow-aging-open-loop-voltage-adjustment =
					<1>;
@@ -320,7 +392,7 @@
		qcom,cpr-panic-reg-name-list =
			"APSS_GOLD_CPRH_STATUS_0", "GOLD_SAW4_PMIC_STS";

		qcom,cpr-aging-ref-voltage = <1056000>;
		qcom,cpr-aging-ref-voltage = <1136000>;
		vdd-supply = <&pm8998_s12>;

		thread@0 {
@@ -333,23 +405,27 @@
			apc1_perfcl_vreg: regulator {
				regulator-name = "apc1_perfcl_corner";
				regulator-min-microvolt = <1>;
				regulator-max-microvolt = <26>;
				regulator-max-microvolt = <27>;

				qcom,cpr-fuse-corners = <3>;
				qcom,cpr-fuse-combos = <16>;
				qcom,cpr-speed-bins = <2>;
				qcom,cpr-speed-bin-corners = <22 24>;
				qcom,cpr-fuse-combos = <24>;
				qcom,cpr-speed-bins = <3>;
				qcom,cpr-speed-bin-corners = <22 24 25>;
				qcom,cpr-corners =
					/* Speed bin 0 */
					<22 22 22 22 22 22 22 22>,
					/* Speed bin 1 */
					<24 24 24 24 24 24 24 24>;
					<24 24 24 24 24 24 24 24>,
					/* Speed bin 2 */
					<25 25 25 25 25 25 25 25>;

				qcom,cpr-corner-fmax-map =
					/* Speed bin 0 */
					<10 17 22>,
					/* Speed bin 1 */
					<10 17 24>;
					<10 17 24>,
					/* Speed bin 2 */
					<10 17 25>;

				qcom,cpr-voltage-ceiling =
					/* Speed bin 0 */
@@ -357,13 +433,20 @@
					 828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  884000  952000  952000
					1056000 1056000>,
					1136000 1136000>,
					/* Speed bin 1 */
					<828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  884000  952000  952000
					1056000 1056000 1056000 1056000>;
					1136000 1136000 1136000 1136000>,
					/* Speed bin 2 */
					<828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  884000  952000  952000
					1136000 1136000 1136000 1136000
					1136000>;

				qcom,cpr-voltage-floor =
					/* Speed bin 0 */
@@ -377,7 +460,14 @@
					 568000  568000  568000  568000  568000
					 584000  584000  632000  632000  632000
					 632000  632000  672000  712000  712000
					 772000  772000  772000  772000>;
					 772000  772000  772000  772000>,
					/* Speed bin 2 */
					<568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 584000  584000  632000  632000  632000
					 632000  632000  672000  712000  712000
					 772000  772000  772000  772000
					 772000>;

				qcom,cpr-floor-to-ceiling-max-range =
					/* Speed bin 0 */
@@ -391,7 +481,13 @@
					 32000  32000  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  40000  40000  40000
					 40000  40000  40000  40000>;
					 40000  40000  40000  40000>,
					/* Speed bin 2 */
					<32000  32000  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  40000  40000  40000
					 40000  40000  40000  40000  40000>;

				qcom,corner-frequencies =
					/* Speed bin 0 */
@@ -411,7 +507,17 @@
					1267200000 1344000000 1420800000
					1497600000 1574400000 1651200000
					1728000000 1804800000 1881600000
					1958400000 2035200000 2092800000>;
					1958400000 2035200000 2092800000>,
					/* Speed bin 2 */
					<300000000  422400000  499200000
					 576000000  652800000  729600000
					 806400000  883200000  960000000
					1036800000 1113600000 1190400000
					1267200000 1344000000 1420800000
					1497600000 1574400000 1651200000
					1728000000 1804800000 1881600000
					1958400000 2035200000 2112000000
					2208000000>;

				qcom,cpr-ro-scaling-factor =
					<2857 3056 2828 2952 2699 2796 2447
@@ -442,6 +548,15 @@
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					/* Speed bin 2 */
					<100000 100000 100000>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>;

				qcom,cpr-closed-loop-voltage-fuse-adjustment =
@@ -462,6 +577,15 @@
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					/* Speed bin 2 */
					<100000 100000 100000>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>,
					<     0      0      0>;

				qcom,allow-voltage-interpolation;
@@ -469,12 +593,14 @@
				qcom,cpr-scaled-open-loop-voltage-as-ceiling;

				qcom,cpr-aging-max-voltage-adjustment = <15000>;
				qcom,cpr-aging-ref-corner = <22 24>;
				qcom,cpr-aging-ref-corner = <22 24 25>;
				qcom,cpr-aging-ro-scaling-factor = <1700>;
				qcom,allow-aging-voltage-adjustment =
					/* Speed bin 0 */
					<0 1 1 1 1 1 1 1>,
					/* Speed bin 1 */
					<0 1 1 1 1 1 1 1>,
					/* Speed bin 2 */
					<0 1 1 1 1 1 1 1>;
				qcom,allow-aging-open-loop-voltage-adjustment =
					<1>;