summaryrefslogtreecommitdiffstats
path: root/src/mesa
diff options
context:
space:
mode:
authorLionel Landwerlin <[email protected]>2019-01-03 16:13:14 +0000
committerLionel Landwerlin <[email protected]>2019-01-04 11:18:48 +0000
commite5ed217545198088673440f5e2e5ee435d8072fd (patch)
tree164fc94f26c1c86cd950e6c559624b7e8783407b /src/mesa
parentf0312cfa93344a0fdaf008c808d9efc21ced9d9c (diff)
i965: limit VF caching workaround to gen8/9/10
Documentation of the 3DSTATE_VERTEX_BUFFERS packet says this is only needed before ICL. Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/drivers/dri/i965/genX_blorp_exec.c2
-rw-r--r--src/mesa/drivers/dri/i965/genX_state_upload.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/genX_blorp_exec.c b/src/mesa/drivers/dri/i965/genX_blorp_exec.c
index a62b88e166c..bb84317e1a0 100644
--- a/src/mesa/drivers/dri/i965/genX_blorp_exec.c
+++ b/src/mesa/drivers/dri/i965/genX_blorp_exec.c
@@ -197,7 +197,7 @@ blorp_vf_invalidate_for_vb_48b_transitions(struct blorp_batch *batch,
const struct blorp_address *addrs,
unsigned num_vbs)
{
-#if GEN_GEN >= 8
+#if GEN_GEN >= 8 && GEN_GEN < 11
struct brw_context *brw = batch->driver_batch;
bool need_invalidate = false;
diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c b/src/mesa/drivers/dri/i965/genX_state_upload.c
index 8c38d5f4e82..7f7406a68de 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -530,11 +530,13 @@ pinned_bo_high_bits(struct brw_bo *bo)
* In the relocation world, we have no idea what the addresses will be, so
* we can't apply this workaround. Instead, we tell the kernel to move it
* to the low 4GB regardless.
+ *
+ * This HW issue is gone on Gen11+.
*/
static void
vf_invalidate_for_vb_48bit_transitions(struct brw_context *brw)
{
-#if GEN_GEN >= 8
+#if GEN_GEN >= 8 && GEN_GEN < 11
bool need_invalidate = false;
unsigned i;