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

Commit 9018c53c authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: kgsl: Remove the frequency stepping work-around"

parents 9f025ce2 ef8cd99f
Loading
Loading
Loading
Loading
+3 −19
Original line number Diff line number Diff line
@@ -151,7 +151,6 @@ void kgsl_pwrctrl_pwrlevel_change(struct kgsl_device *device,
{
	struct kgsl_pwrctrl *pwr = &device->pwrctrl;
	struct kgsl_pwrlevel *pwrlevel;
	int delta, level;

	/* Adjust the power level to the current constraints */
	new_level = _adjust_pwrlevel(pwr, new_level);
@@ -159,12 +158,8 @@ void kgsl_pwrctrl_pwrlevel_change(struct kgsl_device *device,
	if (new_level == pwr->active_pwrlevel)
		return;

	delta = new_level < pwr->active_pwrlevel ? -1 : 1;

	update_clk_statistics(device, true);

	level = pwr->active_pwrlevel;

	/*
	 * Set the active powerlevel first in case the clocks are off - if we
	 * don't do this then the pwrlevel change won't take effect when the
@@ -178,20 +173,9 @@ void kgsl_pwrctrl_pwrlevel_change(struct kgsl_device *device,
	kgsl_pwrctrl_buslevel_update(device, true);

	if (test_bit(KGSL_PWRFLAGS_CLK_ON, &pwr->power_flags) ||
		(device->state == KGSL_STATE_NAP)) {

		/*
		 * Don't shift by more than one level at a time to
		 * avoid glitches.
		 */

		while (level != new_level) {
			level += delta;

		(device->state == KGSL_STATE_NAP))
		clk_set_rate(pwr->grp_clks[0],
				pwr->pwrlevels[level].gpu_freq);
		}
	}
				pwr->pwrlevels[new_level].gpu_freq);


	trace_kgsl_pwrlevel(device, pwr->active_pwrlevel, pwrlevel->gpu_freq);