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

Commit b5b72e89 authored by Matthew Garrett's avatar Matthew Garrett Committed by Eric Anholt
Browse files

drm/i915: Deobfuscate the render p-state obfuscation



The ironlake render p-state support includes some rather odd variable
names. Clean them up in order to improve the readability of the code.

Signed-off-by: default avatarMatthew Garrett <mjg@redhat.com>
Signed-off-by: default avatarEric Anholt <eric@anholt.net>
parent f97108d1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -452,7 +452,7 @@ typedef struct drm_i915_private {
	u32 savePIPEB_DATA_N1;
	u32 savePIPEB_LINK_M1;
	u32 savePIPEB_LINK_N1;
	u32 saveRSTDBYCTL;
	u32 saveMCHBAR_RENDER_STANDBY;

	struct {
		struct drm_mm gtt_space;
+7 −7
Original line number Diff line number Diff line
@@ -272,23 +272,23 @@ static void i915_hotplug_work_func(struct work_struct *work)
static void i915_handle_rps_change(struct drm_device *dev)
{
	drm_i915_private_t *dev_priv = dev->dev_private;
	u32 slow_up, slow_down, max_avg, min_avg;
	u32 busy_up, busy_down, max_avg, min_avg;
	u16 rgvswctl;
	u8 new_delay = dev_priv->cur_delay;

	I915_WRITE(MEMINTRSTS, I915_READ(MEMINTRSTS) & ~MEMINT_EVAL_CHG);
	slow_up = I915_READ(RCPREVBSYTUPAVG);
	slow_down = I915_READ(RCPREVBSYTDNAVG);
	busy_up = I915_READ(RCPREVBSYTUPAVG);
	busy_down = I915_READ(RCPREVBSYTDNAVG);
	max_avg = I915_READ(RCBMAXAVG);
	min_avg = I915_READ(RCBMINAVG);

	/* Handle RCS change request from hw */
	if (slow_up > max_avg) {
	if (busy_up > max_avg) {
		if (dev_priv->cur_delay != dev_priv->max_delay)
			new_delay = dev_priv->cur_delay - 1;
		if (new_delay < dev_priv->max_delay)
			new_delay = dev_priv->max_delay;
	} else if (slow_down < min_avg) {
	} else if (busy_down < min_avg) {
		if (dev_priv->cur_delay != dev_priv->min_delay)
			new_delay = dev_priv->cur_delay + 1;
		if (new_delay > dev_priv->min_delay)
@@ -300,8 +300,8 @@ static void i915_handle_rps_change(struct drm_device *dev)

	rgvswctl = I915_READ(MEMSWCTL);
	if (rgvswctl & MEMCTL_CMD_STS) {
		DRM_ERROR("gpu slow, RCS change rejected\n");
		return; /* still slow with another command */
		DRM_ERROR("gpu busy, RCS change rejected\n");
		return; /* still busy with another command */
	}

	/* Program the new state */
+1 −1
Original line number Diff line number Diff line
@@ -907,7 +907,7 @@
#define RCBMINAVG		0x111a0
#define RCUPEI			0x111b0
#define RCDNEI			0x111b4
#define RSTDBYCTL		0x111b8
#define MCHBAR_RENDER_STANDBY		0x111b8
#define   RCX_SW_EXIT		(1<<23)
#define   RSX_STATUS_MASK	0x00700000
#define VIDCTL			0x111c0
+4 −2
Original line number Diff line number Diff line
@@ -682,7 +682,8 @@ void i915_restore_display(struct drm_device *dev)
		I915_WRITE(PCH_PP_OFF_DELAYS, dev_priv->savePP_OFF_DELAYS);
		I915_WRITE(PCH_PP_DIVISOR, dev_priv->savePP_DIVISOR);
		I915_WRITE(PCH_PP_CONTROL, dev_priv->savePP_CONTROL);
		I915_WRITE(RSTDBYCTL, dev_priv->saveRSTDBYCTL);
		I915_WRITE(MCHBAR_RENDER_STANDBY,
			   dev_priv->saveMCHBAR_RENDER_STANDBY);
	} else {
		I915_WRITE(PFIT_PGM_RATIOS, dev_priv->savePFIT_PGM_RATIOS);
		I915_WRITE(BLC_PWM_CTL, dev_priv->saveBLC_PWM_CTL);
@@ -746,7 +747,8 @@ int i915_save_state(struct drm_device *dev)
		dev_priv->saveGTIMR = I915_READ(GTIMR);
		dev_priv->saveFDI_RXA_IMR = I915_READ(FDI_RXA_IMR);
		dev_priv->saveFDI_RXB_IMR = I915_READ(FDI_RXB_IMR);
		dev_priv->saveRSTDBYCTL = I915_READ(RSTDBYCTL);
		dev_priv->saveMCHBAR_RENDER_STANDBY =
			I915_READ(MCHBAR_RENDER_STANDBY);
	} else {
		dev_priv->saveIER = I915_READ(IER);
		dev_priv->saveIMR = I915_READ(IMR);
+2 −2
Original line number Diff line number Diff line
@@ -4770,8 +4770,8 @@ void intel_init_clock_gating(struct drm_device *dev)

		if (obj_priv) {
			I915_WRITE(PWRCTXA, obj_priv->gtt_offset | PWRCTX_EN);
			I915_WRITE(RSTDBYCTL, I915_READ(RSTDBYCTL) &
				   ~RCX_SW_EXIT);
			I915_WRITE(MCHBAR_RENDER_STANDBY,
				   I915_READ(MCHBAR_RENDER_STANDBY) & ~RCX_SW_EXIT);
		}
	}
}