[Intel-gfx] [PATCH 2/2] drm/i915: Drop the forcewake count inc/dec around register read on VLV

ville.syrjala at linux.intel.com ville.syrjala at linux.intel.com
Mon Feb 24 16:02:09 CET 2014


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

VLV is the only platform where we increment/decrement the forcewake
count around register access. Drop the inc/dec on VLV to make the
forcewake code a bit more unified.

The inc/dec are not necessary since we hold the uncore lock around
the whole operation.

Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
 drivers/gpu/drm/i915/intel_uncore.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
index 09fa555..dacb751 100644
--- a/drivers/gpu/drm/i915/intel_uncore.c
+++ b/drivers/gpu/drm/i915/intel_uncore.c
@@ -502,22 +502,22 @@ gen6_read##x(struct drm_i915_private *dev_priv, off_t reg, bool trace) { \
 static u##x \
 vlv_read##x(struct drm_i915_private *dev_priv, off_t reg, bool trace) { \
 	unsigned fwengine = 0; \
-	unsigned *fwcount; \
+	unsigned fwcount; \
 	REG_READ_HEADER(x); \
 	if (FORCEWAKE_VLV_RENDER_RANGE_OFFSET(reg)) {   \
 		fwengine = FORCEWAKE_RENDER;            \
-		fwcount = &dev_priv->uncore.fw_rendercount;    \
+		fwcount = dev_priv->uncore.fw_rendercount;    \
 	}                                               \
 	else if (FORCEWAKE_VLV_MEDIA_RANGE_OFFSET(reg)) {       \
 		fwengine = FORCEWAKE_MEDIA;             \
-		fwcount = &dev_priv->uncore.fw_mediacount;     \
+		fwcount = dev_priv->uncore.fw_mediacount;     \
 	}  \
 	if (fwengine != 0) {		\
-		if ((*fwcount)++ == 0) \
+		if (fwcount == 0) \
 			(dev_priv)->uncore.funcs.force_wake_get(dev_priv, \
 								fwengine); \
 		val = __raw_i915_read##x(dev_priv, reg); \
-		if (--(*fwcount) == 0) \
+		if (fwcount == 0) \
 			(dev_priv)->uncore.funcs.force_wake_put(dev_priv, \
 							fwengine); \
 	} else { \
-- 
1.8.3.2




More information about the Intel-gfx mailing list