@@ -381,6 +381,9 @@ void i915_gem_context_reset(struct drm_device *dev)
struct drm_i915_private *dev_priv = dev->dev_private;
int i;
+ if (dev_priv->lrc_enabled)
+ return;
+
/* Prevent the hardware from restoring the last context (which hung) on
* the next switch */
for (i = 0; i < I915_NUM_RINGS; i++) {
@@ -514,6 +517,9 @@ int i915_gem_context_enable(struct drm_i915_private *dev_priv)
ppgtt->enable(ppgtt);
}
+ if (dev_priv->lrc_enabled)
+ return 0;
+
/* FIXME: We should make this work, even in reset */
if (i915_reset_in_progress(&dev_priv->gpu_error))
return 0;
@@ -769,6 +775,9 @@ int i915_switch_context(struct intel_engine_cs *ring,
{
struct drm_i915_private *dev_priv = ring->dev->dev_private;
+ if (dev_priv->lrc_enabled)
+ return 0;
+
WARN_ON(!mutex_is_locked(&dev_priv->dev->struct_mutex));
if (to->render_obj == NULL) { /* We have the fake context */