radv: do not emit VGT_FLUSH on GFX10
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 8 Jul 2019 11:45:08 +0000 (13:45 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 8 Jul 2019 12:45:23 +0000 (14:45 +0200)
We don't need it.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_device.c

index 4a1078a1b52b8425622e23395815a12cce456c5c..bfa681dbfeef338b59aaa163e0f594f1fd278b6f 100644 (file)
@@ -2746,8 +2746,11 @@ radv_get_preamble_cs(struct radv_queue *queue,
                if (esgs_ring_bo || gsvs_ring_bo || tess_rings_bo)  {
                        radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
                        radeon_emit(cs, EVENT_TYPE(V_028A90_VS_PARTIAL_FLUSH) | EVENT_INDEX(4));
-                       radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
-                       radeon_emit(cs, EVENT_TYPE(V_028A90_VGT_FLUSH) | EVENT_INDEX(0));
+
+                       if (queue->device->physical_device->rad_info.chip_class < GFX10) {
+                               radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
+                               radeon_emit(cs, EVENT_TYPE(V_028A90_VGT_FLUSH) | EVENT_INDEX(0));
+                       }
                }
 
                radv_emit_gs_ring_sizes(queue, cs, esgs_ring_bo, esgs_ring_size,