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

Commit 9dbe02c8 authored by David Collins's avatar David Collins
Browse files

ARM: dts: msm: specify VDD_APCC CPR configurations for msm8996v3



Specify the VDD_APCC CPR configurations which are used on
MSM8996v3 chips.  This consists of an expanded set of frequencies
supported, new ceiling voltages, increased max voltage, and
adjustments reset to 0 uV.  Override the new values in the
MSM8996v2 device tree file so that the CPR configurations of
this chip revision remain unchanged.

Change-Id: Ibeed21c58fa84b9115877e9f583553f1ba8bc9d4
Signed-off-by: default avatarDavid Collins <collinsd@codeaurora.org>
parent f950cce1
Loading
Loading
Loading
Loading
+68 −66
Original line number Diff line number Diff line
@@ -496,13 +496,13 @@
			reg = <0x3200 0x100>;
			regulator-name = "pm8994_s11";
			regulator-min-microvolt = <470000>;
			regulator-max-microvolt = <1015000>;
			regulator-max-microvolt = <1140000>;
			qcom,cpu-num = <0>;

			pm8994_s11_limit: avs-limit-regulator {
				regulator-name = "pm8994_s11_avs_limit";
				regulator-min-microvolt = <470000>;
				regulator-max-microvolt = <1015000>;
				regulator-max-microvolt = <1140000>;
			};
		};
	};
