[Intel-gfx] [PATCH] drm/i915: Use PIPE_CONTROL for flushing on gen6+.
Kenneth Graunke
kenneth at whitecape.org
Mon Sep 26 22:38:26 CEST 2011
On 09/26/2011 01:31 PM, Daniel Vetter wrote:
> 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
Bits 2 and 3? No particular reason; perhaps they should be.
More information about the Intel-gfx
mailing list