From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Widawsky Subject: Re: [PATCH 09/10] drm/i915/bdw: Always issue a force restore Date: Thu, 3 Jul 2014 14:38:21 -0700 Message-ID: <20140703213820.GA17054@intel.com> References: <1404423186-2019-1-git-send-email-rodrigo.vivi@intel.com> <1404423186-2019-10-git-send-email-rodrigo.vivi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id A2C5B6E788 for ; Thu, 3 Jul 2014 14:38:21 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1404423186-2019-10-git-send-email-rodrigo.vivi@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Rodrigo Vivi Cc: intel-gfx@lists.freedesktop.org, Ben Widawsky , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org On Thu, Jul 03, 2014 at 05:33:05PM -0400, Rodrigo Vivi wrote: > From: Ben Widawsky > > The PDPs seem to get screwed up otherwise, specifically PDP0. I am not > really clear why this is required, it just works with full PPGTT. > > v2: Only do it for gen8, to limit regression potential > > v3: Fix the bugzilla links > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78891 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78935 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78936 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78937 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78938 > > Signed-off-by: Ben Widawsky > Signed-off-by: Rodrigo Vivi > --- > drivers/gpu/drm/i915/i915_gem_context.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c > index 633e318..61b60b6 100644 > --- a/drivers/gpu/drm/i915/i915_gem_context.c > +++ b/drivers/gpu/drm/i915/i915_gem_context.c > @@ -573,6 +573,9 @@ mi_set_context(struct intel_engine_cs *ring, > else > intel_ring_emit(ring, MI_NOOP); > > + if (INTEL_INFO(ring->dev)->gen == 8) > + hw_flags |= MI_FORCE_RESTORE; > + > intel_ring_emit(ring, MI_NOOP); > intel_ring_emit(ring, MI_SET_CONTEXT); > intel_ring_emit(ring, Ville had a good point on this patch wrt to note setting both MI_FORCE_RESTORE, and MI_RESTORE_INHIBIT (though it seems to cause no problems). I think also with some of the do_switch() cleanups recently submitted, this one may no longer be necessary - not sure. -- Ben Widawsky, Intel Open Source Technology Center