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

Commit d6f4899a authored by David Collins's avatar David Collins Committed by Gerrit - the friendly Code Review server
Browse files

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



Add CPR support for SDM845 v2 parts with SPEED_BIN fuse equal to
2.  These parts are able to operate at a higher single core
performance cluster frequency than what is available for
SPEED_BIN 1 parts (2803.2 MHz vs 2745.6 MHz).

Change-Id: I726e79935ca1e7006bf68850b009b8e0194adbe7
Signed-off-by: default avatarDavid Collins <collinsd@codeaurora.org>
parent 85d44cbd
Loading
Loading
Loading
Loading
+148 −24
Original line number Diff line number Diff line
@@ -57,7 +57,7 @@
		qcom,cpr-saw-use-unit-mV;

		qcom,saw-avs-ctrl = <0x101C031>;
		qcom,saw-avs-limit = <0x3B803B8>;
		qcom,saw-avs-limit = <0x3E803E8>;

		qcom,cpr-enable;
		qcom,cpr-hw-closed-loop;
@@ -85,9 +85,9 @@
				regulator-max-microvolt = <18>;

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

				qcom,cpr-corner-fmax-map = <6 12 15 18>;
@@ -150,6 +150,15 @@
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					/* Speed bin 2 */
					<      0        0    12000    12000>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>,
					<(-15000) (-15000)  (-3000)  (-3000)>;

				qcom,cpr-closed-loop-voltage-fuse-adjustment =
@@ -170,6 +179,15 @@
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					/* Speed bin 2 */
					<      0        0    12000    10000>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>,
					<(-15000) (-15000)  (-3000)  (-5000)>;

				qcom,allow-voltage-interpolation;
@@ -183,6 +201,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>;
@@ -202,19 +222,23 @@
				regulator-max-microvolt = <15>;

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

				qcom,cpr-corner-fmax-map =
					/* Speed bin 0 */
					<4 8 11 14>,
					/* Speed bin 1 */
					<4 8 11 15>,
					/* Speed bin 2 */
					<4 8 11 15>;

				qcom,cpr-voltage-ceiling =
@@ -223,6 +247,11 @@
					 828000  828000  828000  828000  828000
					 828000  932000  932000 1000000>,
					/* Speed bin 1 */
					<828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  932000  932000 1000000
					1000000>,
					/* Speed bin 2 */
					<828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  932000  932000 1000000
@@ -234,6 +263,11 @@
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000>,
					/* Speed bin 1 */
					<568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000
					 568000>,
					/* Speed bin 2 */
					<568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000
@@ -245,6 +279,10 @@
					 32000  32000  32000  32000  32000
					 32000  32000  32000  40000>,
					/* Speed bin 1 */
					<32000  32000  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  32000  40000  40000>,
					/* Speed bin 2 */
					<32000  32000  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  32000  40000  40000>;
@@ -261,6 +299,12 @@
					 576000000  652800000  748800000
					 844800000  940800000 1036800000
					1132800000 1209600000 1305600000
					1401600000 1497600000 1593600000>,
					/* Speed bin 2 */
					<300000000  403200000  480000000
					 576000000  652800000  748800000
					 844800000  940800000 1036800000
					1132800000 1209600000 1305600000
					1401600000 1497600000 1593600000>;

				qcom,cpr-ro-scaling-factor =
@@ -295,6 +339,15 @@
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					/* Speed bin 2 */
					<   8000    16000    16000    12000>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>,
					< (-7000)    1000     1000   (-3000)>;

				qcom,cpr-closed-loop-voltage-fuse-adjustment =
@@ -315,6 +368,15 @@
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					/* Speed bin 2 */
					<   6000    14000    16000    12000>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>,
					< (-9000)  (-1000)    1000   (-3000)>;

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

				qcom,cpr-aging-max-voltage-adjustment = <15000>;
				qcom,cpr-aging-ref-corner = <14 15>;
				qcom,cpr-aging-ref-corner = <14 15 15>;
				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>;
@@ -370,7 +434,7 @@
		qcom,cpr-saw-use-unit-mV;

		qcom,saw-avs-ctrl = <0x101C031>;
		qcom,saw-avs-limit = <0x4700470>;
		qcom,saw-avs-limit = <0x4880488>;

		qcom,cpr-enable;
		qcom,cpr-hw-closed-loop;
