From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/i915: Use PIPE_CONTROL for flushing on gen6+. Date: Mon, 26 Sep 2011 22:31:56 +0200 Message-ID: <20110926203156.GE2804@phenom.ffwll.local> References: <1317063563-1526-1-git-send-email-kenneth@whitecape.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-ww0-f43.google.com (mail-ww0-f43.google.com [74.125.82.43]) by gabe.freedesktop.org (Postfix) with ESMTP id 81F0C9E7A4 for ; Mon, 26 Sep 2011 13:31:23 -0700 (PDT) Received: by wwf27 with SMTP id 27so6028362wwf.12 for ; Mon, 26 Sep 2011 13:31:22 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1317063563-1526-1-git-send-email-kenneth@whitecape.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Kenneth Graunke Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Mon, Sep 26, 2011 at 11:59:23AM -0700, Kenneth Graunke wrote: > +static int > +gen6_render_ring_flush(struct intel_ring_buffer *ring, > + u32 invalidate_domains, u32 flush_domains) > +{ > + u32 flags = 0; > + struct pipe_control *pc = ring->private; > + u32 scratch_addr = pc->gtt_offset + 128; > + int ret; > + > + /* Force SNB workarounds for PIPE_CONTROL flushes */ > + intel_emit_post_sync_nonzero_flush(ring); > + > + /* Just flush everything for now */ > + flags |= PIPE_CONTROL_WC_FLUSH; > + flags |= PIPE_CONTROL_IS_FLUSH; > + flags |= PIPE_CONTROL_TC_FLUSH; > + flags |= PIPE_CONTROL_DEPTH_FLUSH; > + flags |= PIPE_CONTROL_VFC; Any reason you're not also setting the constant cache and state cache invalidate bits? -Daniel -- Daniel Vetter Mail: daniel@ffwll.ch Mobile: +41 (0)79 365 57 48