diff options
Diffstat (limited to 'tests/amdgpu/deadlock_tests.c')
-rw-r--r-- | tests/amdgpu/deadlock_tests.c | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/tests/amdgpu/deadlock_tests.c b/tests/amdgpu/deadlock_tests.c index 0f780d48..f29a83ab 100644 --- a/tests/amdgpu/deadlock_tests.c +++ b/tests/amdgpu/deadlock_tests.c @@ -533,32 +533,44 @@ static void amdgpu_draw_hang_gfx(void) { int r; struct drm_amdgpu_info_hw_ip info; - uint32_t ring_id; + uint32_t ring_id, version; r = amdgpu_query_hw_ip_info(device_handle, AMDGPU_HW_IP_GFX, 0, &info); CU_ASSERT_EQUAL(r, 0); if (!info.available_rings) printf("SKIP ... as there's no graphic ring\n"); + version = info.hw_ip_version_major; + if (version != 9 && version != 10) { + printf("SKIP ... unsupported gfx version %d\n", version); + return; + } + for (ring_id = 0; (1 << ring_id) & info.available_rings; ring_id++) { - amdgpu_memcpy_draw_test(device_handle, ring_id, 0); - amdgpu_memcpy_draw_test(device_handle, ring_id, 1); - amdgpu_memcpy_draw_test(device_handle, ring_id, 0); + amdgpu_memcpy_draw_test(device_handle, ring_id, version, 0); + amdgpu_memcpy_draw_test(device_handle, ring_id, version, 1); + amdgpu_memcpy_draw_test(device_handle, ring_id, version, 0); } } static void amdgpu_draw_hang_slow_gfx(void) { struct drm_amdgpu_info_hw_ip info; - uint32_t ring_id; + uint32_t ring_id, version; int r; r = amdgpu_query_hw_ip_info(device_handle, AMDGPU_HW_IP_GFX, 0, &info); CU_ASSERT_EQUAL(r, 0); + version = info.hw_ip_version_major; + if (version != 9 && version != 10) { + printf("SKIP ... unsupported gfx version %d\n", version); + return; + } + for (ring_id = 0; (1 << ring_id) & info.available_rings; ring_id++) { - amdgpu_memcpy_draw_test(device_handle, ring_id, 0); - amdgpu_memcpy_draw_hang_slow_test(device_handle, ring_id); - amdgpu_memcpy_draw_test(device_handle, ring_id, 0); + amdgpu_memcpy_draw_test(device_handle, ring_id, version, 0); + amdgpu_memcpy_draw_hang_slow_test(device_handle, ring_id, version); + amdgpu_memcpy_draw_test(device_handle, ring_id, version, 0); } } |