summaryrefslogtreecommitdiffstats
path: root/src/amd/vulkan/radv_device.c
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2017-10-05 14:55:24 +0200
committerSamuel Pitoiset <[email protected]>2017-10-12 09:17:40 +0200
commit65dcff7a26730e2e1112f7f326b941e3a3549870 (patch)
tree4c16305c6f1e400e2a60de7bb6edfe9695ca6181 /src/amd/vulkan/radv_device.c
parentc74ed3966e221b13bae83067f5b84f720cbc3021 (diff)
radv: add has_clear_state and enable it on CIK+ only
This will allow us to emit the CLEAR_STATE packet instead of a bunch of useless packets when doing CS initialization. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_device.c')
-rw-r--r--src/amd/vulkan/radv_device.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 23f5e70321d..b2aef2a8130 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -401,6 +401,11 @@ radv_physical_device_init(struct radv_physical_device *device,
device->rbplus_allowed = device->rad_info.family == CHIP_STONEY;
}
+ /* The mere presense of CLEAR_STATE in the IB causes random GPU hangs
+ * on SI.
+ */
+ device->has_clear_state = device->rad_info.chip_class >= CIK;
+
return VK_SUCCESS;
fail: