diff options
author | Samuel Pitoiset <[email protected]> | 2017-12-14 15:51:18 +0100 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2017-12-14 22:20:55 +0100 |
commit | 9fdc1437baab9dbb0b1c3473af27b2241954b2de (patch) | |
tree | c3386d29de81f707d5f2de88e147ab709f710345 /src/amd/vulkan/radv_device.c | |
parent | 2e58ef46a8f31888b6507de81d7c48ac6e57b2e9 (diff) |
radv: store the dispatch initiator into the device
Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_device.c')
-rw-r--r-- | src/amd/vulkan/radv_device.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 5a0dd647273..7c0971d190d 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -1101,6 +1101,16 @@ VkResult radv_CreateDevice( device->scratch_waves = MAX2(32 * physical_device->rad_info.num_good_compute_units, max_threads_per_block / 64); + device->dispatch_initiator = S_00B800_COMPUTE_SHADER_EN(1) | + S_00B800_FORCE_START_AT_000(1); + + if (device->physical_device->rad_info.chip_class >= CIK) { + /* If the KMD allows it (there is a KMD hw register for it), + * allow launching waves out-of-order. + */ + device->dispatch_initiator |= S_00B800_ORDER_MODE(1); + } + radv_device_init_gs_info(device); device->tess_offchip_block_dw_size = |