On Monday, January 8, 2018 3:00:30 PM PST Rafael Antognolli wrote: > On Thu, Jan 04, 2018 at 11:36:48AM -0800, Kenneth Graunke wrote: > > Apparently, Geminilake requires you to whack a chicken bit to select > > either compute or tessellation mode for barriers. The recommendation > > is to switch between them at PIPELINE_SELECT time. > > > > We may not need to do this all the time, but I don't know that it hurts > > either. PIPELINE_SELECT is already a pretty giant stall. > > > > This appears to fix hangs in tessellation control shaders with barriers > > on Geminilake. Note that this requires a corresponding kernel change, > > > > drm/i915: Whitelist SLICE_COMMON_ECO_CHICKEN1 on Geminilake. > > > > in order for the register write to actually happen. Without an updated > > kernel, this register write will be noop'd and the fix will not work. > > --- > > src/intel/genxml/gen9.xml | 8 ++++++++ > > src/intel/vulkan/genX_cmd_buffer.c | 21 +++++++++++++++++++++ > > src/mesa/drivers/dri/i965/brw_defines.h | 5 +++++ > > src/mesa/drivers/dri/i965/brw_misc_state.c | 15 +++++++++++++++ > > 4 files changed, 49 insertions(+) > > > > diff --git a/src/intel/genxml/gen9.xml b/src/intel/genxml/gen9.xml > > index 1422463693d..019d264fb70 100644 > > --- a/src/intel/genxml/gen9.xml > > +++ b/src/intel/genxml/gen9.xml > > @@ -3710,6 +3710,14 @@ > > <field name="Color Compression Disable Mask" start="31" end="31" > > type="bool"/> > > </register> > > > > + <register name="SLICE_COMMON_ECO_CHICKEN1" length="1" num="0x731c"> > > + <field name="GLK Barrier Mode" start="7" end="7" type="bool"> > > Kind of nitpicking, but this field means more than a simple > enable/disable kind of boolean. In other similar places we used "uint" > instead of "bool" to represent that, specially since you are assigning > value names to it. For instance, Floating Point Mode is like that, but > there are other examples. Maybe we should decide one or another way and > making it more consistent. > > Regardless of that, this patch is > > Reviewed-by: Rafael Antognolli <rafael.antogno...@intel.com>
Oops...I agree, uint makes more sense than bool for values with enumerations. I think that was just a mistake on my part. I changed it to uint before pushing. Thanks for reviewing this!
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev