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

Commit 35924314 authored by David Collins's avatar David Collins
Browse files

regulator: cpr-regulator: define quotient scaling usage without speed bin



Explicitly define the values to use for the
qcom,cpr-speed-bin-max-corners device tree property in order to
support CPR target quotient scaling when no speed bin fuse is
present.

Change-Id: Ibb7ce486402b0d4a24e4862ccd68d91ad938465e
Signed-off-by: default avatarDavid Collins <collinsd@codeaurora.org>
parent 7a939401
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -269,11 +269,12 @@ Optional properties:
				the maximum virtual voltage corner corresponding to each fuse corner.  The value N
				corresponds to the number of fuse corners specified by qcom,cpr-fuse-corners.
				The elements in one tuple are:
				[0]: =>		the speed bin of the CPU.
				[1]: =>		the PVS version of the CPU. If device does't have PVS version fuse,
						set the value to 0.
				[2 - N+1]: =>	the max virtual voltage corner value corresponding each fuse corner
						for this speed bin ordered from lowest voltage corner to highest
				[0]: =>		the speed bin of the CPU. If the device doesn't have a speed bin,
						fuse, then set the value to 0xFFFFFFFF.
				[1]: =>		the PVS version of the CPU. If the device doesn't have a PVS version
						fuse, then set the value to 0.
				[2 - N+1]: =>	the max virtual voltage corner value corresponding to each fuse corner
						for this speed bin, ordered from lowest voltage corner to highest
						voltage corner.
				No CPR target quotient scaling is applied on chips which have a speed bin + PVS version
				pair that does not appear in one of the tuples in this property. If the property is
+3 −1
Original line number Diff line number Diff line
@@ -147,6 +147,8 @@

#define BYTES_PER_FUSE_ROW		8

#define SPEED_BIN_NONE			UINT_MAX

#define FLAGS_IGNORE_1ST_IRQ_STATUS	BIT(0)
#define FLAGS_SET_MIN_VOLTAGE		BIT(1)
#define FLAGS_UPLIFT_QUOT_VOLT		BIT(2)
@@ -2432,7 +2434,7 @@ static void cpr_parse_speed_bin_fuse(struct cpr_regulator *cpr_vreg,
				fuse_sel[0], fuse_bits, speed_bits);
		cpr_vreg->speed_bin = speed_bits;
	} else {
		cpr_vreg->speed_bin = UINT_MAX;
		cpr_vreg->speed_bin = SPEED_BIN_NONE;
	}
}