From mboxrd@z Thu Jan 1 00:00:00 1970 From: Damien Lespiau Subject: Re: [PATCH 12/43] drm/i915/bdw: Don't write PDP in the legacy way when using LRCs Date: Fri, 8 Aug 2014 16:59:11 +0100 Message-ID: <20140808155911.GH2751@strange.ger.corp.intel.com> References: <1406217891-8912-13-git-send-email-thomas.daniel@intel.com> <1407413860-5926-1-git-send-email-thomas.daniel@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 897296E101 for ; Fri, 8 Aug 2014 08:59:19 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1407413860-5926-1-git-send-email-thomas.daniel@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Thomas Daniel Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Thu, Aug 07, 2014 at 01:17:40PM +0100, Thomas Daniel wrote: > From: Oscar Mateo > > This is mostly for correctness so that we know we are running the LR > context correctly (this is, the PDPs are contained inside the context > object). > > v2: Move the check to inside the enable PPGTT function. The switch > happens in two places: the legacy context switch (that we won't hit > when Execlists are enabled) and the PPGTT enable, which unfortunately > we need. This would look much nicer if the ppgtt->enable was part of > the ring init, where it logically belongs. > > v3: Move the check to the start of the enable PPGTT function. None > of the legacy PPGTT enabling is required when using LRCs as the > PPGTT is enabled in the context descriptor and the PDPs are written > in the LRC. > > Signed-off-by: Oscar Mateo > Signed-off-by: Thomas Daniel Reviewed-by: Damien Lespiau -- Damien > --- > drivers/gpu/drm/i915/i915_gem_gtt.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c > index 5188936..cfbf272 100644 > --- a/drivers/gpu/drm/i915/i915_gem_gtt.c > +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c > @@ -843,6 +843,11 @@ static int gen8_ppgtt_enable(struct i915_hw_ppgtt *ppgtt) > struct intel_engine_cs *ring; > int j, ret; > > + /* In the case of Execlists, we don't want to write the PDPs > + * in the legacy way (they live inside the context now) */ > + if (i915.enable_execlists) > + return 0; > + > for_each_ring(ring, dev_priv, j) { > I915_WRITE(RING_MODE_GEN7(ring), > _MASKED_BIT_ENABLE(GFX_PPGTT_ENABLE)); > -- > 1.7.9.5 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx