drm/i915: Create a USES_PPGTT macro
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>
This commit is contained in:
parent
3adee7a797
commit
c5dc5cecf8
|
@ -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)
|
||||
|
|
|
@ -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",
|
||||
|
|
Loading…
Reference in New Issue