summaryrefslogtreecommitdiffstats
path: root/src/intel
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2019-06-24 15:09:51 -0700
committerKenneth Graunke <[email protected]>2019-06-25 13:29:31 -0700
commit748e5dac72255583339af327af6741626e2ce0b0 (patch)
treebae8ba1ab5f35afe5c64f5cf2f5f668d0d0fe05d /src/intel
parent0a364a4a74e774030cde542ba8be90008b3f1211 (diff)
intel/blorp: Disable sampler state prefetching on Gen11
Sampler state prefetching is broken on Gen11, and WA_160668216 says to disable it. Apparently sampler state prefetching also has basically zero impact on performance, so we don't need to worry there. i965, anv, and iris already handle this correctly, but we missed BLORP. Ideally the kernel should globally disable this by writing SARCHKMD, at which point we wouldn't have to worry about it. But let's be defensive and handle it ourselves too. v2: separate out from BTP workaround in case we change that eventually Reviewed-by: Anuj Phogat <[email protected]> [v1]
Diffstat (limited to 'src/intel')
-rw-r--r--src/intel/blorp/blorp_genX_exec.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/intel/blorp/blorp_genX_exec.h b/src/intel/blorp/blorp_genX_exec.h
index f3e64c56382..7a74b1d9d50 100644
--- a/src/intel/blorp/blorp_genX_exec.h
+++ b/src/intel/blorp/blorp_genX_exec.h
@@ -778,6 +778,10 @@ blorp_emit_ps_config(struct blorp_batch *batch,
if (GEN_GEN == 11)
ps.BindingTableEntryCount = 0;
+ /* SAMPLER_STATE prefetching is broken on Gen11 - WA_1606682166 */
+ if (GEN_GEN == 11)
+ ps.SamplerCount = 0;
+
if (prog_data) {
ps._8PixelDispatchEnable = prog_data->dispatch_8;
ps._16PixelDispatchEnable = prog_data->dispatch_16;