@@ -589,43 +589,42 @@
			apc0_pwrcl_vreg: regulator-pwrcl {
				regulator-name = "apc0_pwrcl_corner";
				regulator-min-microvolt = <1>;
				regulator-max-microvolt = <19>;
				regulator-max-microvolt = <16>;

				qcom,cpr-pd-bypass-mask = <0x07>;
				qcom,cpr-fuse-corners = <5>;
				qcom,cpr-fuse-combos = <4>;
				qcom,cpr-corners = <19>;
				qcom,cpr-fuse-combos = <2>;
				qcom,cpr-corners = <16>;

				qcom,ldo-headroom-voltage = <150000>;
				qcom,ldo-max-voltage = <805000>;
				qcom,ldo-disable;

				qcom,cpr-corner-fmax-map = <1 2 6 11 19>;
				qcom,cpr-corner-fmax-map = <1 2 7 12 16>;

				qcom,cpr-voltage-ceiling =
					<670000  670000  745000  745000  745000
					 745000  905000  905000  905000  905000
					 905000 1015000 1015000 1015000 1015000
					1015000 1015000 1015000 1015000>;
					 745000  745000  905000  905000  905000
					 905000  905000 1140000 1140000 1140000
					1140000>;
				qcom,cpr-voltage-floor =
					<470000  470000  470000  470000  470000
					 470000  470000  470000  470000  470000
					 470000  470000  470000  470000  470000
					 470000  470000  470000  470000>;
					 470000>;
				qcom,cpr-floor-to-ceiling-max-range =
					 <80000   80000   80000   80000   80000
					  80000   80000   80000   80000   80000
					  80000   80000   80000   80000   80000
					  80000   80000   80000   80000>;
					  80000>;

				qcom,corner-frequencies =
					<192000000  268800000  307200000
					 345600000  403200000  480000000
					 576000000  633600000  729600000
					 806400000  883200000  960000000
					1017600000 1113600000 1190400000
					1267200000 1344000000 1420800000
					1459200000>;
					<307200000  422400000  480000000
					 556800000  652800000  729600000
					 844800000  960000000 1036800000
					1113600000 1190400000 1228800000
					1324800000 1401600000 1478400000
					1593600000>;

				qcom,cpr-ro-scaling-factor =
				      <   0    0    0    0 2222 2275 2506 2491
@@ -640,13 +639,9 @@
				       2193 2201 2283 2296    0    0    0    0>;

				qcom,cpr-open-loop-voltage-fuse-adjustment =
					<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 =
					<0 0 0 0 0>,
					<0 0 0 0 0>,
					<0 0 0 0 0>,
					<0 0 0 0 0>;

@@ -658,30 +653,39 @@
			apc0_cbf_vreg: regulator-cbf {
				regulator-name = "apc0_cbf_corner";
				regulator-min-microvolt = <1>;
				regulator-max-microvolt = <10>;
				regulator-max-microvolt = <19>;

				qcom,cpr-pd-bypass-mask = <0x18>;
				qcom,cpr-fuse-corners = <5>;
				qcom,cpr-fuse-combos = <4>;
				qcom,cpr-corners = <10>;
				qcom,cpr-fuse-combos = <2>;
				qcom,cpr-corners = <19>;

				qcom,cpr-corner-fmax-map = <1 2 5 9 10>;
				qcom,cpr-corner-fmax-map = <1 2 5 13 19>;

				qcom,cpr-voltage-ceiling =
				       <605000  670000  745000  745000  745000
					905000  905000  905000  905000 1015000>;
				       <670000  670000  745000  745000  745000
					905000  905000  905000  905000  905000
					905000  905000  905000 1140000 1140000
				       1140000 1140000 1140000 1140000>;
				qcom,cpr-voltage-floor =
				       <470000  470000  470000  470000  470000
					470000  470000  470000  470000  470000>;
					470000  470000  470000  470000  470000
					470000  470000  470000  470000  470000
					470000  470000  470000  470000>;
				qcom,cpr-floor-to-ceiling-max-range =
					<80000   80000   80000   80000   80000
					 80000   80000   80000   80000   80000>;
					 80000   80000   80000   80000   80000
					 80000   80000   80000   80000   80000
					 80000   80000   80000   80000>;

				qcom,corner-frequencies =
					<150000000  307200000  384000000
					 499200000  595200000  691200000
					 787200000  883200000  960000000
					1036800000>;
					<307200000  384000000  460800000
					 537600000  595200000  672000000
					 748800000  825600000  902400000
					 979200000 1056000000 1132800000
					1190400000 1228800000 1305600000
					1382400000 1459200000 1536000000
					1593600000>;

				qcom,cpr-ro-scaling-factor =
				      <   0    0    0    0 2222 2275 2506 2491
@@ -697,14 +701,10 @@

				qcom,cpr-open-loop-voltage-fuse-adjustment =
					<0 0 0 0 0>,
					<0 0 0 0 0>,
					<0 0 0 0 (-130000)>,
					<0 0 0 0 (-130000)>;
					<0 0 0 0 0>;
				qcom,cpr-closed-loop-voltage-fuse-adjustment =
					<0 0 0 0 0>,
					<0 0 0 0 0>,
					<0 0 0 0 (-115000)>,
					<0 0 0 0 (-115000)>;
					<0 0 0 0 0>;

				qcom,allow-voltage-interpolation;
				qcom,allow-quotient-interpolation;
@@ -722,42 +722,48 @@
			apc1_vreg: regulator {
				regulator-name = "apc1_corner";
				regulator-min-microvolt = <1>;
				regulator-max-microvolt = <18>;
				regulator-max-microvolt = <25>;

				qcom,cpr-pd-bypass-mask = <0xe0>;
				qcom,cpr-fuse-corners = <5>;
				qcom,cpr-fuse-combos = <4>;
				qcom,cpr-corners = <18>;
				qcom,cpr-fuse-combos = <2>;
				qcom,cpr-corners = <25>;

				qcom,ldo-headroom-voltage = <150000>;
				qcom,ldo-max-voltage = <805000>;
				qcom,ldo-disable;

				qcom,cpr-corner-fmax-map = <1 3 5 11 18>;
				qcom,cpr-corner-fmax-map = <1 4 9 13 25>;

				qcom,cpr-voltage-ceiling =
					<670000  670000  670000  745000  745000
					 905000  905000  905000  905000  905000
					 905000 1015000 1015000 1015000 1015000
					1015000 1015000 1015000>;
				       <670000  670000  670000  670000  745000
					745000  745000  745000  745000  905000
					905000  905000  905000 1140000 1140000
				       1140000 1140000 1140000 1140000 1140000
				       1140000 1140000 1140000 1140000 1140000>;
				qcom,cpr-voltage-floor =
				       <470000  470000  470000  470000  470000
					470000  470000  470000  470000  470000
					470000  470000  470000  470000  470000
					 470000  470000  470000>;
					470000  470000  470000  470000  470000
					470000  470000  470000  470000  470000>;
				qcom,cpr-floor-to-ceiling-max-range =
					<80000   80000   80000   80000   80000
					 80000   80000   80000   80000   80000
					 80000   80000   80000   80000   80000
					  80000   80000   80000>;
					 80000   80000   80000   80000   80000
					 80000   80000   80000   80000   80000>;

				qcom,corner-frequencies =
					<307200000  345600000  403200000
					 480000000  576000000  633600000
					 729600000  806400000  883200000
					 960000000 1017600000 1113600000
					1190400000 1267200000 1344000000
					1420800000 1497600000 1593600000>;
					<307200000  403200000  480000000
					 556800000  652800000  729600000
					 806400000  883200000  940800000
					1036800000 1113600000 1190400000
					1248000000 1324800000 1401600000
					1478400000 1555200000 1632000000
					1708800000 1785600000 1826400000
					1920000000 1996800000 2073600000
					2150400000>;

				qcom,cpr-ro-scaling-factor =
				      <   0    0    0    0 2212 2273 2517 2506
@@ -772,13 +778,9 @@
				       2203 2210 2297 2297    0    0    0    0>;

				qcom,cpr-open-loop-voltage-fuse-adjustment =
					<0 0 0 5000 0>,
					<0 0 0 5000 0>,
					<0 0 0 0 0>,
					<0 0 0 0 0>;
				qcom,cpr-closed-loop-voltage-fuse-adjustment =
					<0 0 0 20000 0>,
					<0 0 0 20000 0>,
					<0 0 0 0 0>,
					<0 0 0 0 0>;

+176 −0
Original line number Diff line number Diff line
@@ -62,8 +62,184 @@
		 <&clock_gpu clk_gfx3d_clk_src_v2>;
};

&pm8994_s11 {
	regulator-max-microvolt = <1015000>;
};

&pm8994_s11_limit {
	regulator-max-microvolt = <1015000>;
};

&apcc_cpr {
	compatible = "qcom,cpr3-msm8996-v2-hmss-regulator";

	qcom,apm-ctrl = <&apc_apm>;
	qcom,apm-threshold-voltage = <850000>;
	qcom,apm-hysteresis-voltage = <5000>;

	qcom,cpr-enable;
};

&apc0_pwrcl_vreg {
	regulator-min-microvolt = <1>;
	regulator-max-microvolt = <19>;

	qcom,cpr-fuse-corners = <5>;
	qcom,cpr-fuse-combos = <4>;
	qcom,cpr-corners = <19>;

	qcom,ldo-headroom-voltage = <150000>;
	qcom,ldo-max-voltage = <805000>;
	qcom,ldo-disable;

	qcom,cpr-corner-fmax-map = <1 2 6 11 19>;

	qcom,cpr-voltage-ceiling =
		<670000  670000  745000  745000  745000  745000  905000  905000
		 905000  905000  905000 1015000 1015000 1015000 1015000 1015000
		1015000 1015000 1015000>;
	qcom,cpr-voltage-floor =
		<470000  470000  470000  470000  470000  470000  470000  470000
		 470000  470000  470000  470000  470000  470000  470000  470000
		 470000  470000  470000>;
	qcom,cpr-floor-to-ceiling-max-range =
		 <80000   80000   80000   80000   80000   80000   80000   80000
		  80000   80000   80000   80000   80000   80000   80000   80000
		  80000   80000   80000>;

	qcom,corner-frequencies =
		<192000000  268800000  307200000  345600000  403200000
		 480000000  576000000  633600000  729600000  806400000
		 883200000  960000000 1017600000 1113600000 1190400000
		1267200000 1344000000 1420800000 1459200000>;

	qcom,cpr-ro-scaling-factor =
	      <   0    0    0    0 2222 2275 2506 2491 2649 2640 2886 2866    0
		  0    0    0>,
	      <   0    0    0    0 2222 2275 2506 2491 2649 2640 2886 2866    0
		  0    0    0>,
	      <   0    0    0    0 2222 2275 2506 2491 2649 2640 2886 2866    0
		  0    0    0>,
	      <   0    0    0    0 2147 2226 2310 2312 2450 2447 2603 2600    0
		  0    0    0>,
	      <   0    0    0    0 1989 2079 2066 2083 2193 2201 2283 2296    0
		  0    0    0>;

	qcom,cpr-open-loop-voltage-fuse-adjustment =
		<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 =
		<0 0 0 0 0>,
		<0 0 0 0 0>,
		<0 0 0 0 0>,
		<0 0 0 0 0>;
};

&apc0_cbf_vreg {
	regulator-min-microvolt = <1>;
	regulator-max-microvolt = <10>;

	qcom,cpr-fuse-corners = <5>;
	qcom,cpr-fuse-combos = <4>;
	qcom,cpr-corners = <10>;

	qcom,cpr-corner-fmax-map = <1 2 5 9 10>;

	qcom,cpr-voltage-ceiling =
	       <605000  670000  745000  745000  745000  905000  905000  905000
		905000 1015000>;
	qcom,cpr-voltage-floor =
	       <470000  470000  470000  470000  470000  470000  470000  470000
		470000  470000>;
	qcom,cpr-floor-to-ceiling-max-range =
		<80000   80000   80000   80000   80000   80000   80000   80000
		 80000   80000>;

	qcom,corner-frequencies =
		<150000000  307200000  384000000  499200000  595200000
		 691200000  787200000  883200000  960000000 1036800000>;

	qcom,cpr-ro-scaling-factor =
	      <   0    0    0    0 2222 2275 2506 2491 2649 2640 2886 2866    0
		  0    0    0>,
	      <   0    0    0    0 2222 2275 2506 2491 2649 2640 2886 2866    0
		  0    0    0>,
	      <   0    0    0    0 2222 2275 2506 2491 2649 2640 2886 2866    0
		  0    0    0>,
	      <   0    0    0    0 2147 2226 2310 2312 2450 2447 2603 2600    0
		  0    0    0>,
	      <   0    0    0    0 1989 2079 2066 2083 2193 2201 2283 2296    0
		  0    0    0>;

	qcom,cpr-open-loop-voltage-fuse-adjustment =
		<0 0 0 0 0>,
		<0 0 0 0 0>,
		<0 0 0 0 (-130000)>,
		<0 0 0 0 (-130000)>;
	qcom,cpr-closed-loop-voltage-fuse-adjustment =
		<0 0 0 0 0>,
		<0 0 0 0 0>,
		<0 0 0 0 (-115000)>,
		<0 0 0 0 (-115000)>;
};

&apc1_vreg {
	regulator-min-microvolt = <1>;
	regulator-max-microvolt = <18>;

	qcom,cpr-fuse-corners = <5>;
	qcom,cpr-fuse-combos = <4>;
	qcom,cpr-corners = <18>;

	qcom,ldo-headroom-voltage = <150000>;
	qcom,ldo-max-voltage = <805000>;
	qcom,ldo-disable;

	qcom,cpr-corner-fmax-map = <1 3 5 11 18>;

	qcom,cpr-voltage-ceiling =
		<670000  670000  670000  745000  745000  905000  905000  905000
		 905000  905000  905000 1015000 1015000 1015000 1015000 1015000
		 1015000 1015000>;
	qcom,cpr-voltage-floor =
		<470000  470000  470000  470000  470000  470000  470000  470000
		 470000  470000  470000  470000  470000  470000  470000  470000
		 470000  470000>;
	qcom,cpr-floor-to-ceiling-max-range =
		 <80000   80000   80000   80000   80000   80000   80000   80000
		  80000   80000   80000   80000   80000   80000   80000   80000
		  80000   80000>;

	qcom,corner-frequencies =
		<307200000  345600000  403200000  480000000  576000000
		 633600000  729600000  806400000  883200000  960000000
		1017600000 1113600000 1190400000 1267200000 1344000000
		1420800000 1497600000 1593600000>;

	qcom,cpr-ro-scaling-factor =
	      <   0    0    0    0 2212 2273 2517 2506 2663 2650 2908 2891    0
		  0    0    0>,
	      <   0    0    0    0 2212 2273 2517 2506 2663 2650 2908 2891    0
		  0    0    0>,
	      <   0    0    0    0 2212 2273 2517 2506 2663 2650 2908 2891    0
		  0    0    0>,
	      <   0    0    0    0 2152 2237 2321 2337 2475 2469 2636 2612    0
		  0    0    0>,
	      <   0    0    0    0 2001 2102 2092 2090 2203 2210 2297 2297    0
		  0    0    0>;

	qcom,cpr-open-loop-voltage-fuse-adjustment =
		<0 0 0 5000 0>,
		<0 0 0 5000 0>,
		<0 0 0 0 0>,
		<0 0 0 0 0>;
	qcom,cpr-closed-loop-voltage-fuse-adjustment =
		<0 0 0 20000 0>,
		<0 0 0 20000 0>,
		<0 0 0 0 0>,
		<0 0 0 0 0>;
};

/* GPU overrides */