> -----Original Message----- > From: Intel-gfx [mailto:[email protected]] On Behalf > Of [email protected] > Sent: Saturday, June 28, 2014 12:04 AM > To: [email protected] > Subject: [Intel-gfx] [PATCH 30/40] drm/i915: Add the > WaCsStallBeforeStateCacheInvalidate:bdw workaround. > > From: Kenneth Graunke <[email protected]> > > On Broadwell, any PIPE_CONTROL with the "State Cache Invalidate" bit set > must be preceded by a PIPE_CONTROL with the "CS Stall" bit set. > > Documented on the BSpec 3D workarounds page. > > Signed-off-by: Kenneth Graunke <[email protected]> > [vsyrjala: add chv w/a note too] > Signed-off-by: Ville Syrjälä <[email protected]>
There is a gotcha here that this workaround name has been used for a different bug in Gen7.5 and below. The workaround name clash came from the docs rather than a mistake by the patch authors, this is the correct workaround for all gen8 based devices Reviewed-by: Rafael Barbalho <[email protected]> > --- > drivers/gpu/drm/i915/intel_ringbuffer.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c > b/drivers/gpu/drm/i915/intel_ringbuffer.c > index 97796b1..ceb1295 100644 > --- a/drivers/gpu/drm/i915/intel_ringbuffer.c > +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c > @@ -424,6 +424,14 @@ gen8_render_ring_flush(struct intel_engine_cs > *ring, > flags |= PIPE_CONTROL_STATE_CACHE_INVALIDATE; > flags |= PIPE_CONTROL_QW_WRITE; > flags |= PIPE_CONTROL_GLOBAL_GTT_IVB; > + > + /* WaCsStallBeforeStateCacheInvalidate:bdw,chv */ > + ret = gen8_emit_pipe_control(ring, > + PIPE_CONTROL_CS_STALL | > + > PIPE_CONTROL_STALL_AT_SCOREBOARD, > + 0); > + if (ret) > + return ret; > } > > return gen8_emit_pipe_control(ring, flags, scratch_addr); > -- > 1.8.5.5 > > _______________________________________________ > Intel-gfx mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
