drm/i915: Create a USES_PPGTT macro
authorBen Widawsky <benjamin.widawsky@intel.com>
Tue, 28 Jan 2014 07:07:00 +0000 (23:07 -0800)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 28 Jan 2014 08:13:50 +0000 (09:13 +0100)
There are cases where we want to know if there is a full, or aliased
PPGTT. Currently, in fact the only distinction we ever need to make is
when we're using full PPGTT.

This patch is simply to promote readability and clarify for the
confusing existing usage where "aliasing" meant aliasing and full.

v2: Remove USES_ALIASING_PPGTT since there are currently no cases where
we need to check if we're using aliasing, but not full PPGTT. (Daniel)

Cc: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_gem_context.c

index 3971e7c3943d6eca95112c486adf22d2f4cc288d..9976bedfb27302200363983a251976c323363b12 100644 (file)
@@ -1834,8 +1834,9 @@ struct drm_i915_file_private {
 
 #define HAS_HW_CONTEXTS(dev)   (INTEL_INFO(dev)->gen >= 6)
 #define HAS_ALIASING_PPGTT(dev)        (INTEL_INFO(dev)->gen >= 6 && !IS_VALLEYVIEW(dev))
-#define HAS_PPGTT(dev)         (INTEL_INFO(dev)->gen >= 7 && !IS_VALLEYVIEW(dev) && !IS_BROADWELL(dev))
-#define USES_ALIASING_PPGTT(dev) intel_enable_ppgtt(dev, false)
+#define HAS_PPGTT(dev)         (INTEL_INFO(dev)->gen >= 7 && !IS_VALLEYVIEW(dev) \
+                                && !IS_BROADWELL(dev))
+#define USES_PPGTT(dev)                intel_enable_ppgtt(dev, false)
 #define USES_FULL_PPGTT(dev)   intel_enable_ppgtt(dev, true)
 
 #define HAS_OVERLAY(dev)               (INTEL_INFO(dev)->has_overlay)
index fb64ab4a20687c1440e252eda3cd67262d00e090..2b0598e35b733e7ffeb5324e08d20de25555003d 100644 (file)
@@ -142,7 +142,7 @@ void i915_gem_context_free(struct kref *ctx_ref)
        struct i915_hw_ppgtt *ppgtt = NULL;
 
        /* We refcount even the aliasing PPGTT to keep the code symmetric */
-       if (USES_ALIASING_PPGTT(ctx->obj->base.dev))
+       if (USES_PPGTT(ctx->obj->base.dev))
                ppgtt = ctx_to_ppgtt(ctx);
 
        /* XXX: Free up the object before tearing down the address space, in
@@ -292,7 +292,7 @@ i915_gem_create_context(struct drm_device *dev,
 
                        dev_priv->mm.aliasing_ppgtt = ppgtt;
                }
-       } else if (USES_ALIASING_PPGTT(dev)) {
+       } else if (USES_PPGTT(dev)) {
                /* For platforms which only have aliasing PPGTT, we fake the
                 * address space and refcounting. */
                ctx->vm = &dev_priv->mm.aliasing_ppgtt->base;
@@ -375,7 +375,7 @@ int i915_gem_context_init(struct drm_device *dev)
        }
 
        dev_priv->ring[RCS].default_context =
-               i915_gem_create_context(dev, NULL, USES_ALIASING_PPGTT(dev));
+               i915_gem_create_context(dev, NULL, USES_PPGTT(dev));
 
        if (IS_ERR_OR_NULL(dev_priv->ring[RCS].default_context)) {
                DRM_DEBUG_DRIVER("Disabling HW Contexts; create failed %ld\n",