@@ -1631,8 +1631,8 @@ static int i915_ppgtt_info(struct seq_file *m, void *data)
seq_printf(m, "PP_DIR_BASE_READ: 0x%08x\n", I915_READ(RING_PP_DIR_BASE_READ(ring)));
seq_printf(m, "PP_DIR_DCLV: 0x%08x\n", I915_READ(RING_PP_DIR_DCLV(ring)));
}
- if (dev_priv->mm.aliasing_ppgtt) {
- struct i915_hw_ppgtt *ppgtt = dev_priv->mm.aliasing_ppgtt;
+ if (dev_priv->gtt.aliasing_ppgtt) {
+ struct i915_hw_ppgtt *ppgtt = dev_priv->gtt.aliasing_ppgtt;
seq_printf(m, "aliasing PPGTT:\n");
seq_printf(m, "pd gtt offset: 0x%08x\n", ppgtt->pd_offset);
@@ -975,7 +975,7 @@ static int i915_getparam(struct drm_device *dev, void *data,
value = HAS_LLC(dev);
break;
case I915_PARAM_HAS_ALIASING_PPGTT:
- value = dev_priv->mm.aliasing_ppgtt ? 1 : 0;
+ value = dev_priv->gtt.aliasing_ppgtt ? 1 : 0;
break;
case I915_PARAM_HAS_WAIT_TIMEOUT:
value = 1;
@@ -439,6 +439,9 @@ struct i915_gtt {
struct io_mapping *mappable; /* Mapping to our CPU mappable region */
phys_addr_t mappable_base; /* PA of our GMADR */
+ /** PPGTT used for aliasing the PPGTT with the GTT */
+ struct i915_hw_ppgtt *aliasing_ppgtt;
+
/** "Graphics Stolen Memory" holds the global PTEs */
void __iomem *gsm;
@@ -785,9 +788,6 @@ struct i915_gem_mm {
*/
struct list_head unbound_list;
- /** PPGTT used for aliasing the PPGTT with the GTT */
- struct i915_hw_ppgtt *aliasing_ppgtt;
-
struct shrinker inactive_shrinker;
bool shrinker_no_lock_stealing;
@@ -2509,7 +2509,7 @@ i915_gem_object_unbind(struct drm_i915_gem_object *obj)
if (obj->has_global_gtt_mapping)
i915_gem_gtt_unbind_object(obj);
if (obj->has_aliasing_ppgtt_mapping) {
- i915_ppgtt_unbind_object(dev_priv->mm.aliasing_ppgtt, obj);
+ i915_ppgtt_unbind_object(dev_priv->gtt.aliasing_ppgtt, obj);
obj->has_aliasing_ppgtt_mapping = 0;
}
i915_gem_gtt_finish_object(obj);
@@ -3224,7 +3224,7 @@ int i915_gem_object_set_cache_level(struct drm_i915_gem_object *obj,
if (obj->has_global_gtt_mapping)
i915_gem_gtt_bind_object(obj, cache_level);
if (obj->has_aliasing_ppgtt_mapping)
- i915_ppgtt_bind_object(dev_priv->mm.aliasing_ppgtt,
+ i915_ppgtt_bind_object(dev_priv->gtt.aliasing_ppgtt,
obj, cache_level);
obj->gtt_space->color = cache_level;
@@ -3533,7 +3533,7 @@ i915_gem_object_pin(struct drm_i915_gem_object *obj,
if (ret)
return ret;
- if (!dev_priv->mm.aliasing_ppgtt)
+ if (!dev_priv->gtt.aliasing_ppgtt)
i915_gem_gtt_bind_object(obj, obj->cache_level);
}
@@ -4043,10 +4043,10 @@ i915_gem_init_hw(struct drm_device *dev)
* the do_switch), but before enabling PPGTT. So don't move this.
*/
ret = i915_gem_context_enable(dev_priv);
- if (ret || WARN_ON(!dev_priv->mm.aliasing_ppgtt))
+ if (ret || WARN_ON(!dev_priv->gtt.aliasing_ppgtt))
goto disable_ctx_out;
- ret = dev_priv->mm.aliasing_ppgtt->enable(dev);
+ ret = dev_priv->gtt.aliasing_ppgtt->enable(dev);
if (ret)
goto disable_ctx_out;
@@ -4083,7 +4083,7 @@ int i915_gem_init(struct drm_device *dev)
}
ggtt_only:
- if (!dev_priv->mm.aliasing_ppgtt) {
+ if (!dev_priv->gtt.aliasing_ppgtt) {
if (HAS_HW_CONTEXTS(dev))
DRM_DEBUG_DRIVER("Context setup failed\n");
i915_gem_setup_global_gtt(dev, 0, dev_priv->gtt.mappable_end,
@@ -227,7 +227,7 @@ static int create_default_context(struct drm_i915_private *dev_priv)
}
dev_priv->ring[RCS].default_context = ctx;
- dev_priv->mm.aliasing_ppgtt = &ctx->ppgtt;
+ dev_priv->gtt.aliasing_ppgtt = &ctx->ppgtt;
DRM_DEBUG_DRIVER("Default HW context loaded\n");
return 0;
@@ -301,7 +301,7 @@ void i915_gem_context_fini(struct drm_device *dev)
i915_gem_context_unreference(dctx);
dev_priv->ring[RCS].default_context = NULL;
dev_priv->ring[RCS].last_context = NULL;
- dev_priv->mm.aliasing_ppgtt = NULL;
+ dev_priv->gtt.aliasing_ppgtt = NULL;
}
int i915_gem_context_enable(struct drm_i915_private *dev_priv)
@@ -429,8 +429,8 @@ i915_gem_execbuffer_reserve_object(struct drm_i915_gem_object *obj,
}
/* Ensure ppgtt mapping exists if needed */
- if (dev_priv->mm.aliasing_ppgtt && !obj->has_aliasing_ppgtt_mapping) {
- i915_ppgtt_bind_object(dev_priv->mm.aliasing_ppgtt,
+ if (dev_priv->gtt.aliasing_ppgtt && !obj->has_aliasing_ppgtt_mapping) {
+ i915_ppgtt_bind_object(dev_priv->gtt.aliasing_ppgtt,
obj, obj->cache_level);
obj->has_aliasing_ppgtt_mapping = 1;
@@ -127,7 +127,7 @@ static int gen6_ppgtt_enable(struct drm_device *dev)
drm_i915_private_t *dev_priv = dev->dev_private;
uint32_t pd_offset;
struct intel_ring_buffer *ring;
- struct i915_hw_ppgtt *ppgtt = dev_priv->mm.aliasing_ppgtt;
+ struct i915_hw_ppgtt *ppgtt = dev_priv->gtt.aliasing_ppgtt;
int i;
BUG_ON(ppgtt->pd_offset & 0x3f);
@@ -362,7 +362,6 @@ err_pt_alloc:
int i915_gem_ppgtt_init(struct drm_device *dev, struct i915_hw_ppgtt *ppgtt)
{
- struct drm_i915_private *dev_priv = dev->dev_private;
int ret;
ppgtt->base.dev = dev;
@@ -440,8 +439,8 @@ void i915_gem_restore_gtt_mappings(struct drm_device *dev)
i915_gtt_vm->start / PAGE_SIZE,
i915_gtt_vm->total / PAGE_SIZE);
- if (dev_priv->mm.aliasing_ppgtt)
- gen6_write_pdes(dev_priv->mm.aliasing_ppgtt);
+ if (dev_priv->gtt.aliasing_ppgtt)
+ gen6_write_pdes(dev_priv->gtt.aliasing_ppgtt);
list_for_each_entry(obj, &dev_priv->mm.bound_list, gtt_list) {
i915_gem_clflush_object(obj);
for file in `ls drivers/gpu/drm/i915/*.c` ; do sed -i "s/mm.aliasing/gtt.aliasing/" $file; done Signed-off-by: Ben Widawsky <ben@bwidawsk.net> --- drivers/gpu/drm/i915/i915_debugfs.c | 4 ++-- drivers/gpu/drm/i915/i915_dma.c | 2 +- drivers/gpu/drm/i915/i915_drv.h | 6 +++--- drivers/gpu/drm/i915/i915_gem.c | 12 ++++++------ drivers/gpu/drm/i915/i915_gem_context.c | 4 ++-- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 4 ++-- drivers/gpu/drm/i915/i915_gem_gtt.c | 7 +++---- 7 files changed, 19 insertions(+), 20 deletions(-)