@@ -380,7 +444,7 @@
		qcom,cpr-panic-reg-name-list =
			"APSS_GOLD_CPRH_STATUS_0", "GOLD_SAW4_PMIC_STS";

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

		thread@0 {
@@ -393,23 +457,27 @@
			apc1_perfcl_vreg: regulator {
				regulator-name = "apc1_perfcl_corner";
				regulator-min-microvolt = <1>;
				regulator-max-microvolt = <33>;
				regulator-max-microvolt = <35>;

				qcom,cpr-fuse-corners = <5>;
				qcom,cpr-fuse-combos = <16>;
				qcom,cpr-speed-bins = <2>;
				qcom,cpr-speed-bin-corners = <28 31>;
				qcom,cpr-fuse-combos = <24>;
				qcom,cpr-speed-bins = <3>;
				qcom,cpr-speed-bin-corners = <28 31 33>;
				qcom,cpr-corners =
					/* Speed bin 0 */
					<28 28 28 28 28 28 28 28>,
					/* Speed bin 1 */
					<31 31 31 31 31 31 31 31>;
					<31 31 31 31 31 31 31 31>,
					/* Speed bin 2 */
					<33 33 33 33 33 33 33 33>;

				qcom,cpr-corner-fmax-map =
					/* Speed bin 0 */
					<7 14 22 27 28>,
					/* Speed bin 1 */
					<7 14 22 27 31>;
					<7 14 22 27 31>,
					/* Speed bin 2 */
					<7 14 22 30 33>;

				qcom,cpr-voltage-ceiling =
					/* Speed bin 0 */
@@ -418,15 +486,23 @@
					 828000  828000  828000  828000  828000
					 828000  828000  828000  932000  932000
					 932000  932000 1104000 1104000 1104000
					1104000 1136000 1136000>,
					1104000 1160000 1160000>,
					/* Speed bin 1 */
					<828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  828000  932000  932000
					 932000  932000 1104000 1104000 1104000
					1104000 1136000 1136000 1136000 1136000
					1136000>;
					1104000 1160000 1160000 1160000 1160000
					1160000>,
					/* Speed bin 2 */
					<828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  828000  828000  828000
					 828000  828000  828000  932000  932000
					 932000  932000 1104000 1104000 1104000
					1104000 1160000 1160000 1160000 1160000
					1160000 1160000 1160000>;

				qcom,cpr-voltage-floor =
					/* Speed bin 0 */
@@ -443,7 +519,15 @@
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000>;
					 568000>,
					/* Speed bin 2 */
					<568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000  568000  568000
					 568000  568000  568000>;

				qcom,cpr-floor-to-ceiling-max-range =
					/* Speed bin 0 */
@@ -460,7 +544,15 @@
					 32000  32000  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  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  32000  32000  32000
					 32000  32000  32000  32000  32000
					 32000  32000  40000  40000  40000
					 40000  40000  40000>;

				qcom,corner-frequencies =
					/* Speed bin 0 */
@@ -485,7 +577,19 @@
					1996800000 2092800000 2169600000
					2246400000 2323200000 2400000000
					2476800000 2553600000 2649600000
					2707200000>;
					2707200000>,
					/* Speed bin 2 */
					<300000000  403200000  480000000
					 576000000  652800000  748800000
					 825600000  902400000  979200000
					1056000000 1132800000 1209600000
					1286400000 1363200000 1459200000
					1536000000 1612800000 1689600000
					1766400000 1843200000 1920000000
					1996800000 2092800000 2169600000
					2246400000 2323200000 2400000000
					2476800000 2553600000 2649600000
					2707200000 2726400000 2745600000>;

				qcom,cpr-ro-scaling-factor =
					<2857 3056 2828 2952 2699 2796 2447
@@ -522,6 +626,15 @@
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 /* Speed bin 2 */
				 <   8000     8000     8000        0    16000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>,
				 < (-7000)  (-7000)  (-7000) (-15000)    1000>;

				qcom,cpr-closed-loop-voltage-fuse-adjustment =
@@ -542,6 +655,15 @@
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 /* Speed bin 2 */
				 <   6000     6000     8000        0    16000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>,
				 < (-9000)  (-9000)  (-7000) (-15000)    1000>;

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

				qcom,cpr-aging-max-voltage-adjustment = <15000>;
				qcom,cpr-aging-ref-corner = <27 31>;
				qcom,cpr-aging-ref-corner = <27 31 33>;
				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>;
@@ -586,7 +710,7 @@
/* VDD_APC1 */
&pm8998_s12 {
	regulator-min-microvolt = <568000>;
	regulator-max-microvolt = <1136000>;
	regulator-max-microvolt = <1160000>;
};

&clock_cpucc {